DSPRelated.com

An IIR 'DC Removal' Filter

Rick Lyons

It seems to me that DC removal filters (also called "DC blocking filters") have been of some moderate interest recently on the dsprelated.com Forum web page. With that notion in mind I thought I'd post a little information, from Chapter 13 of my "Understanding DSP" book, regarding infinite impulse response (IIR) DC removal filters.


Project Report : Digital Filter Blocks in MyHDL and their integration in pyFDA

Sriyash Caculo

The Google Summer of Code 2018 is now in its final stages, and I’d like to take a moment to look back at what goals were accomplished, what remains to be completed and what I have learnt. The project overview was discussed in the previous blog...


Linear Feedback Shift Registers for the Uninitiated, Part XVI: Reed-Solomon Error Correction

Jason Sachs

Last time, we talked about error correction and detection, covering some basics like Hamming distance, CRCs, and Hamming codes. If you are new to this topic, I would strongly suggest going back to read that article before this one. This time we...


Digital PLL’s, Part 3 – Phase Lock an NCO to an External Clock

Neil Robertson

Sometimes you may need to phase-lock a numerically controlled oscillator (NCO) to an external clock that is not related to the system clocks of your ASIC or FPGA.  This situation is shown in Figure 1.  Assuming your system has an...


Two Easy Ways To Test Multistage CIC Decimation Filters

Rick Lyons

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


ADC Clock Jitter Model, Part 2 – Random Jitter

Neil Robertson

In Part 1, I presented a Matlab function to model an ADC with jitter on the sample clock, and applied it to examples with deterministic jitter.  Now we’ll investigate an ADC with random clock jitter, by using a filtered or unfiltered...


ADC Clock Jitter Model, Part 1 – Deterministic Jitter

Neil Robertson

Analog to digital converters (ADC’s) have several imperfections that affect communications signals, including thermal noise, differential nonlinearity, and sample clock jitter [1, 2].  As shown in Figure 1, the ADC has a sample/hold...


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

Rick Lyons

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.


Phase or Frequency Shifter Using a Hilbert Transformer

Neil Robertson

In this article, we'll describe how to use a Hilbert transformer to make a phase shifter or frequency shifter. In either case, the input is a real signal and the output is a real signal. We'll use some simple Matlab code to simulate these systems. After that, we'll go into a little more detail on Hilbert transformer theory and design.


An Efficient Linear Interpolation Scheme

Rick Lyons

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