Discrete-Time Signal Processing: Book Resources
Preface


This text is a second generation descendent of our text, Digital Signal Processing, which was published in 1975. At that time, the technical field of digital signal processing was in its infancy, but certain basic principles had emerged and could be organized into a coherent presentation. Although courses existed at a few schools, they were almost exclusively at the graduate level. The original text was designed for such courses.

By 1985, the pace of research and integrated circuit technology made it clear that digital signal processing would realize the potential that had been evident in the 1970s. The burgeoning importance of DSP clearly justified a revision and updating of the original text. However, in organizing that revision, it was clear that so many changes had occurred that it was most appropriate to develop a new textbook, strongly based on our original text, while keeping the original text in print. We titled the new book Discrete-Time Signal Processing to emphasize that most of the theory and design techniques discussed in the text apply to discrete-time systems in general.

By the time Discrete-Time Signal Processing was published in 1989, the basic principles of DSP were commonly taught at the undergraduate level, sometimes even as part of a first course on linear systems, or at a somewhat more advanced level in third-year, fourth-year, or beginning graduate subjects. Therefore, it was appropriate to expand considerably the treatment of such topics as linear systems, sampling, multirate signal processing, applications, and spectral analysis. In addition, more examples were included to emphasize and illustrate important concepts. We also removed and condensed some topics that time had shown were not fundamental to the understanding of discrete-time signal processing. Consistent with the importance that we placed on well constructed examples and homework problems, the new text contained more than 400 problems.

In the decade or so since Discrete-Time Signal Processing was published, some important new concepts have been developed, the capability of digital integrated circuits has grown exponentially, and an increasing number of applications have emerged. However, the underlying basics and fundamentals remain largely the same albeit with a refinement of emphasis, understanding and pedagogy. Consequently when we looked at what was needed to keep Discrete-Time Signal Processing up-to-date as a textbook emphasizing the fundamentals of DSP, we found that the changes needed were far less drastic than before. In planning this current revision we were guided by the principle that the main objective of a fundamental textbook is to uncover a subject rather than to cover it. Consequently, our goal in this current revision is to make the subject of discrete-time signal processing even more accessible to students and practicing engineers, without compromising on coverage of what we consider to be the essential concepts that define the field. Toward this end we have considerably expanded our cov-erage of multi-rate signal processing due to its importance in oversampled A-to-D and D-to-A conversion and digital filter implementation. We have added a discussion of the cosine transform, which plays a central role in data compression standards. We have also removed some material that we judged to be of lesser importance in the present context, or more appropriate for advanced textbooks and upper level graduate courses. Many of the concepts that were removed from the text (such as basic results on the cepstrum) have reappeared in some of the new homework problems.

A major part of our emphasis in this revision has been directed toward the homework problems and examples. We have significantly increased the number of examples which are important in illustrating and understanding the basic concepts, and we have increased the number of homework problems. Furthermore, the homework problems have been reorganized according to their level of difficulty and sophistication, and answers are provided to a selected set of problems. The instructor’s manual available from the publisher contains updated solutions for all of the problems in the book. These solutions were prepared by Li Lee and Maya Said of MIT and Jordan Rosenthal and Greg Slabaugh of Georgia Tech. This manual also contains some suggested exam problems based on our courses at MIT, Georgia Tech and the University of Massachusetts Dartmouth.

As in the earlier texts, it is assumed that the reader has a background of advanced calculus, along with a good understanding of the elements of complex numbers and variables. In this edition, we have refrained from the use of complex contour integration in order to make the discussion accessible to a wider audience. An exposure to linear system theory for continuous-time signals, including Laplace and Fourier transforms, as taught in most undergraduate electrical and mechanical engineering curricula is still a basic prerequisite. With this background, the book is self-contained. In particular, no prior experience with discrete-time signals, z-transforms, discrete Fourier transforms, and the like is assumed. In later sections of some chapters, some topics such as quantization noise are included that assume a basic background in stochastic signals. A brief review of the background for these sections is included in Chapter 2 and in Appendix A.

