DSPRelated.com

New Video: Parametric Oscillations

Tim WescottTim Wescott January 4, 2017

Tim Wescott just posted a short new video titled "Parametric Oscillations." It’s a little off-topic for the channel, but he used the project as an excuse to break a months-long posting drought. If you follow his work, this quick update shows how small builds can rekindle momentum and prompt informal explorations of oscillation behavior.


Round Round Get Around: Why Fixed-Point Right-Shifts Are Just Fine

Jason SachsJason Sachs November 22, 20163 comments

Jason Sachs explains why, in most embedded systems, simple bitwise right-shifts are an acceptable way to do fixed-point division rather than paying the runtime cost to round. He shows the cheap trick of adding 2^(N-1) to implement round-to-nearest, explains unbiased "round-to-even" issues, and compares arithmetic error to much larger ADC and sensor errors. The takeaway: save cycles unless your algorithm or inputs require extra precision.


Some Thoughts on Sampling

Qasim ChaudhariQasim Chaudhari November 15, 20162 comments

Sampling's 1/Ts amplitude factor is not a paradox but a consequence of axis scaling and impulse density, once you view the units correctly. This post walks through impulse trains in continuous and discrete time, uses DFT examples and Parseval's relation, and shows how downsampling and time scaling produce the familiar spectral replicas and their amplitudes. The geometry of the axes resolves the confusion.


Matlab Code to Synthesize Multiplierless FIR Filters

Neil RobertsonNeil Robertson October 31, 20165 comments

Learn how to build multiplierless FIR lowpass filters in Matlab using Canonic Signed-Digit coefficients. The post explains converting Parks-McClellan floating-point taps to scaled integers, then to exact CSD digits, and includes two m-files that search maintap scaling to minimize signed digits while preserving the filter response. Practical notes cover external gain compensation, the 2/3 full-scale CSD limit, and sensitivity to pass/stop edges.


Wavelets II - Vanishing Moments and Spectral Factorization

Vincent HerrmannVincent Herrmann October 11, 2016

This post walks through how vanishing moments turn into concrete algebraic constraints on wavelet filter coefficients, and why that leads to Daubechies filters. It explains how a wavelet with A vanishing moments is orthogonal to all polynomials up to degree A minus one, and it shows how those continuous conditions become discrete sums like sum_k k^n h1(k)=0. Expect clear links between approximation power and filter length.


Fibonacci trick

Tim WescottTim Wescott October 10, 20164 comments

Tim Wescott shares a compact, surprising trick linking Fibonacci numbers and difference equations. Start with any two consecutive Fibonacci numbers, negate the larger-magnitude one, and iterate the usual recurrence; after a few steps you'll arrive at the standard Fibonacci sequence or its negative. This behavior is specific to the Fibonacci recurrence and makes a great illustrative example for teaching linear recurrences.


The Power Spectrum

Neil RobertsonNeil Robertson October 8, 20163 comments

You can get absolute power from a DFT, not just relative spectra. In this post Neil Robertson shows how to convert FFT outputs into watts per bin using Parseval's theorem, how to form one-sided spectra, and how to normalize windows so power is preserved. Matlab examples demonstrate bin-centered and between-bin sinusoids, leakage, scalloping, and how to recover component power by summing bins.


New Comments System (please help me test it)

Stephane BoucherStephane Boucher October 4, 201617 comments

DSPRelated just got a practical upgrade, Stephane Boucher has released a new comments system built from his earlier forum work. It supports drag-and-drop or Insert Image uploads, MathML, TeX and ASCIImath rendered by MathJax, syntax-highlighted code via highlight.js, and in-place editing and deletion of comments. Improved email notifications alert authors and commenters to replies, and readers are invited to post test comments and report problems.


Wavelets I - From Filter Banks to the Dilation Equation

Vincent HerrmannVincent Herrmann September 28, 20169 comments

Starting from a practical cascaded FIR filter bank, this post derives the key equations behind the Fast Wavelet Transform. It shows how conjugate-quadrature analysis and synthesis filters give perfect reconstruction and how iterating the cascade produces the scaling function, leading to the dilation equation. DB4 coefficients are used as a concrete example and a linear-system trick yields exact integer-sample values of the scaling function.


The Real Star of Star Trek

Rick LyonsRick Lyons September 25, 20168 comments

Rick Lyons argues the real star of Star Trek is not an actor but the USS Enterprise, whose image drove much of the franchise's power. He traces the ship from two 1966 scale models through Smithsonian restoration, NASA naming influence, global architecture, and magazine art to show how an engineered prop became a worldwide cultural icon. The piece mixes nostalgia with concrete examples and a hands-on modeler lesson.


Feedback Controllers - Making Hardware with Firmware. Part 7. Turbo-charged DSP Oscillators

