 Digital signal processing

Digital signal processing (DSP) is concerned with the representation of discrete time signals by a sequence of numbers or symbols and the processing of these signals. Digital signal processing and analog signal processing are subfields of signal processing. DSP includes subfields like: audio and speech signal processing, sonar and radar signal processing, sensor array processing, spectral estimation, statistical signal processing, digital image processing, signal processing for communications, control of systems, biomedical signal processing, seismic data processing, etc.
The goal of DSP is usually to measure, filter and/or compress continuous realworld analog signals. The first step is usually to convert the signal from an analog to a digital form, by sampling it using an analogtodigital converter (ADC), which turns the analog signal into a stream of numbers. However, often, the required output signal is another analog output signal, which requires a digitaltoanalog converter (DAC). Even if this process is more complex than analog processing and has a discrete value range, the application of computational power to digital signal processing allows for many advantages over analog processing in many applications, such as error detection and correction in transmission as well as data compression.^{[1]}
DSP algorithms have long been run on standard computers, on specialized processors called digital signal processor on purposebuilt hardware such as applicationspecific integrated circuit (ASICs). Today there are additional technologies used for digital signal processing including more powerful general purpose microprocessors, fieldprogrammable gate arrays (FPGAs), digital signal controllers (mostly for industrial apps such as motor control), and stream processors, among others.^{[2]}
Contents
Signal sampling
Main article: Sampling (signal processing)With the increasing use of computers the usage of and need for digital signal processing has increased. In order to use an analog signal on a computer it must be digitized with an analogtodigital converter. Sampling is usually carried out in two stages, discretization and quantization. In the discretization stage, the space of signals is partitioned into equivalence classes and quantization is carried out by replacing the signal with representative signal of the corresponding equivalence class. In the quantization stage the representative signal values are approximated by values from a finite set.
The Nyquist–Shannon sampling theorem states that a signal can be exactly reconstructed from its samples if the sampling frequency is greater than twice the highest frequency of the signal; but requires an infinite number of samples . In practice, the sampling frequency is often significantly more than twice that required by the signal's limited bandwidth.
A digitaltoanalog converter is used to convert the digital signal back to analog. The use of a digital computer is a key ingredient in digital control systems.
DSP domains
In DSP, engineers usually study digital signals in one of the following domains: time domain (onedimensional signals), spatial domain (multidimensional signals), frequency domain, autocorrelation domain, and wavelet domains. They choose the domain in which to process a signal by making an informed guess (or by trying different possibilities) as to which domain best represents the essential characteristics of the signal. A sequence of samples from a measuring device produces a time or spatial domain representation, whereas a discrete Fourier transform produces the frequency domain information, that is the frequency spectrum. Autocorrelation is defined as the crosscorrelation of the signal with itself over varying intervals of time or space.
Time and space domains
Main article: Time domainThe most common processing approach in the time or space domain is enhancement of the input signal through a method called filtering. Digital filtering generally consists of some linear transformation of a number of surrounding samples around the current sample of the input or output signal. There are various ways to characterize filters; for example:
 A "linear" filter is a linear transformation of input samples; other filters are "nonlinear". Linear filters satisfy the superposition condition, i.e. if an input is a weighted linear combination of different signals, the output is an equally weighted linear combination of the corresponding output signals.
 A "causal" filter uses only previous samples of the input or output signals; while a "noncausal" filter uses future input samples. A noncausal filter can usually be changed into a causal filter by adding a delay to it.
 A "timeinvariant" filter has constant properties over time; other filters such as adaptive filters change in time.
 Some filters are "stable", others are "unstable". A stable filter produces an output that converges to a constant value with time, or remains bounded within a finite interval. An unstable filter can produce an output that grows without bounds, with bounded or even zero input.
 A "finite impulse response" (FIR) filter uses only the input signals, while an "infinite impulse response" filter (IIR) uses both the input signal and previous samples of the output signal. FIR filters are always stable, while IIR filters may be unstable.