It has become common in many signal processing courses to include exercises to be done on a computer, and many of the homework problems in this book are easily turned into problems to be solved with the aid of a computer. As in the first edition, we have purposely avoided providing special software to implement algorithms described in this book, for a variety of reasons. Foremost among them is that there are a variety of inexpensive signal processing software packages readily available for demonstrating and implementing signal processing on any of the popular personal computers and workstations. These packages are well documented and have excellent technical support, and many of them have excellent user interfaces that make them easily accessible to students. Furthermore, they are in a constant state of evolution, which strongly suggests that available software for classroom use should be constantly reviewed and updated. We share the enthusiasm of many for MATLAB, which an increasing number of students are learning at early stages of their education. However, we continue to prefer a presentation that utilizes the power of computational tools such as MATLAB to create examples and illustrations of the theory and fundamentals for use in the text, but does not let issues of programming syntax and functionality of the software environment detract from the emphasis on the concepts and the way that they are used. We firmly believe that there is enormous value in hands-on experience. Indeed, software tools such as MATLAB allow students to implement sophisticated signal processing systems on their own personal computers, and we feel that there is great benefit to this once the student is confident of the fundamentals and is capable of sorting out programming mistakes from conceptual errors. For this reason, the instructor’s manual contains a section of suggestions for assignments in the inexpensive texts Computer-Based Exercises for Signal Processing Using Matlab 5 by McClellan, et al., and Computer Explorations in Signals and Systems Using Matlab by Buck, Daniel and Singer, both of which are also available from Prentice-Hall, Inc. These suggestions link projects in these computer exercise books to specific sections, examples and problems in this textbook. This will allow instructors to design computer assignments which are related to the material and examples they have covered in class, and to link these computer assignments to traditional analytic homework problems to reinforce the concepts demonstrated there.

The material in this book is organized in a way that provides considerable flexibility in its use at both the undergraduate and graduate level. A typical one-semester undergraduate elective might cover in depth Chapter 2, Sections 2.0–2.9; Chapter 3; Chapter 4, Sections 4.0–4.6; Chapter 5, Sections 5.0–5.3; Chapter 6, Sections 6.0–6.5; Chapter 7, Sections 7.0–7.3 and a brief overview of Sections 7.4–7.5. If students have studied discrete-time signals and systems in a general signals and systems course, it would be possible to move more quickly through the material of Chapters 2, 3, and 4, thus freeing time for covering Chapter 8. A first-year graduate course could augment the above topics with the remaining topics in Chapter 5, a discussion of multirate signal processing (Section 4.7) an exposure to some of the quantization issues introduced in Section 4.8 and perhaps an introduction to noise shaping in A/D and D/A converters as discussed in Section 4.9. A first-year graduate course should also include exposure to some of the quantization issues addressed in Sections 6.6–6.9, to a discussion of optimal FIR filters as incorporated in Sections 7.4 and 7.5, and a thorough treatment of the discrete Fourier transform (Chapter 8) and its computation using the FFT (Chapter 9). The discussion of the DFT can be effectively augmented with many of the examples in Chapter 10. In a two-semester graduate course, the entire text together with a number of additional advanced topics can be covered.

In Chapter 2, we introduce the basic class of discrete-time signals and systems and define basic system properties such as linearity, time invariance, stability, and causality. The primary focus of the book is on linear time-invariant systems because of the rich set of tools available for designing and analyzing this class of systems. In particular, in Chapter 2 we develop the time-domain representation of linear time-invariant systems through the convolution sum and introduce the class of linear time-invariant systems represented by linear constant-coefficient difference equations. In Chapter 6, we develop this class of systems in considerably more detail. Also in Chapter 2 we introduce the frequency-domain representation of signals and systems through the Fourier transform. The primary focus in Chapter 2 is on the representation of sequences in terms of the Fourier transform, i.e., as a linear combination of complex exponentials, and the development of the basic properties of the Fourier transform.

In Chapter 3, we develop the z-transform as a generalization of the Fourier transform. This chapter focuses on developing the basic theorems and properties of the z-transform and the development of the partial fraction expansion method for the inverse transform operation. In Chapter 5, the results developed in Chapters 3 and 4 are used extensively in a detailed discussion of the representation and analysis of linear time-invariant systems.