Steve MaslenSteve Maslen January 5, 20187 comments

You can extract high-quality, high-sample-rate sine waves from FPGAs even when floating-point units are constrained by latency. This article compares Intel's NCO IP (multiplier option) with floating-point recursive biquads on Cyclone V and Cyclone 10 GX, and explains a boosted-sample-rate technique that pushes performance toward a 48Msps DAC target. Practical measurement results, spectral data, and resource/cost trade-offs are highlighted.


A multiuser waterfilling algorithm

Markus NentwigMarkus Nentwig November 5, 20101 comment

Markus Nentwig shares a compact, heuristic multiuser waterfilling algorithm with ready-to-run C code, designed for practical radio resource allocation. The approach uses round-robin user handling, per-user power budgets and a mode switch between fixed-power and waterfilling distributions, and it is easy to extend for constraints or QoS tweaks. The implementation is suboptimal by design, fast, and requires verification before production use.


Modeling Anti-Alias Filters

Neil RobertsonNeil Robertson September 26, 2021

Modeling anti-alias filters brings textbook aliasing examples to life. This post shows how to build discrete-time models G(z) for analog Butterworth and Chebyshev lowpass anti-alias filters, compares bilinear transform and impulse invariance, and simulates ADC input/output including aliasing of sinusoids and Gaussian noise. It concludes that impulse invariance gives better stopband accuracy and includes Matlab helper functions.


Somewhat Off Topic: Deciphering Transistor Terminology

Rick LyonsRick Lyons May 28, 20194 comments

Rick Lyons unpacks a small linguistic mystery in electronics, revealing why the transistor's middle terminal is called the "base". He traces the name to the 1949 Bell Labs "semiconductor triode", where the device sat on a metal base plate described as a large-area low-resistance contact, and notes that later transistor sandwich designs kept the name for historical reasons. The post includes original references and a few trivia nuggets.


How Not to Reduce DFT Leakage

Rick LyonsRick Lyons May 23, 201211 comments

Rick Lyons debunks a proposed 'data-flipping' fix for DFT spectral leakage, demonstrating with MATLAB that it can produce higher sidelobes and a troubling mainlobe dip for some input frequencies. He explains that windowing's goal is to reduce amplitude discontinuities in a periodic extension, not merely to force end samples to zero, and concludes the method is frequency-dependent and not recommended.


Feedback Controllers - Making Hardware with Firmware. Part I. Introduction

Steve MaslenSteve Maslen August 22, 2017

This first post kicks off a series on using DSP and feedback control with mixed-signal electronics and FPGAs to emulate two-terminal circuits and create low latency controllers. It frames circuit emulation as a feedback problem, highlights latency as the key practical constraint, and outlines the planned evaluation hardware, target devices, and software tools that will be used in later MATLAB/Simulink and FPGA work.


The 2021 DSP Online Conference

Stephane BoucherStephane Boucher September 29, 20211 comment

Packed with practical talks and hands-on workshops, the 2021 DSP Online Conference gives DSP engineers a quick way to refresh skills and learn new techniques. Registering grants full access to talks, workshops, and Q&A at this year's event plus instant access to last year's videos. Highlights include FIR filter design with Python, software-defined radio, convolution reviews, and DSP/ML tools for IoT, with registration discounts on request.


Harmonic Notch Filter

Mike RosingMike Rosing March 28, 201615 comments

A practical, DSP-friendly recipe for scrubbing 60 Hz power-line hum and its harmonics from noisy ECG and EEG recordings is presented, using IIR notch filters built from second-order all-pass sections. The post derives how to set all-pass phase to place notches and compute biquad coefficients by solving a simple 2x2 system, then shows C code and precomputed coefficients for cascading the first eight odd harmonics at a 2 kHz sample rate. Engineers get a compact, editable implementation with explicit control over notch bandwidth.


Specifying the Maximum Amplifier Noise When Driving an ADC

Rick LyonsRick Lyons June 9, 20148 comments

You can quantify how much amplifier noise is acceptable before adding gain actually hurts an ADC's output SNR. Rick Lyons presents a compact rule showing the amplifier input-referred noise power must be less than (1 - 1/α^2) times the ADC's q^2/12 quantization noise power, with Eq. (8) and a pair of figures that make it easy to pick or specify the right amplifier for a given gain α.


What to See at Embedded World 2019

Stephane BoucherStephane Boucher February 5, 2019

Skip the overwhelm at Embedded World 2019, Stephane Boucher lays out a practical preview of what to see and how to prioritize your time. The post helps embedded engineers focus on demos, vendor booths, and sessions that matter without getting lost on the show floor. Read it to plan a short, efficient visit that maximizes technical takeaways and networking opportunities.