Digital signal processing
Encyclopedia
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 real-world analog signals. The first step is usually to convert the signal from an analog to a digital form, by sampling and then digitizing it using an analog-to-digital 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 digital-to-analog 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
.
DSP algorithm
s have long been run on standard computers, on specialized processors called digital signal processor
on purpose-built hardware such as application-specific integrated circuit
(ASICs). Today there are additional technologies used for digital signal processing including more powerful general purpose microprocessor
s, field-programmable gate array
s (FPGAs), digital signal controllers
(mostly for industrial apps such as motor control), and stream processors
, among others.
s 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 analog-to-digital 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 digital-to-analog 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
.
(one-dimensional 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 cross-correlation
of the signal with itself over varying intervals of time or space.
ing 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:
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
.
. 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 non-realtime 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.
s in the s plane
using Laplace transforms, digital filters are analysed in the z plane in terms of Z-transforms. 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 for continuous periodic signals and ( is the digital frequency). This is useful for providing a visualization of the frequency response of a digital system or signal.
and functional analysis
, a discrete wavelet transform (DWT) is any wavelet transform for which the wavelet
s are discretely sampled. As with other wavelet transforms, a key advantage it has over Fourier transform
s is temporal resolution: it captures both frequency and location information (location in time).
, 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 phone
s, room correction
of sound in hi-fi and sound reinforcement applications, weather forecasting
, economic forecasting
, seismic
data processing, analysis and control of industrial process
es, medical imaging
such as CAT
scans and MRI, MP3
compression, computer graphics
, image manipulation, hi-fi loudspeaker
crossovers
and equalization
, and audio effects for use with electric guitar
amplifiers.
s, or personal computer
s) or with embedded processors that may or may not include specialized microprocessor
s call digital signal processor
s.
Often when the processing requirement is not real-time
, processing is economically done with an existing general-purpose 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 real-time
, DSP is often implemented using specialised microprocessors
such as the DSP56000
, the TMS320, or the SHARC
. These often process data using fixed-point arithmetic
, although some versions are available which use floating point arithmetic and are more powerful. For faster applications FPGAs 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, ASIC
s 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 Multi-core processor.
Analog signal processing
Analog signal processing is any signal processing conducted on analog signals by analog means. "Analog" indicates something that is mathematically represented as a set of continuous values. This differs from "digital" which uses a series of discrete quantities to represent signal...
are subfields of signal processing
Signal processing
Signal processing is an area of systems engineering, electrical engineering and applied mathematics that deals with operations on or analysis of signals, in either discrete or continuous time...
. DSP includes subfields like: audio
Audio signal processing
Audio signal processing, sometimes referred to as audio processing, is the intentional alteration of auditory signals, or sound. As audio signals may be electronically represented in either digital or analog format, signal processing may occur in either domain...
and speech signal processing
Speech signal processing
Speech signal processing refers to the acquisition, manipulation, storage, transfer and output of vocal utterances by a computer. The main applications are the recognition, synthesis and compression of human speech:...
, sonar and radar signal processing, sensor array processing, spectral estimation, statistical signal processing, digital image processing
Digital image processing
Digital image processing is the use of computer algorithms to perform image processing on digital images. As a subcategory or field of digital signal processing, digital image processing has many advantages over analog 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 real-world analog signals. The first step is usually to convert the signal from an analog to a digital form, by sampling and then digitizing it using an analog-to-digital converter
Analog-to-digital converter
An analog-to-digital converter is a device that converts a continuous quantity to a discrete time digital representation. An ADC may also provide an isolated measurement...
(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 digital-to-analog converter
Digital-to-analog converter
In electronics, a digital-to-analog converter is a device that converts a digital code to an analog signal . An analog-to-digital converter performs the reverse operation...
(DAC). Even if this process is more complex than analog processing and has a discrete value range
Discrete signal
A discrete signal or discrete-time signal is a time series consisting of a sequence of qualities...
, 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
Data compression
In computer science and information theory, data compression, source coding or bit-rate reduction is the process of encoding information using fewer bits than the original representation would use....
.
DSP algorithm
Algorithm
In mathematics and computer science, an algorithm is an effective method expressed as a finite list of well-defined instructions for calculating a function. Algorithms are used for calculation, data processing, and automated reasoning...
s have long been run on standard computers, on specialized processors called digital signal processor
Digital signal processor
A digital signal processor is a specialized microprocessor with an architecture optimized for the fast operational needs of digital signal processing.-Typical characteristics:...
on purpose-built hardware such as application-specific integrated circuit
Application-specific integrated circuit
An application-specific integrated circuit is an integrated circuit customized for a particular use, rather than intended for general-purpose use. For example, a chip designed solely to run a cell phone is an ASIC...
(ASICs). Today there are additional technologies used for digital signal processing including more powerful general purpose microprocessor
Microprocessor
A microprocessor incorporates the functions of a computer's central processing unit on a single integrated circuit, or at most a few integrated circuits. It is a multipurpose, programmable device that accepts digital data as input, processes it according to instructions stored in its memory, and...
s, field-programmable gate array
Field-programmable gate array
A field-programmable gate array is an integrated circuit designed to be configured by the customer or designer after manufacturing—hence "field-programmable"...
s (FPGAs), digital signal controllers
Digital signal controller
A digital signal controller can be thought of as a hybrid of microcontrollers and digital signal processors . Like microcontrollers, DSCs have fast interrupt responses, offer control-oriented peripherals like PWMs and watchdog timers, and are usually programmed using the C programming language,...
(mostly for industrial apps such as motor control), and stream processors
Stream processing
Stream processing is a computer programming paradigm, related to SIMD , that allows some applications to more easily exploit a limited form of parallel processing...
, among others.
Signal sampling
With the increasing use of computerComputer
A computer is a programmable machine designed to sequentially and automatically carry out a sequence of arithmetic or logical operations. The particular sequence of operations can be changed readily, allowing the computer to solve more than one kind of problem...
s 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 analog-to-digital converter.
Sampling is usually carried out in two stages, discretization
Discretization
In mathematics, discretization concerns the process of transferring continuous models and equations into discrete counterparts. This process is usually carried out as a first step toward making them suitable for numerical evaluation and implementation on digital computers...
and quantization
Quantization (signal processing)
Quantization, in mathematics and digital signal processing, is the process of mapping a large set of input values to a smaller set – such as rounding values to some unit of precision. A device or algorithmic function that performs quantization is called a quantizer. The error introduced by...
. 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
Nyquist–Shannon sampling theorem
The Nyquist–Shannon sampling theorem, after Harry Nyquist and Claude Shannon, is a fundamental result in the field of information theory, in particular telecommunications and signal processing. Sampling is the process of converting a signal into a numeric sequence...
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 digital-to-analog 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
Digital control
Digital control is a branch of control theory that uses digital computers to act as system controllers.Depending on the requirements, a digital control system can take the form of a microcontroller to an ASIC to a standard desktop computer....
.
DSP domains
In DSP, engineers usually study digital signals in one of the following domains: time domainTime domain
Time domain is a term used to describe the analysis of mathematical functions, physical signals or time series of economic or environmental data, with respect to time. In the time domain, the signal or function's value is known for all real numbers, for the case of continuous time, or at various...
(one-dimensional signals), spatial domain (multidimensional signals), frequency domain
Frequency domain
In electronics, control systems engineering, and statistics, frequency domain is a term used to describe the domain for analysis of mathematical functions or signals with respect to frequency, rather than time....
, autocorrelation
Autocorrelation
Autocorrelation is the cross-correlation of a signal with itself. Informally, it is the similarity between observations as a function of the time separation between them...
domain, and wavelet
Wavelet
A wavelet is a wave-like oscillation with an amplitude that starts out at zero, increases, and then decreases back to zero. It can typically be visualized as a "brief oscillation" like one might see recorded by a seismograph or heart monitor. Generally, wavelets are purposefully crafted to have...
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
Discrete Fourier transform
In mathematics, the discrete Fourier transform is a specific kind of discrete transform, used in Fourier analysis. It transforms one function into another, which is called the frequency domain representation, or simply the DFT, of the original function...
produces the frequency domain information, that is the frequency spectrum
Frequency spectrum
The frequency spectrum of a time-domain signal is a representation of that signal in the frequency domain. The frequency spectrum can be generated via a Fourier transform of the signal, and the resulting values are usually presented as amplitude and phase, both plotted versus frequency.Any signal...
. Autocorrelation is defined as the cross-correlation
Cross-correlation
In signal processing, cross-correlation is a measure of similarity of two waveforms as a function of a time-lag applied to one of them. This is also known as a sliding dot product or sliding inner-product. It is commonly used for searching a long-duration signal for a shorter, known feature...
of the signal with itself over varying intervals of time or space.
Time and space domains
The most common processing approach in the time or space domain is enhancement of the input signal through a method called filtering. Digital filterDigital filter
In electronics, computer science and mathematics, a digital filter is a system that performs mathematical operations on a sampled, discrete-time signal to reduce or enhance certain aspects of that signal. This is in contrast to the other major type of electronic filter, the analog filter, which is...
ing 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 transformationLinear transformationIn mathematics, a linear map, linear mapping, linear transformation, or linear operator is a function between two vector spaces that preserves the operations of vector addition and scalar multiplication. As a result, it always maps straight lines to straight lines or 0...
of input samples; other filters are "non-linear". 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 "non-causal" filter uses future input samples. A non-causal filter can usually be changed into a causal filter by adding a delay to it.
- A "time-invariant" filter has constant properties over time; other filters such as adaptive filterAdaptive filterAn adaptive filter is a filter that self-adjusts its transfer function according to an optimization algorithm driven by an error signal. Because of the complexity of the optimization algorithms, most adaptive filters are digital filters. By way of contrast, a non-adaptive filter has a static...
s 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" (FIRFinite impulse responseA finite impulse response filter is a type of a signal processing filter whose impulse response is of finite duration, because it settles to zero in finite time. This is in contrast to infinite impulse response filters, which have internal feedback and may continue to respond indefinitely...
) filter uses only the input signals, while an "infinite impulse response" filter (IIRIIRIIR may refer to* IIR Holdings, a human capital development company acquired by Informa* Indo-Iranian languages* Infinite impulse response...
) 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
Algorithm
In mathematics and computer science, an algorithm is an effective method expressed as a finite list of well-defined instructions for calculating a function. Algorithms are used for calculation, data processing, and automated reasoning...
to implement the filter using hardware instructions. A filter may also be described as a difference equation, a collection of zeroes
Zero (complex analysis)
In complex analysis, a zero of a holomorphic function f is a complex number a such that f = 0.-Multiplicity of a zero:A complex number a is a simple zero of f, or a zero of multiplicity 1 of f, if f can be written asf=g\,where g is a holomorphic function g such that g is not zero.Generally, the...
and poles or, if it is an FIR filter, an impulse response
Impulse response
In signal processing, the impulse response, or impulse response function , of a dynamic system is its output when presented with a brief input signal, called an impulse. More generally, an impulse response refers to the reaction of any dynamic system in response to some external change...
or step response
Step response
The step response of a system in a given initial state consists of the time evolution of its outputs when its control inputs are Heaviside step functions. In electronic engineering and control theory, step response is the time behaviour of the outputs of a general system when its inputs change from...
.
The output of a digital filter to any given input may be calculated by convolving
Convolution
In mathematics and, in particular, functional analysis, convolution is a mathematical operation on two functions f and g, producing a third function that is typically viewed as a modified version of one of the original functions. Convolution is similar to cross-correlation...
the input signal with the impulse response
Impulse response
In signal processing, the impulse response, or impulse response function , of a dynamic system is its output when presented with a brief input signal, called an impulse. More generally, an impulse response refers to the reaction of any dynamic system in response to some external change...
.
Frequency domain
Signals are converted from time or space domain to the frequency domain usually through the Fourier transformFourier transform
In mathematics, Fourier analysis is a subject area which grew from the study of Fourier series. The subject began with the study of the way general functions may be represented by sums of simpler trigonometric functions...
. 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 non-realtime 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
Cepstrum
A cepstrum is the result of taking the Fourier transform of the logarithm of the spectrum of a signal. There is a complex cepstrum, a real cepstrum, a power cepstrum, and phase 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.
Z-plane analysis
Whereas analog filters are usually analysed in terms of transfer functionTransfer function
A transfer function is a mathematical representation, in terms of spatial or temporal frequency, of the relation between the input and output of a linear time-invariant system. With optical imaging devices, for example, it is the Fourier transform of the point spread function i.e...
s in the s plane
S plane
In mathematics and engineering, the S plane is the name for the complex plane on which Laplace transforms are graphed. It is a mathematical domain where, instead of viewing processes in the time domain modelled with time-based functions, they are viewed as equations in the frequency domain...
using Laplace transforms, digital filters are analysed in the z plane in terms of Z-transforms. A digital filter may be described in the z plane by its characteristic collection of zeroes
Zero (complex analysis)
In complex analysis, a zero of a holomorphic function f is a complex number a such that f = 0.-Multiplicity of a zero:A complex number a is a simple zero of f, or a zero of multiplicity 1 of f, if f can be written asf=g\,where g is a holomorphic function g such that g is not zero.Generally, the...
and poles. The z plane provides a means for mapping digital frequency (samples/second) to real and imaginary z components, were for continuous periodic signals and ( is the digital frequency). This is useful for providing a visualization of the frequency response of a digital system or signal.
Wavelet
In numerical analysisNumerical analysis
Numerical analysis is the study of algorithms that use numerical approximation for the problems of mathematical analysis ....
and functional analysis
Functional analysis
Functional analysis is a branch of mathematical analysis, the core of which is formed by the study of vector spaces endowed with some kind of limit-related structure and the linear operators acting upon these spaces and respecting these structures in a suitable sense...
, a discrete wavelet transform (DWT) is any wavelet transform for which the wavelet
Wavelet
A wavelet is a wave-like oscillation with an amplitude that starts out at zero, increases, and then decreases back to zero. It can typically be visualized as a "brief oscillation" like one might see recorded by a seismograph or heart monitor. Generally, wavelets are purposefully crafted to have...
s are discretely sampled. As with other wavelet transforms, a key advantage it has over Fourier transform
Fourier transform
In mathematics, Fourier analysis is a subject area which grew from the study of Fourier series. The subject began with the study of the way general functions may be represented by sums of simpler trigonometric functions...
s is temporal resolution: it captures both frequency and location information (location in time).
Applications
The main applications of DSP are audio signal processingAudio signal processing
Audio signal processing, sometimes referred to as audio processing, is the intentional alteration of auditory signals, or sound. As audio signals may be electronically represented in either digital or analog format, signal processing may occur in either domain...
, audio compression
Audio compression
Audio compression may refer to:*Audio compression , a type of lossy compression in which the amount of data in a recorded waveform is reduced for transmission with some loss of quality, used in CD and MP3 encoding, Internet radio, and the like...
, digital image processing
Digital image processing
Digital image processing is the use of computer algorithms to perform image processing on digital images. As a subcategory or field of digital signal processing, digital image processing has many advantages over analog image processing...
, video compression, speech processing
Speech processing
Speech processing is the study of speech signals and the processing methods of these signals.The signals are usually processed in a digital representation, so speech processing can be regarded as a special case of digital signal processing, applied to speech signal.It is also closely tied to...
, speech recognition
Speech recognition
Speech recognition converts spoken words to text. The term "voice recognition" is sometimes used to refer to recognition systems that must be trained to a particular speaker—as is the case for most desktop recognition software...
, digital communications, RADAR
Radar
Radar is an object-detection system which uses radio waves to determine the range, altitude, direction, or speed of objects. It can be used to detect aircraft, ships, spacecraft, guided missiles, motor vehicles, weather formations, and terrain. The radar dish or antenna transmits pulses of radio...
, SONAR
Sonar
Sonar is a technique that uses sound propagation to navigate, communicate with or detect other vessels...
, seismology
Seismology
Seismology is the scientific study of earthquakes and the propagation of elastic waves through the Earth or through other planet-like bodies. The field also includes studies of earthquake effects, such as tsunamis as well as diverse seismic sources such as volcanic, tectonic, oceanic,...
and biomedicine
Biomedicine
Biomedicine is a branch of medical science that applies biological and other natural-science principles to clinical practice,. Biomedicine, i.e. medical research, involves the study of physiological processes with methods from biology, chemistry and physics. Approaches range from understanding...
. Specific examples are speech compression
Speech compression
Speech compression may mean different things:*Speech encoding refers to compression for transmission or storage, possibly to an unintelligible state, with decompression used prior to playback....
and transmission in digital mobile phone
Mobile phone
A mobile phone is a device which can make and receive telephone calls over a radio link whilst moving around a wide geographic area. It does so by connecting to a cellular network provided by a mobile network operator...
s, room correction
Digital room correction
Digital room correction is a process in the field of acoustics where digital filters designed to ameliorate unfavorable effects of a room's acoustics are applied to the input of a sound reproduction system...
of sound in hi-fi and sound reinforcement applications, weather forecasting
Weather forecasting
Weather forecasting is the application of science and technology to predict the state of the atmosphere for a given location. Human beings have attempted to predict the weather informally for millennia, and formally since the nineteenth century...
, economic forecasting
Economic forecasting
Economic forecasting is the process of making predictions about the economy. Forecasts can be carried out at a high level of aggregation - for example for GDP, inflation, unemployment or the fiscal deficit - or at a more disaggregated level, for specific sectors of the economy or even specific...
, seismic
Seismology
Seismology is the scientific study of earthquakes and the propagation of elastic waves through the Earth or through other planet-like bodies. The field also includes studies of earthquake effects, such as tsunamis as well as diverse seismic sources such as volcanic, tectonic, oceanic,...
data processing, analysis and control of industrial process
Industrial process
Industrial processes are procedures involving chemical or mechanical steps to aid in the manufacture of an item or items, usually carried out on a very large scale. Industrial processes are the key components of heavy industry....
es, medical imaging
Medical imaging
Medical imaging is the technique and process used to create images of the human body for clinical purposes or medical science...
such as CAT
Cat
The cat , also known as the domestic cat or housecat to distinguish it from other felids and felines, is a small, usually furry, domesticated, carnivorous mammal that is valued by humans for its companionship and for its ability to hunt vermin and household pests...
scans and MRI, MP3
MP3
MPEG-1 or MPEG-2 Audio Layer III, more commonly referred to as MP3, is a patented digital audio encoding format using a form of lossy data compression...
compression, computer graphics
Computer graphics
Computer graphics are graphics created using computers and, more generally, the representation and manipulation of image data by a computer with help from specialized software and hardware....
, image manipulation, hi-fi loudspeaker
Loudspeaker
A loudspeaker is an electroacoustic transducer that produces sound in response to an electrical audio signal input. Non-electrical loudspeakers were developed as accessories to telephone systems, but electronic amplification by vacuum tube made loudspeakers more generally useful...
crossovers
Audio crossover
Audio crossovers are a class of electronic filter used in audio applications. Most individual loudspeaker drivers are incapable of covering the entire audio spectrum from low frequencies to high frequencies with acceptable relative volume and lack of distortion so most hi-fi speaker systems use a...
and equalization
Equalization
Equalization, is the process of adjusting the balance between frequency components within an electronic signal. The most well known use of equalization is in sound recording and reproduction but there are many other applications in electronics and telecommunications. The circuit or equipment used...
, and audio effects for use with electric guitar
Electric guitar
An electric guitar is a guitar that uses the principle of direct electromagnetic induction to convert vibrations of its metal strings into electric audio signals. The signal generated by an electric guitar is too weak to drive a loudspeaker, so it is amplified before sending it to a loudspeaker...
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 computerMainframe computer
Mainframes are powerful computers used primarily by corporate and governmental organizations for critical applications, bulk data processing such as census, industry and consumer statistics, enterprise resource planning, and financial transaction processing.The term originally referred to the...
s, or personal computer
Personal computer
A personal computer is any general-purpose computer whose size, capabilities, and original sales price make it useful for individuals, and which is intended to be operated directly by an end-user with no intervening computer operator...
s) or with embedded processors that may or may not include specialized microprocessor
Microprocessor
A microprocessor incorporates the functions of a computer's central processing unit on a single integrated circuit, or at most a few integrated circuits. It is a multipurpose, programmable device that accepts digital data as input, processes it according to instructions stored in its memory, and...
s call digital signal processor
Digital signal processor
A digital signal processor is a specialized microprocessor with an architecture optimized for the fast operational needs of digital signal processing.-Typical characteristics:...
s.
Often when the processing requirement is not real-time
Real-time computing
In computer science, real-time computing , or reactive computing, is the study of hardware and software systems that are subject to a "real-time constraint"— e.g. operational deadlines from event to system response. Real-time programs must guarantee response within strict time constraints...
, processing is economically done with an existing general-purpose 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 real-time
Real-time computing
In computer science, real-time computing , or reactive computing, is the study of hardware and software systems that are subject to a "real-time constraint"— e.g. operational deadlines from event to system response. Real-time programs must guarantee response within strict time constraints...
, DSP is often implemented using specialised microprocessors
Digital signal processor
A digital signal processor is a specialized microprocessor with an architecture optimized for the fast operational needs of digital signal processing.-Typical characteristics:...
such as the DSP56000
Motorola 56000
The Motorola DSP56000 is a family of digital signal processor chips produced by Motorola Semiconductor starting in the 1980s and is still being produced in more advanced models in the 2000s. The 56k series was quite popular for a time in a number of computers, including the NeXT, Atari Falcon,...
, the TMS320, or the SHARC
Super Harvard Architecture Single-Chip Computer
The Super Harvard Architecture Single-Chip Computer is a high performance floating-point and fixed-point DSP from Analog Devices,...
. These often process data using fixed-point arithmetic
Fixed-point arithmetic
In computing, a fixed-point number representation is a real data type for a number that has a fixed number of digits after the radix point...
, although some versions are available which use floating point arithmetic and are more powerful. For faster applications FPGAs might be used.
Beginning in 2007, multicore implementations of DSPs have started to emerge from companies including Freescale and Stream Processors, Inc
Stream Processors, Inc
Stream Processors, Inc was a Silicon Valley-based fabless semiconductor companyspecializing in the design and manufacture of high-performance digital signal processors for applications including video...
. For faster applications with vast usage, ASIC
Application-specific integrated circuit
An application-specific integrated circuit is an integrated circuit customized for a particular use, rather than intended for general-purpose use. For example, a chip designed solely to run a cell phone is an ASIC...
s 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 Multi-core processor.
Related fields
- Analog signal processingAnalog signal processingAnalog signal processing is any signal processing conducted on analog signals by analog means. "Analog" indicates something that is mathematically represented as a set of continuous values. This differs from "digital" which uses a series of discrete quantities to represent signal...
- Automatic controlAutomatic controlAutomatic control is the application of concepts derived from the research area of modern control theory. Automatic control is also a technology for application of control strategies. The implementing requires prior of analyzing and modeling of the subject to be controlled...
- Computer EngineeringComputer engineeringComputer engineering, also called computer systems engineering, is a discipline that integrates several fields of electrical engineering and computer science required to develop computer systems. Computer engineers usually have training in electronic engineering, software design, and...
- Computer ScienceComputer scienceComputer science or computing science is the study of the theoretical foundations of information and computation and of practical techniques for their implementation and application in computer systems...
- Data compressionData compressionIn computer science and information theory, data compression, source coding or bit-rate reduction is the process of encoding information using fewer bits than the original representation would use....
- Dataflow programming
- Electrical engineeringElectrical engineeringElectrical engineering is a field of engineering that generally deals with the study and application of electricity, electronics and electromagnetism. The field first became an identifiable occupation in the late nineteenth century after commercialization of the electric telegraph and electrical...
- Fourier Analysis
- Information theoryInformation theoryInformation theory is a branch of applied mathematics and electrical engineering involving the quantification of information. Information theory was developed by Claude E. Shannon to find fundamental limits on signal processing operations such as compressing data and on reliably storing and...
- Machine LearningMachine learningMachine learning, a branch of artificial intelligence, is a scientific discipline concerned with the design and development of algorithms that allow computers to evolve behaviors based on empirical data, such as from sensor data or databases...
- Real-time computingReal-time computingIn computer science, real-time computing , or reactive computing, is the study of hardware and software systems that are subject to a "real-time constraint"— e.g. operational deadlines from event to system response. Real-time programs must guarantee response within strict time constraints...
- Stream processingStream processingStream processing is a computer programming paradigm, related to SIMD , that allows some applications to more easily exploit a limited form of parallel processing...
- TelecommunicationTelecommunicationTelecommunication is the transmission of information over significant distances to communicate. In earlier times, telecommunications involved the use of visual signals, such as beacons, smoke signals, semaphore telegraphs, signal flags, and optical heliographs, or audio messages via coded...
- Time seriesTime seriesIn statistics, signal processing, econometrics and mathematical finance, a time series is a sequence of data points, measured typically at successive times spaced at uniform time intervals. Examples of time series are the daily closing value of the Dow Jones index or the annual flow volume of the...
- WaveletWaveletA wavelet is a wave-like oscillation with an amplitude that starts out at zero, increases, and then decreases back to zero. It can typically be visualized as a "brief oscillation" like one might see recorded by a seismograph or heart monitor. Generally, wavelets are purposefully crafted to have...