DSPRelated.com

Amplitude modulation and the sampling theorem

Allen Downey December 18, 20156 comments

I am working on the 11th and probably final chapter of Think DSP, which follows material my colleague Siddhartan Govindasamy developed for a class at Olin College.  He introduces amplitude modulation as a clever way to sneak up on the Nyquist–Shannon sampling theorem.

Most of the code for the chapter is done: you can check it out in this IPython notebook.  I haven't written the text yet, but I'll outline it here, and paste in the key figures.

Convolution...


Exponential Smoothing with a Wrinkle

Cedron Dawg December 17, 20154 comments
Introduction

This is an article to hopefully give a better understanding to the Discrete Fourier Transform (DFT) by providing a set of preprocessing filters to improve the resolution of the DFT. Because of the exponential nature of sinusoidal functions, they have special mathematical properties when exponential smoothing is applied to them. These properties are derived and explained in this blog article.

Basic Exponential Smoothing

Exponential smoothing is also known as...


Differentiating and integrating discrete signals

Allen Downey December 14, 20152 comments

I am back at work on Think DSP, adding a new chapter on differentiation and integration.  In the previous chapter (which you can read here) I present Gaussian smoothing, show how smoothing in the time domain corresponds to a low-pass filter in the frequency domain, and present the Convolution Theorem.

In the current chapter, I start with the first difference operation (diff in Numpy) and show that it corresponds to a high-pass filter in the frequency domain.  I use historical stock...


Discrete-Time PLLs, Part 1: Basics

Reza Ameli December 1, 20159 comments

In this series of tutorials on discrete-time PLLs we will be focusing on Phase-Locked Loops that can be implemented in discrete-time signal proessors such as FPGAs, DSPs and of course, MATLAB.


Compressive Sensing - Recovery of Sparse Signals (Part 1)

Mamoon November 28, 2015

The amount of data that is generated has been increasing at a substantial rate since the beginning of the digital revolution. The constraints on the sampling and reconstruction of digital signals are derived from the well-known Nyquist-Shannon sampling theorem...


Summary of ROC Rules

Magnus Vallestad November 26, 20152 comments

This is a very short guide on how to find all possible outcomes of a system where Region of Convergence (ROC) and the original signal is not known.


Analytic Signal

Mehdi November 26, 20155 comments

In communication theory and modulation theory we always deal with two phases: In-phase (I) and Quadrature-phase (Q). The question that I will discuss in this blog is that why we use two phases and not more.


Multilayer Perceptrons and Event Classification with data from CODEC using Scilab and Weka

David Norwood November 25, 2015

For my first blog, I thought I would introduce the reader to Scilab [1] and Weka [2]. In order to illustrate how they work, I will put together a script in Scilab that will sample using the microphone and CODEC on your PC and save the waveform as a CSV file.


Maximum Likelihood Estimation

Mehdi November 24, 2015

Any observation has some degree of noise content that makes our observations uncertain. When we try to make conclusions based on noisy observations, we have to separate the dynamics of a signal from noise.


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.


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:...


DSP Algorithm Implementation: A Comprehensive Approach

Sami Aldalahmeh April 13, 20116 comments

As DSP engineers, ultimately we are required to design and implement specific DSP algorithms. The first step is to make a choice on which algorithm to use, e.g. for filtering should we use FIR or IIR. Then we can go a little bit deeper into the,  high level, implementation details, e.g. use the symmetry in FIR filter to reduce complexity. When the algorithm is clear, the first step is to test and simulate the algorithm in a high level language like MATLAB.

After we reach confidence in...


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


scipy.signal calling all developers

Christopher Felton January 19, 20122 comments

There has been some chatter on the scipy-dev mailing list lately about enhancing the scipy.signal package.  Unfortunately, there seems to be a split.  Some are going off and starting a new package scikit-signal.  The original developer, Travis Oliphant, appears to have strong interest in seeing the scipy.signal evovle.  If you are interested in signal processing you should check out the mailing lists (


Bank-switched Farrow resampler

Markus Nentwig August 13, 20112 comments
Bank-switched Farrow resampler Summary

A modification of the Farrow structure with reduced computational complexity.Compared to a conventional design, the impulse response is broken into a higher number of segments. Interpolation accuracy is achieved with a lower polynomial order, requiring fewer multiplications per output sample at the expense of a higher overall number of coefficients.

Example code

This code snippet provides a Matlab / Octave implementation.And


Model Signal Impairments at Complex Baseband

Neil Robertson December 11, 20197 comments

In this article, we develop complex-baseband models for several signal impairments: interfering carrier, multipath, phase noise, and Gaussian noise.  To provide concrete examples, we’ll apply the impairments to a QAM system. The impairment models are Matlab functions that each use at most seven lines of code.  Although our example system is QAM, the models can be used for any complex-baseband signal.

I used a very simple complex-baseband model of a QAM system in my last


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

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


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

Filtering Noise: The Basics (Part 1)

Aditya Dua September 17, 20223 comments
Introduction

Finding signals in the presence of noise is one of the fundamental quests of the discipline of signal processing. Noise is inherently random by nature, so a probability oriented approach is needed to develop a mathematical framework for filtering (i.e. removing/suppressing) noise. This framework or discipline, formally referred to as stochastic signal processing, is often taught in graduate level engineering programs and is covered from different perspectives in excellent...