In Chapter 4, we carry out a detailed discussion of the relationship between continuous-time and discrete-time signals when the discrete-time signals are obtained through periodic sampling of continuous-time signals. This includes a development of the Nyquist sampling theorem. In addition, we discuss upsampling and downsampling of discrete-time signals, as used, for example, in multirate signal processing systems and for sampling rate conversion. The chapter concludes with a discussion of some of the practical issues encountered in conversion from continuous time to discrete time including prefiltering to avoid aliasing, modeling the effects of amplitude quantization when the discrete-time signals are represented digitally, and the use of oversampling in simplifying the A-to-D and D-to-A conversion processes.

In Chapter 5 we apply the concepts developed in the previous chapters to a detailed study of the properties of linear time-invariant systems. We define the class of ideal, frequency-selective filters and develop the system function and pole-zero rep-resentation for systems described by linear constant-coefficient difference equations, a class of systems whose implementation is considered in detail in Chapter 6. Also in Chapter 5, we define and discuss group delay, phase response and phase distortion, and the relationships between the magnitude response and the phase response of systems, including a discussion of minimum-phase, allpass, and generalized linear phase systems.

In Chapter 6, we focus specifically on systems described by linear constant-coefficient difference equations and develop their representation in terms of block diagrams and linear signal flow graphs. Much of this chapter is concerned with developing a variety of the important system structures and comparing some of their properties. The importance of this discussion and the variety of filter structures relate to the fact that in a practical implementation of a discrete-time system, the effects of coefficient inaccuracies and arithmetic error can be very dependent on the specific structure used. While these basic issues are similar whether the technology used for implementation is digital or discrete-time analog, we illustrate them in this chapter in the context of a digital implementation through a discussion of the effects of coefficient quantization and arithmetic roundoff noise for digital filters.

While Chapter 6 is concerned with the representation and implementation of linear constant-coefficient difference equations, Chapter 7 is a discussion of the proce-dures for obtaining the coefficients of this class of difference equations to approximate a desired system response. The design techniques separate into those used for infinite impulse response (IIR) filters and those used for finite impulse response (FIR) filters.

In continuous-time linear system theory, the Fourier transform is primarily an analytical tool for representing signals and systems. In contrast, in the discrete-time case, many signal processing systems and algorithms involve the explicit computation of the Fourier transform. While the Fourier transform itself cannot be computed, a sampled version of it, the discrete Fourier transform (DFT), can be computed, and for finite-length signals the DFT is a complete Fourier representation of the signal. In Chapter 8, the discrete Fourier transform is introduced and its properties and relationship to the discrete-time Fourier transform are developed in detail. In this chapter we also provide an introduction to the discrete cosine transform which is playing an increasingly impor-tant role in many applications including audio and video compression. In Chapter 9, the rich and important variety of algorithms for computing or generating the discrete Fourier transform is introduced and discussed, including the Goertzel algorithm, the fast Fourier transform (FFT) algorithms, and the chirp transform.

With the background developed in the earlier chapters and particularly Chapters 2, 3, 5, and 8, we focus in Chapter 10 on Fourier analysis of signals using the discrete Fourier transform. Without a careful understanding of the issues involved and the relationship between the DFT and the Fourier transform, using the DFT for practical signal analysis can often lead to confusions and misinterpretations. We address a number of these issues in Chapter 10. We also consider in some detail the Fourier analysis of signals with time-varying characteristics by means of the time-dependent Fourier transform.

In Chapter 11, we introduce the discrete Hilbert transform. This transform arises in a variety of practical applications, including inverse filtering, complex representations for real bandpass signals, single-sideband modulation techniques, and many others.

With this edition we thank and welcome Professor John Buck. John has been a long time contributor to this book through his teaching of the subject while a student at MIT and more recently as a member of the faculty at the University of Massachusetts Dartmouth. In this edition he has taken the major responsibility for a total reworking and reorganization of the homework problems and many of the examples in the book. His insight and dedication to the task are obvious in the final result.

Alan V. Oppenheim
Ronald W. Schafer


© 1995-1999 by Prentice-Hall, Inc.
A Pearson Company
Legal Notice