Filters can be represented by block diagrams which can then be used to derive a sample processing algorithm to implement the filter using hardware instructions. A filter may also be described as a difference equation, a collection of zeroes and poles or, if it is an FIR filter, an impulse response or step response.
The output of a digital filter to any given input may be calculated by convolving the input signal with the impulse response.
Frequency domain
Main article: Frequency domainSignals are converted from time or space domain to the frequency domain usually through the Fourier transform. The Fourier transform converts the signal information to a magnitude and phase component of each frequency. Often the Fourier transform is converted to the power spectrum, which is the magnitude of each frequency component squared.
The most common purpose for analysis of signals in the frequency domain is analysis of signal properties. The engineer can study the spectrum to determine which frequencies are present in the input signal and which are missing.
In addition to frequency information, phase information is often needed. This can be obtained from the Fourier transform. With some applications, how the phase varies with frequency can be a significant consideration.
Filtering, particularly in nonrealtime work can also be achieved by converting to the frequency domain, applying the filter and then converting back to the time domain. This is a fast, O(n log n) operation, and can give essentially any filter shape including excellent approximations to brickwall filters.
There are some commonly used frequency domain transformations. For example, the cepstrum converts a signal to the frequency domain through Fourier transform, takes the logarithm, then applies another Fourier transform. This emphasizes the frequency components with smaller magnitude while retaining the order of magnitudes of frequency components.
Frequency domain analysis is also called spectrum or spectral analysis.
Zplane analysis
Main article: ZtransformWhereas analog filters are usually analysed in terms of transfer functions in the s plane using Laplace transforms, digital filters are analysed in the z plane in terms of Ztransforms. A digital filter may be described in the z plane by its characteristic collection of zeroes and poles. The z plane provides a means for mapping digital frequency (samples/second) to real and imaginary z components, were z = e^{jΩ} for continuous periodic signals and Ω = 2πF (F is the digital frequency). This is useful for providing a visualization of the frequency response of a digital system or signal.
Wavelet
Main article: Discrete wavelet transformIn numerical analysis and functional analysis, a discrete wavelet transform (DWT) is any wavelet transform for which the wavelets are discretely sampled. As with other wavelet transforms, a key advantage it has over Fourier transforms is temporal resolution: it captures both frequency and location information (location in time).
Applications
The main applications of DSP are audio signal processing, audio compression, digital image processing, video compression, speech processing, speech recognition, digital communications, RADAR, SONAR, seismology and biomedicine. Specific examples are speech compression and transmission in digital mobile phones, room correction of sound in hifi and sound reinforcement applications, weather forecasting, economic forecasting, seismic data processing, analysis and control of industrial processes, medical imaging such as CAT scans and MRI, MP3 compression, computer graphics, image manipulation, hifi loudspeaker crossovers and equalization, and audio effects for use with electric guitar amplifiers.
Implementation
Depending on the requirements of the application, digital signal processing tasks can be implemented on general purpose computers (e.g. super computers, mainframe computers, or personal computers) or with embedded processors that may or may not include specialized microprocessors call digital signal processors.
Often when the processing requirement is not realtime, processing is economically done with an existing generalpurpose computer and the signal data (either input or output) exists in data files. This is essentially no different than any other data processing except DSP mathematical techniques (such as the FFT) are made use of and the sampled data is usually assumed to be uniformly sampled in time or space. For example: processing digital photographs with software such as Photoshop.
However, when the application requirement is realtime, DSP is often implemented using specialised microprocessors such as the DSP56000, the TMS320, or the SHARC. These often process data using fixedpoint arithmetic, although some versions are available which use floating point arithmetic and are more powerful. For faster applications FPGAs^{[3]} might be used. Beginning in 2007, multicore implementations of DSPs have started to emerge from companies including Freescale and Stream Processors, Inc. For faster applications with vast usage, ASICs might be designed specifically. For slow applications, a traditional slower processor such as a microcontroller may be adequate. Also a growing number of DSP applications are now being implemented on Embedded Systems using powerful PCs with a Multicore processor.
Techniques
Related fields
 Analog signal processing
 Automatic control
 Computer Engineering
 Computer Science
 Data compression
 Dataflow programming
 Electrical engineering
 Fourier Analysis
 Information theory
 Machine Learning
 Realtime computing
 Stream processing
 Telecommunication
 Time series
 Wavelet
References
 ^ James D. Broesch, Dag Stranneby and William Walker. Digital Signal Processing: Instant access. ButterworthHeinemann. p. 3.
 ^ Dag Stranneby and William Walker (2004). Digital Signal Processing and Applications (2nd ed. ed.). Elsevier. ISBN 0750663448. http://books.google.com/books?id=NKK1DdqcDVUC&pg=PA241&dq=called+digital+signal+processor+hardware+applicationspecific+integrated+circuit+generalpurpose+microprocessors+fieldprogrammable+gate+arrays+dsp+asic+fpga+stream.
 ^ JpFix. "FPGABased Image Processing Accelerator". http://www.jpfix.com/About_Us/Articles/FPGABased_Image_Processing_Ac/fpgabased_image_processing_ac.html. Retrieved 20080510.
