DSPRelated.com

An Alternative Form of the Pure Real Tone DFT Bin Value Formula

Cedron DawgCedron Dawg December 17, 2017

Cedron Dawg derives an alternative exact formula for DFT bin values of a pure real tone, sacrificing algebraic simplicity for better numerical behavior near integer-valued frequencies. By rewriting cosine differences as products of sines and shifting to a delta frame of reference, the derivation avoids catastrophic cancellation and preserves precision for near-integer tones. The analysis also shows the integer-frequency case is a degenerate limit that yields the familiar M/2 e^{iφ} bin value.


Feedback Controllers - Making Hardware with Firmware. Part 6. Self-Calibration Related.

Steve MaslenSteve Maslen December 3, 20177 comments

Self-calibration is the missing piece that turns this mixed-signal hardware from a prototype into a usable instrument. In this installment, the author lays out how the board will measure itself, generate reference signals, and verify ADC and DAC behavior before the low-latency control firmware is built. The result is a practical framework for evaluation, production test, and routine self-test.


Improved Three Bin Exact Frequency Formula for a Pure Real Tone in a DFT

Cedron DawgCedron Dawg November 6, 2017

Cedron Dawg extends his two-bin exact frequency formulas to a three-bin DFT estimator for a pure real tone, and presents the derivation in computational order for practical use. The method splits complex bin values into real and imaginary parts, forms vectors A, B, and C, applies a sqrt(2) variance rescaling, and computes frequency via a projection-based closed form. Numerical tests compare the new formula to prior work and show improved accuracy when the tone lies between bins.


There's No End to It -- Matlab Code Plots Frequency Response above the Unit Circle

Neil RobertsonNeil Robertson October 23, 20179 comments

If you want a fresh way to inspect a digital filter, this post introduces plotfil3d, a compact MATLAB function that wraps the magnitude response around the unit circle in the Z-plane so you can view it in 3D. It uses freqz to compute H(z) in dB for N points and accepts an optional azimuth to change the viewing angle; the code is provided in the appendix.


Feedback Controllers - Making Hardware with Firmware. Part 4. Engineering of Evaluation Hardware

Steve MaslenSteve Maslen October 10, 2017

This installment follows the hardware from concept to first power-up for a low-latency feedback controller and arbitrary circuit emulator. It walks through the practical engineering steps, from requirements, block diagrams, and issue tracking to component selection, simulation, PCB planning, purchasing, and staged bring-up. The result is a realistic look at how careful due diligence and a few trade-offs turned a research idea into working evaluation hardware.


Two Bin Exact Frequency Formulas for a Pure Real Tone in a DFT

Cedron DawgCedron Dawg October 4, 20179 comments

Cedron Dawg derives exact, closed-form frequency formulas that recover a pure real tone from just two DFT bins using a geometric vector approach. The method projects bin-derived vectors onto a plane orthogonal to a constraint vector to eliminate amplitude and phase, yielding an explicit cos(alpha) estimator; a small adjustment improves noise performance so the estimator rivals and slightly betters earlier two-bin methods.


Feedback Controllers - Making Hardware with Firmware. Part 3. Sampled Data Aspects

Steve MaslenSteve Maslen September 9, 2017

This article digs into practical sampled-data issues you must address when building feedback controllers for circuit emulation. It highlights a common MATLAB versus Simulink discrepancy caused by DAC holding, explains why FOH (ramp-invariant) c2d conversion matters, and surveys latency, bit depth, filter and precision trade-offs. It also lists candidate ADCs, DACs and FPGAs used in a real evaluation platform to guide hardware choices.


Feedback Controllers - Making Hardware with Firmware. Part 2. Ideal Model Examples

Steve MaslenSteve Maslen August 24, 2017

An engineer's guide to building ideal continuous-time models for hardware emulation, using TINA Spice, MATLAB and Simulink to validate controller and circuit behavior. The article shows how a passive R-C network can be emulated by an amplifier, a current measurement and a summer, with Spice, MATLAB and Simulink producing coincident Bode responses. Small phase differences between MATLAB and Simulink are noted, and sampled-data issues are slated for the next installment.


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.


Exact Near Instantaneous Frequency Formulas Best at Zero Crossings

Cedron DawgCedron Dawg July 20, 2017

Cedron Dawg derives time-domain formulas that yield near-instantaneous frequency estimates optimized for zero crossings of pure tones. Complementing his earlier peak-optimized results, these difference-ratio formulas work for real and complex signals, produce four-sample estimators similar to Turners, and cancel amplitude terms, making them attractive low-latency options for clean tones while warning they degrade in noise and at peaks.


