Digital Signal Processing

By Steven W. Smith, Ph.D.

- 1: The Breadth and Depth of DSP
- 2: Statistics, Probability and Noise
- 3: ADC and DAC
- 4: DSP Software
- 5: Linear Systems
- 6: Convolution
- 7: Properties of Convolution
- 8: The Discrete Fourier Transform
- 9: Applications of the DFT
- 10: Fourier Transform Properties
- 11: Fourier Transform Pairs
- 12: The Fast Fourier Transform
- 13: Continuous Signal Processing
- 14: Introduction to Digital Filters
- 15: Moving Average Filters
- 16: Windowed-Sinc Filters
- 17: Custom Filters
- 18: FFT Convolution
- 19: Recursive Filters
- 20: Chebyshev Filters
- 21: Filter Comparison
- 22: Audio Processing
- 23: Image Formation & Display
- 24: Linear Image Processing
- 25: Special Imaging Techniques
- 26: Neural Networks (and more!)
- 27: Data Compression
- 28: Digital Signal Processors
- 29: Getting Started with DSPs
- 30: Complex Numbers
- 31: The Complex Fourier Transform
- 32: The Laplace Transform
- 33: The z-Transform
- 34: Explaining Benford's Law

Your laser printer will thank you!

by Steve Smith

** THE PROBLEM **

As shown below, the SECURE 1000 operates by
passing an x-ray beam through various collimators, including a rotating *chopper
wheel* containing several *slits.* As the chopper wheel rotates, a
narrow beam of x-rays is formed that sweeps rapidly from right-to-left. The chopper
wheel is a brass disk about 8 inches in diameter, 1/4 inch thick, and contains 4 silts
(although 6 slits are shown in the illustration). The chopper wheel turns at about 2,000
rpm, and is very quiet, much less than normal conversation.

Here's the problem: a customer paid us to make the chopper spin three times faster, i.e.,
6000 rpm. *Three* times the speed means *nine* times the stored
energy. Worse yet, at 6000 rpm it sounded louder than a jet airplane taking off; people
standing nearby backed away in fear! I did too! We had two choices: hope the
customer was deaf, or find a way to reduce the noise.

** HOW DSP SAVED THE DAY **

The first step in reducing the noise was to understand how it was being generated.
Three possibilities were identified: (1) the disk could be unbalanced, (2) the radial slits
could be catching the air, or (3), the surface of the disk could be causing air turbulence.
This is where DSP came in. Several seconds of the noise was digitized and stored (using
a microphone, analog-to-digital converter, and personal computer). The frequency
spectrum of this signal was calculated via the FFT, and is displayed below.

In this experiment, the chopper wheel was turning at 90 hertz (rotations per second). Noise resulting from an imbalance therefore shows up at 90 Hz, plus its harmonics, 180 Hz, 270 Hz, and so on. On the other hand, noise originating from the four slits shows up at four times this frequency, 360 Hz, plus its harmonics, 720 Hz, 1080 Hz, 1440 Hz, etc. Lastly, noise from random air turbulence is spread equally across all frequencies. The result? As shown in the frequency spectrum, nearly all the noise was originating from the slits. When we plugged them with plastic inserts, the noise went away. Problem solved- thank's to DSP.

** THE PROBLEM **

The shipping date of our prototype bone densitometer
was only three weeks away when we found the problem. The high-voltage being
applied to the x-ray tube was jumping all over (say, +/- 10% over a few seconds).
Clearly unacceptable- the system needed a stability of better than 0.1%; anything less
would make the final bone measurement meaningless. The high-voltage was controlled
by a digital feedback loop. An analog-to-digital converter allowed the on-board
computer to monitor the high-voltage. In turn, the computer could correct errors
through a digital-to-analog converter controlling the drive circuits of the high-voltage
power supply.

The stability problem turned out to be in the analog-to-digital converter: it was only an
8 bit device, incapable of achieving 0.1% precision. But there was an even more severe
problem, the analog-to-digital conversion was trashed with noise. As shown on the left
below, the digital output randomly toggled over about a dozen digital numbers. The
system *should* have been designed with 12 bits; it *was* designed with
8 bits; but it *operated* with only about 5 bits of usable data. As any good
electrical engineer would, our first step was to plaster the ADC with capacitors. No
luck- the noise was coming from high current pulses in the ground plane of the electrical
panel- very difficult to solve. Two months minimum to redesign the problem areas.
What a mess.

**DSP TO THE RESCUE **

First, the fancy explanation: we used a *multirate* technique. The original
system sampled at 100 samples per second. We increased the sampling rate to 100,000
samples per second, and then used a digital low-pass filter to eliminate the noise. This
was followed by a *decimation* to lower the sampling rate back to 100 samples
per second. Voila! The digital data was now equivalent to direct sampling using 10 bits,
as shown in the above figure on the right.

Too complicated? Here's a simpler explanation. We acquired 1000 samples each 10
milliseconds. Averaging these 1000 readings provided a *single* value each 10
millisecond, i.e., a sampling rate of 100 samples per second. Since 1000 values were
averaged, the noise in the signal was reduced by the square-root of 1000, or about 32.
While this is a very simple technique, it illustrates the tremendous power of DSP to
replace *hardware* with *software*. In this case, a dozen lines of code
saved months of hardware redesign.

(sorry about your $50,000)

** THE PROBLEM **

When I was developing the prototype of the SECURE 1000
, I knew there may be a problem related to *shading* in the images.
Preliminary measurements had shown that the perimeter of the image would be darker
than the center. This is caused by several effects: how the image area is scanned, the
way x-rays backscatter from the body, the detector characteristics, etc. I needed to
better understand this problem before writing the display software or designing the
detector array.

So, I spent several days running computer simulations of the imaging geometry. I had done many such simulations before and they had always provided insight into the physics involved. The results looked good; the intensity at the center of the image would only be slightly greater than at the perimeter; a ratio of about 1.5 to 1. No problem, so I went ahead and wrote the software and built the detector array.

A few months later, the prototype was complete and taking its first images. Oh no! - the
intensity in the center of the image was more like *eight* times the intensity at
the perimeter. The simulations had been junk! The image on the left shows the
problem: the center is too bright, while the border is too dark. Better think of
something quick- the investors are making ugly sounds.

** DSP SOLVES THE PROBLEM **

Digital filtering was able to convert the raw image (on the left) into a processed image
(on the right). This is a great example of how DSP can improve the* understandability* of data. The processed image contains the same information as
the raw image, but in a form tailored to the characteristics of the human visual system.
The improvement is obvious; look at the buckles on the shoes, the ring on the finger,
and the simulated explosive on the chest.

The world of science and engineering is filled with signals: images from remote space probes, voltages generated by the heart and brain, radar and sonar echoes, seismic vibrations, and countless other applications. Digital Signal Processing is the science of using computers to understand these types of data. This includes a wide variety of goals: filtering, speech recognition, image enhancement, data compression, neural networks, and much more. DSP is one of the most powerful technologies that will shape science and engineering in the twenty-first century. Suppose we attach an analog-to-digital converter to a computer, and then use it to acquire a chunk of real world data. DSP answers the question: What next?