Further reading
 Alan V. Oppenheim, Ronald W. Schafer, John R. Buck : DiscreteTime Signal Processing, Prentice Hall, ISBN 0137549202
 Boaz Porat: A Course in Digital Signal Processing, Wiley, ISBN 0471149616
 Richard G. Lyons: Understanding Digital Signal Processing, Prentice Hall, ISBN 0131089897
 Jonathan Yaakov Stein, Digital Signal Processing, a Computer Science Perspective, Wiley, ISBN 0471295469
 Sen M. Kuo, WoonSeng Gan: Digital Signal Processors: Architectures, Implementations, and Applications, Prentice Hall, ISBN 0130352144
 Bernard Mulgrew, Peter Grant, John Thompson: Digital Signal Processing  Concepts and Applications, Palgrave Macmillan, ISBN 0333963563
 Steven W. Smith: Digital Signal Processing  A Practical Guide for Engineers and Scientists, Newnes, ISBN 075067444X, ISBN 0966017633
 Paul A. Lynn, Wolfgang Fuerst: Introductory Digital Signal Processing with Computer Applications, John Wiley & Sons, ISBN 0471979848
 James D. Broesch: Digital Signal Processing Demystified, Newnes, ISBN 1878707167
 John G. Proakis, Dimitris Manolakis: Digital Signal Processing  Principles, Algorithms and Applications, Pearson, ISBN 0133942899
 Hari Krishna Garg: Digital Signal Processing Algorithms, CRC Press, ISBN 0849371783
 P. Gaydecki: Foundations Of Digital Signal Processing: Theory, Algorithms And Hardware Design, Institution of Electrical Engineers, ISBN 0852964315
 Gibson, John. “Spectral Delay as a Compositional Resource.” eContact! 11.4 — Toronto Electroacoustic Symposium 2009 (TES) / Symposium Électroacoustique 2009 de Toronto (December 2009). Montréal: CEC.
 Paul M. Embree, Damon Danieli: C++ Algorithms for Digital Signal Processing, Prentice Hall, ISBN 0131791443
 Anthony Zaknich: Neural Networks for Intelligent Signal Processing, World Scientific Pub Co Inc, ISBN 9812383050
 Vijay Madisetti, Douglas B. Williams: The Digital Signal Processing Handbook, CRC Press, ISBN 0849385725
 Stergios Stergiopoulos: Advanced Signal Processing Handbook: Theory and Implementation for Radar, Sonar, and Medical Imaging RealTime Systems, CRC Press, ISBN 0849336910
 Joyce Van De Vegte: Fundamentals of Digital Signal Processing, Prentice Hall, ISBN 0130160776
 Ashfaq Khan: Digital Signal Processing Fundamentals, Charles River Media, ISBN 1584502819
 Jonathan M. Blackledge, Martin Turner: Digital Signal Processing: Mathematical and Computational Methods, Software Development and Applications, Horwood Publishing, ISBN 1898563489
 Bimal Krishna, K. Y. Lin, Hari C. Krishna: Computational Number Theory & Digital Signal Processing, CRC Press, ISBN 0849371775
 Doug Smith: Digital Signal Processing Technology: Essentials of the Communications Revolution, American Radio Relay League, ISBN 0872598195
 Henrique S. Malvar: Signal Processing with Lapped Transforms, Artech House Publishers, ISBN 0890064679
 Charles A. Schuler: Digital Signal Processing: A HandsOn Approach, McGrawHill, ISBN 0078297443
 James H. McClellan, Ronald W. Schafer, Mark A. Yoder: Signal Processing First, Prentice Hall, ISBN 0130909998
 Artur Krukowski, Izzet Kale: DSP System Design: Complexity Reduced Iir Filter Implementation for Practical Applications, Kluwer Academic Publishers, ISBN 1402075588
 Kainam Thomas Wong [1]: Statistical Signal Processing lecture notes [2] at the University of Waterloo, Canada.
 John G. Proakis: A SelfStudy Guide for Digital Signal Processing, Prentice Hall, ISBN 0131432397
Digital systems Components Theory  Boolean logic
 Logic design
 Digital signal processing
 Computer architecture
Applications Digital signal processing Theory Subfields Techniques Discrete Fourier transform (DFT) · Discretetime Fourier transform (DTFT) · Impulse invariance · bilinear transform · pole–zero mapping · Ztransform · advanced ZtransformSampling oversampling · undersampling · downsampling · upsampling · aliasing · antialiasing filter · sampling rate · Nyquist rate/frequencyCategories: Digital electronics
 Digital signal processing
 Telecommunication theory
 Radar signal processing
Wikimedia Foundation. 2010.