What is Digital Signal Processing?
To understand what is Digital Signal Processing (DSP) let’s examine what does each of its words mean. “Signal” is any physical quantity that carries information. “Processing” is a series of steps or operations to achieve a particular end. It is easy to see that Signal Processing is used everywhere to extract information from signals or to convert information-carrying signals from one form to another. For example, our brain and ears
take input speech signals, and then process and convert them into
meaningful words. Finally, the word “Digital” in Digital Signal Processing means that the process is done by computers, microprocessors, or
logic circuits.
The field DSP has expanded significantly over
that last few decades as a result of rapid developments in computer
technology and integrated-circuit fabrication. Consequently, DSP
has played an increasingly important role in a wide range of
disciplines in science and technology. Research and development in
DSP are driving advancements in many high-tech areas including
telecommunications, multimedia, medical and scientific imaging, and
human-computer interaction.
To illustrate the digital revolution and the
impact of DSP, consider the development of digital cameras.
Traditional film cameras mainly rely on physical properties of the
optical lens, where higher quality requires bigger and larger
system, to obtain good images. When digital cameras were first
introduced, their quality were inferior compared to film cameras.
But as microprocessors become more powerful, more sophisticated DSP
algorithms have been developed for digital cameras to correct
optical defects and improve the final image quality. Thanks to
these developments, the quality of consumer-grade digital cameras
has now surpassed the equivalence in film cameras. As further
developments for digital cameras attached to cell phones
(cameraphones), where due to small size requirements of the lenses,
these cameras rely on DSP power to provide good images.
Essentially, digital camera technology uses computational power to
overcome physical limitations. We can find the similar trend
happens in many other applications of DSP such as digital
communications, digital imaging, digital television, and so
on.
In summary, DSP has foundations on
Mathematics, Physics, and Computer Science, and can provide the key
enabling technology in numerous applications.
Overview of Key Concepts in Digital Signal Processing
The two main characters in DSP are
signals and
systems. A
signal is defined as any physical quantity that
varies with one or more independent variables such as time
(one-dimensional signal), or space (2-D or 3-D signal). Signals
exist in several types. In the real-world, most of signals are
continuous-time or
analog signals that have values continuously at
every value of time. To be processed by a computer, a
continuous-time signal has to be first
sampled in time into a
discrete-time signal so that its values at a
discrete set of time instants can be stored in computer memory
locations. Furthermore, in order to be processed by logic circuits,
these signal values have to be
quantized in to a set of discrete values, and
the final result is called a
digital signal. When the quantization effect
is ignored, the terms discrete-time signal and digital signal can
be used interchangeability.
In signal processing, a
system is defined as a process whose input and
output are signals. An important class of systems is the class of
linear time-invariant (or
shift-invariant) systems. These systems have a
remarkable property is that each of them can be completely
characterized by an
impulse response function (sometimes is also
called as
point spread function), and the system is
defined by a
convolution (also referred to as a
filtering) operation. Thus, a linear
time-invariant system is equivalent to a (linear)
filter. Linear time-invariant systems are
classified into two types, those that have
finite-duration impulse response (FIR) and
those that have an
infinite-duration impulse response
(IIR).
A signal can be viewed as a
vector in a
vector space. Thus,
linear algebra provides a powerful framework to
study signals and linear systems. In particular, given a vector
space, each signal can be represented (or expanded) as a
linear combination of elementary signals. The
most important
signal expansions are provided by the
Fourier transforms. The Fourier transforms, as
with general transforms, are often used effectively to transform a
problem from one domain to another domain where it is much easier
to solve or analyze. The two domains of a Fourier transform have
physical meaning and are called the
time domain and the
frequency domain.
Sampling, or the conversion of
continuous-domain real-life signals to
discrete numbers that can be processed by
computers, is the essential bridge between the analog and the
digital worlds. It is important to understand the connections
between signals and systems in the real world and inside a
computer. These connections are convenient to analyze in the
frequency domain. Moreover, many signals and systems are specified
by their
frequency characteristics.
Because any
linear time-invariant system can be
characterized as a
filter, the design of such systems boils down
to the design the associated filters. Typically, in the
filter design process, we determine the
coefficients of an FIR or IIR filter that closely approximates the
desired
frequency response specifications. Together
with Fourier transforms, the
z-transform provides an effective tool to
analyze and design digital filters.
In many applications, signals are
conveniently described via
statistical models as
random signals. It is remarkable that optimum
linear filters (in the sense of
minimum mean-square error), so called
Wiener filters, can be determined using only
second-order statistics (autocorrelation and
crosscorrelation functions) of a
stationary process. When these statistics
cannot be specified beforehand or change over time, we can employ
adaptive filters, where the filter
coefficients are adapted to the signal statistics. The most popular
algorithm to adaptively adjust the filter coefficients is the
least-mean square (LMS) algorithm.