Instantaneous Frequency Measurement

Parth VakilParth Vakil February 4, 200821 comments

Measuring carrier frequency quickly and with minimal data matters in radar and signal characterization. Parth Vakil explains the delay-and-multiply instantaneous frequency measurement technique, shows how analytic signals and multiple delays resolve the 2π ambiguity, and demonstrates noise, phase-wrapping, and interferer effects using MATLAB code. He also outlines practical mitigations like phase unwrapping and channelization.


Amplitude modulation and the sampling theorem

Allen DowneyAllen Downey December 18, 20156 comments

Amplitude modulation turns out to be a neat way to build intuition for the Nyquist-Shannon sampling theorem. In this draft chapter from Think DSP, the author shows how multiplying by a carrier shifts spectra, why sampling creates repeated copies in frequency, and how low-pass filtering can recover the original signal when those copies do not overlap.


Design study: 1:64 interpolating pulse shaping FIR

Markus NentwigMarkus Nentwig December 26, 20115 comments

Markus Nentwig presents a practical 1:64 root-raised cosine interpolator built from cascaded FIR stages that slashes computational cost. By separating pulse shaping from rate conversion, designing each interpolator to suppress only known alias bands, and equalizing the pulse shape, the design achieves just 4.69 MACs per output, roughly 12 percent of a straight polyphase implementation while meeting EVM targets.


DFT Graphical Interpretation: Centroids of Weighted Roots of Unity

Cedron DawgCedron Dawg April 10, 20151 comment

DFT bin values can be seen as centroids of weighted roots of unity, a geometric picture that makes many DFT properties immediate. Cedron Dawg uses the geometric-series identity and polar plots of integer and fractional tones to show why constants appear only at DC, how wrapping relates to bin index, and how phase, scaling, offsets, and real-signal symmetry affect bin magnitudes and angles.


DFT Bin Value Formulas for Pure Real Tones

Cedron DawgCedron Dawg April 17, 20151 comment

Cedron Dawg derives a closed-form expression for the DFT bin values produced by a pure real sinusoid, then uses that formula to explain well known DFT behaviors. The post walks through the algebra from Euler identities to a compact computational form, highlights the integer versus non-integer frequency cases, and verifies the result with C code and printed numeric output.


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

Rick LyonsRick Lyons September 16, 20136 comments

A viral YouTube video claimed that saying j equals the square root of negative one is wrong. Rick Lyons shows the apparent paradox comes from misusing square-root identities with negative arguments, not from the usual definition of j. He argues it is safer to define j by j^2 = -1 and illustrates how careless root operations produce contradictions in two appendices.


A Recipe for a Common Logarithm Table

Cedron DawgCedron Dawg April 29, 2017

Cedron Dawg shows how to construct a base-10 logarithm table from scratch using only pencil-and-paper math. The recipe combines simple series for e and ln(1+x) with clever factoring and neighbor-based recurrences so minimal square-root work is required. Along the way the post explains a practical algorithm, high-accuracy interpolation and inverse-log reconstruction so you can reproduce published log tables by hand.


Curse you, iPython Notebook!

Christopher FeltonChristopher Felton May 1, 20124 comments

Christopher Felton shares a cautionary tale about losing an ipython 0.12 notebook session after assuming the browser would save his interactive edits. He explains that notebooks at the time required clicking the top Save button to persist sessions, and autosave was not yet available. He recommends basing interactive work on scripts, saving often, and testing export behavior to avoid redoing text, LaTeX, and plots.


A Fast Real-Time Trapezoidal Rule Integrator

Rick LyonsRick Lyons June 13, 20204 comments

Rick Lyons presents a compact, recursive real-time Trapezoidal Rule integrator that computes N-sample discrete integration using only four arithmetic operations per input sample. The proposed network yields a finite-length, linear-phase impulse response with constant group delay (N-1)/2 and cuts substantial computation compared with a tapped-delay implementation, making it useful for speeding Romberg-based digital filters.


Simple Concepts Explained: Fixed-Point

Leandro StefanazziLeandro Stefanazzi January 24, 202312 comments

Fixed-point is the bridge between real-world values and integer arithmetic, and this post makes that bridge tangible with a hands-on ADC-to-gain example. It walks through mapping voltages to Q-format integers, choosing gain resolution in bits, and how multiplication adds bit growth and produces quantization error. Read it to build intuition for practical fixed-point choices when implementing DSP on FPGA or ASIC.