2. Reproducibility. The performance of a DSP system can be repeated precisely from
one unit to another. This is because the signal processing of DSP systems work
directly with binary sequences. Analog circuits will not perform as well from each
circuit, even if they are built following identical specifications, due to component
tolerances in analog components. In addition, by using DSP techniques, a digital
signal can be transferred or reproduced many times without degrading its signal
quality.
3. Reliability. The memory and logic of DSP hardware does not deteriorate with
age. Therefore the field performance of DSP systems will not drift with changing
environmental conditions or aged electronic components as their analog counter-
parts do. However, the data size (wordlength) determines the accuracy of a DSP
system. Thus the system performance might be different from the theoretical expect-
ation.
4. Complexity. Using DSP allows sophisticated applications such as speech or image
recognition to be implemented for lightweight and low power portable devices. This
is impractical using traditional analog techniques. Furthermore, there are some
important signal processing algorithms that rely on DSP, such as error correcting
codes, data transmission and storage, data compression, perfect linear phase filters,
etc., which can barely be performed by analog systems.
With the rapid evolution in semiconductor technology in the past several years, DSP
systems have a lower overall cost compared to analog systems. DSP algorithms can be
developed, analyzed, and simulated using high-level language and software tools such as
C=C and MATLAB (matrix laboratory). The performance of the algorithms can be
verified using a low-cost general-purpose computer such as a personal computer (PC).
Therefore a DSP system is relatively easy to develop, analyze, simulate, and test.
There are limitations, however. For example, the bandwidth of a DSP system is
limited by the sampling rate and hardware peripherals. The initial design cost of a
DSP system may be expensive, especially when large bandwidth signals are involved.
For real-time applications, DSP algorithms are implemented using a fixed number of
bits, which results in a limited dynamic range and produces quantization and arithmetic
errors.
1.1 Basic Elements of Real-Time DSP Systems
There are two types of DSP applications ± non-real-time and real time. Non-real-time
signal processing involves manipulating signals that have already been collected and
digitized. This may or may not represent a current action and the need for the result
is not a function of real time. Real-time signal processing places stringent demands
on DSP hardware and software design to complete predefined tasks within a certain
time frame. This chapter reviews the fundamental functional blocks of real-time DSP
systems.
The basic functional blocks of DSP systems are illustrated in Figure 1.1, where a real-
world analog signal is converted to a digital signal, processed by DSP hardware in
2
INTRODUCTION TO REAL-TIME DIGITAL SIGNAL PROCESSING