Chuyển đến nội dung chính

Real-Time Digital Signal Processing

Real-Time Digital Signal Processing


 Sen M. Kuo and Bob H. Lee

Contents
 Preface xv
1 Introduction to Real-Time Digital Signal Processing 1

 1.1 Basic Elements of Real-Time DSP Systems 2
 1.2 Input and Output Channels 3
 1.2.1 Input Signal Conditioning
 1.2.2 A/D Conversion 4
 1.2.3 Sampling 5
 1.2.4 Quantizing and Encoding 7
 1.2.5 D/A Conversion 9
 1.2.6 Inpul/Oulput Devices
 1.3 DSP Hardware 11
 1.3.1 DSP Hardware Options 1
 1.3.2 Fixed-and Floating-Point Devices!3
 1.3.3 Real-Time Con-straints 4
 1.4 DSP System Design 1
 1.4.1 AlgorithmDevelopment
 1.4.2 Selection of DSP Chips 6
 1.4.3 Software Development 17
 1.4.4 High-Level Software Development Tools 18
 1.5 Experiments Using Code Composer Studio 9
 1.5.1 Experiment 1A - Using the CCS and the TMS320C55x Simulator 20
 1.5.2 Experiment IB - Debugging Program on the CCS 25
 1.5.3 Experiment IC - File Input and Output 28
 1.5.4 Experiment ID - Code Efficiency Analysis 9
 1.5.5 Experiment IE - General Extension Language 32
 References 33
 Exercises

 2 Introduction to TMS320C55x Digital Signal Processor 35

 2.1 Introduction 35
 2.2 TMS320C55x Architecture 36
 2.2.1 TMS320C55x Architecture Overview Buses Memory Map
 2.3 Software Development Tools 40
 2.3.1 C Compiler 42
 2.3.2 Assem-bler 4
 2.3.3 Linker &
 2.3.4 Code Composer Studio 48
 2.3.5 Assembly Statement Syntax 9
 2.4 TMS320C55x Addressing Modes 50
 2.4.1 Direct Addressing Mode 2
 2.4.2 Indirect Ad-dressing Mode 3
 2.4.3 Absolute Addressing Mode 56
 2.4.4 Memory-Mapped Register Ad-dressing Mode 5
 2.4.5 Register Bits Addressing Mode 7
 2.4.6 Circular Addressing Mode 58
 2.5 Pipeline and Parallelism 9
 2.5.1 TMS320C55x Pipeline
 2.5.2 Parallel Execution 60
 2.6 TMS320C55x Instruction Set 3
 2.6.1 Arithmetic Instructions
 2.6.2 Logic and Bits Manip-ulation Instructions 64
 2.6.3 Move Instruction 65
 2.6.4 Program Flow Control Instructions 66
 2.7 Mixed C and Assembly Language Programming 68
 2.8 Experiments - Assembly Programming Basics 70
 2.8.1 Experiment 2A – Interfacing C with Assembly Code 71
 2.8.2 Experiment 2B- Addressing Mode Experiments 72
References 75
Exercises
 3 DSP Funda-mentals and Implementation Considerations 77

 3.1 Digital Signals and Systems 7
 3.1.1 Elementary Digital Signals
 3.1.2 Block Diagram Representation of Digital Systems 79
 3.1.3 Impulse Response of Digital Systems 83
 3.2 Introduction to Digital Filters 8
 3.2.1 FIR Fil-ters and Power Estimators 84
 3.2.2 Response of Linear Systems 7
 3.2.3 IIR Filters 88
 3.3 Introduction to Random Variables 90
 3.3.1 Review of Probability and Random Variables 9
 3.3.2 Operations on Random Variables 92
 3.4 Fixed-Point Representation and Arith-metic 5 Quantization Errors 98
 3.5.1 Input Quantization Noise Coefficient Quantization Noise 101 3 Roundoff Noise 106 Overflow and Solutions 3
 3.6. Saturation Arithmetic Overflow Handling Scaling of Signals
 3.7 Implementatio Procedure for Real-Time Appli-cations
 3.8 Experiments of Fixed-Point Implementations 108
 3.8.1 Experiment 3A Quantization of Sinusoidal Signals QO.
 3.8.2 Experiment 3B - Quantization of Speech Signals
 3.8.3 Experiment 3C - Overflow and Saturation Arithmetic
 3.8.4 Exper-iment 3D - Quantization of Coefficients 115
 3.8.5 Experiment 3E - Synthesizing Sine Function
 References
 Exercises

 4 Frequency Analysis 127

 4.1 Fourier Series and Transform 127
 4.1.1 Fourier Series
 4.1.2 Fourier Transform 13Q
 4.2 The r-Transforms 3
 4.2.1 Definitions and Basic Properties [3
 4.2.2 Inverse r-Transform H6
 4.3 System Con-cepts 141
 4.3.1 Transfer Functions
 4.3.2 Digital Filters [43
 4.3.3 Poles and Zeros 144
 4.3.4 Frequency Responses 8
 4.4 Discrete Fourier Transform 152
 4.4.1 Discrete-Time Fourier Series and Transform 15
 4.4.2 Aliasing and Folding 154
 4.4.3 Discrete Fourier Transform 157
 4.4.4 Fast Fourier Transform 9
 4.5 Applications 160
 4.5.1 Design of Simple Notch Fil-ters 16
 4.5.2 Analysis of Room Acoustics 2
 4.6 Experiments Using the TMS32GC55x 165
 4.6.1 Experiment 4A - Twiddle Factor Generation 167
 4.6.2 Experiment 4B - Complex Data Operation 9
 4.6.3 Experiment 4C - Implementation of DFT 171
 4.6.4 Experiment 4D - Experiment Using Assembly Routines 173
References 176
 Exercises

5 Design and Implementation of FIR Filters 181

 5.1 Introduction to Digital Filters ISI
 5.1.1 Filter Char-acteristics 182
 5.1.2 Filter Types 183
 5.1.3 Filter Specifications 185
 5.2 FIR Filtering 9
 5.2.1 Linear Convolution IS2 Some Simple FIR Filters 192 3 Phas 4 4 Realization of Filter 8 3 Design of FIR Filters 201
 5.3. Filter Design Procedure 20 Fourie Series Method Gibbs Phenomeno
 5.3.4 Window Functions 208
 5.3.5 Frequency Sampling Method 214
 5.4 Design of FIR Filters Using MATLAB 219
 5.5 Implementation Considerations 221
 5.5.1 Software Implementations
 5.5.2 Quantization Effects in FIR Filters 223
 5.6 Experiments Using the TMS320C55x 5
 5.6.1 Experiment 5A Implementation of Block FIR Filler 227
 5.6.2 Experiment 5B - Implementation of Symmetric FIR Filter 230
 5.6.3 Experiment 5C - Implementation of FIR Filter Using Dual-MAC 233
 References 235
 Exercises

 6 Design and Implementation of IIR Filters 241

 6.1 Laplace Transform 241
 6.1.1 Introduction to the Laplace Transform 24
 6.1.2 Relationships between the Laplace and r-Transforms 245
 6.1.3 Mapping Properties 246
 6.2 Analog Filters 247
 6.2.1 Introduction to Analog Filters 248
 6.2.2 Characteristics of Analog Filters 9
 6.2.3 Frequency Transforms 253
 6.3 Design of IIR Filters 5
 6.3.1 Review of IIR Fillers 25
 6.3.2 Impulse-Invariant Method 6
 6.3.3 Bilinear Transform 259
 6.3.4 Filler Design Using Bilinear Transform 26]
 6.4 Realization of IIR Fil-ters 263
 6.4.1 Direct Forms 6.4,2 Cascade Form 266
 6.4.3 Parallel Form 8
 6.4.4 Realization Using MATLAB 269
 6.5 Design of IIR Filters Using MATLAB 271
 6.6 Implementation Considerations 273
 6.6.1 Stability 274
 6.6.2 Finite-Precision Effects and Solutions 275
 6.6.3 Software Implementations 279
 6.6.4 Practical Applications 280
 6.7 Software Devel-opments and Experiments Using the TMS320C55x 284
 6.7.1 Design of IIR Filter 285
 6.7.2 Experiment 6A Floating-Point C Implementation 286
 6.7.3 B - Fixed-Poin Using Intrin-siCS 289 4 C Fixed-Point C Programming Considerations 292 5 D Assembly Language Implementations 29
 References 297
 Exercises

 7 Fast Fourier Transform and Its Applica-tions 303

 7.1 Discrete Fourier Transform 303
 7.1.1 Definitions 30 Important Properties of DFT 8 Circular Convolution
 7.2 Fast Fourier Transforms 314
 7.2.1 Decimation-in-Time 315
 7.2.2 Decimation-in-Frequency 9
 7.2.3 Inverse Fast Fourier Transform 320
 7.2.4 MATLAB Im-plementations 1
 7.3 Applications 322
 7.3.1 Spectrum Estimation and Analysis 32
 7.3.2 Spectral Leakage and Resolution 4
 7.3.3 Power Density Spectrum 328
 7.3.4 Fast Convolu-tion 330
 7.3.5 Spectrogram 2
 7.4 Implementation Considerations 333
 7.4.1 Computational Issues 4
 7.4.2 Finite-Precision Effects 33
 7.5 Experiments Using the TMS320C55x 336
 7.5.1 Experiment 7A - Radix-2 Complex FFT 33
 7.5.2 Experiment 7B - Radix-2 Complex FFT Using Assembly Language 341
 7.5.3 Experiment 7C - FFT and IFFT 344
 7.5.4 Exper-iment 7D - Fast Convolution
References 346
Exercises

8 Adaptive Filtering 351

 8.1 Introduction to Random Processes 351
 8.1.1 Correlation Functions 352
 8.1.2 Frequency-Do-main Representations 356
 8.2 Adaptive Filters 359
 8.2.1 Introduction to Adaptive Filtering 35
 8.2.2 Performance Function 361
 8.2.3 Method of Steepest Descent 365
 8.2.4 The LMS Algorithm 366
 8.3 Performance Analysis 7
 8.3.1 Stability Constraint 36
 8.3.2 Convergence Speed 8
 8.3.3 Excess Mean-Square Error 369
 8.4 Modified LMS Algorithms 370
 8.4.1 Nor-malized LMS Algorithm
 8.4.2 Leaky LMS Algorithm 371
 8.5 Applications 372
 8.5.1 Adaptive System Identification 37
 8.5.2 Adaptive Linear Prediction 3
 8.5.3 Adaptive Noise Cancellation 375 4 Notch Filters  5 Channel Equalization 9
 8.6 Implementation Consider-ations 381
 8.6.1 Computational Issues2 Finite-Precision Effect 2 7 Experiments Using the TMS320C55x 388.7. Experiment 8A - Adaptive System Identification 38B Predictor Using the Leaky LMS Algorithm 390
References 396
Exercises

 9 Practical DSP Applications in Communications 399

 9.1 Sinewave Generators and Applications 39
 9.1.1 Lookup-Table Method 400
 9.1.2 Linear Chirp Signal 2
 9.1.3 DTMF Tone Generator 403
 9.2 Noise Generators and Applications 404
 9.2.1 Linear Congrucntial Sequence Generator 40
 9.2.2 Pseudo-Random Binary Sequence Gener-ator 6
 9.2.3 Comfort Noise in Communication Systems 408
 9.2.4 Off-Line System Model-ing 409
 9.3 DTMF Tone Detection 410
 9.3.1 Specifications
 9.3.2 Goertzel Algorithm 411
 9.3.3 Implementation Considerations 414
 9.4 Adaptive Echo Cancellation 7
 9.4.1 Line Echoes 41
 9.4.2 Adaptive Echo Canceler 418
 9.4.3 Practical Considerations 422
 9.4.4 Dou-ble-Talk Effects and Solutions 423
 9.4.5 Residual Echo Suppressor 425
 9.5 Acoustic Echo Cancellation 6
 9.5.1 Introduction 42
 9.5.2 Acoustic Echo Canceler 427
 9.5.3 Implementa-tion Considerations 428
 9.6 Speech Enhancement Techniques 9
 9.6.1 Noise Reduction Techniques 42
 9.6.2 Spectral Subtraction Techniques 431
 9.6.3 Implementation Consider-ations 3
 9.7 Projects Using the TMS320C55x 435
 9.7.1 Project Suggestions 43 9.7.2 A Project Example - Wireless Application 437
References 442

 Appendix A Some Useful For-mulas 445
A.l Trigonometric Identities 445
A.2 Geometric Series 6
A.3 Complex Variables 447
A.4 Impulse Functions 9
A.5 Vector Concepts 44
A.6 Units of Power 450 Reference 451

 Appendix B Introduction of MATLAB for DSP Applications 453
B.l Elementary Op-erationsB.l.l Initializing Variables and Vectors 452 Graphics 5 3 Basic Operators 7 4 Files 9 2 Generation and Processing of Digital Signals 463 DSP Applications 464 User-Written Function B.5 Summary of Useful MATLAB Functions 466 References 467

Appendix C Introduction of C Programming for DSP Applications 469
C.l A Simple C Pro-gram 470 C.l.l Variables and Assignment Operators 472 C.l.2 Numeric Data Types and Conversion 473 C.l.3 Arrays 474 C.2 Arithmetic and Bitwise Operators 475 C.2.1 Arilh-melic Operators 475 C.2.2 Bitwise Operators 476 C.3 An FIR Filter Program 476 C.3.1 Command-Line Arguments 477 C.3.2 Pointers 477 C.3.3 C Functions 478 C.3.4 Files and I/O Operations 480 C.4 Control Structures and Loops 481 C.4.1 Control Structures 481 C.4,2 Logical Operators 483 C.4.3 Loops 484 C.5 Data Types Used by the TMS320C55x 485 References 486

 Appendix D About the Software 487

 Preface
 Real-time digital signal processing (DSP) using general-purpose DSP processors is very challenging work in today's engineering fields. It promises an effective way to de-sign, experiment, and implement a variety of signal processing algorithms for real-world applications.
 With DSP penetrating into various applications, the demand for high- per-formance digital signal processors has expanded rapidly in recent years. Many industrial companies are currently engaged in real-time DSP research and development. It becomes increasingly important for today's students and practicing engineers to master not only the theory of DSP, but equally important, the skill of real-time DSP system design and imple-mentation techniques.
 This book offers readers a hands-on approach to understanding realtime DSP principles, system design and implementation considerations, realworld applications, as well as many DSP experiments using MATLAB, C/C+ +, and the TMS320C55x. This is a practical book about DSP and using digital signal processors for DSP applications.
 This book is intended as a text for senior/graduate level college students with emphasis on real-time DSP implementations and applications. This book can also serve as a desktop reference for practicing engineer and embedded system programmer to learn DSP concepts and to develop real-time DSP applications at work.
 We use a practical approach that avoids a lot of theoretical derivations. Many useful DSP textbooks with sol-id mathematical proofs are listed at the end of each chapter. To efficiently develop a DSP system, the reader must understand DSP algorithms as well as basic DSP chip architecture and programming. It is helpful to have several manuals and application notes on the TMS320C55x from Texas Instruments. The DSP processor we will use as an example in this book is the TMS320C55x, the newest 16-bit fixed-point DSP processor from Texas Instruments.
 To effectively illustrate real-time DSP concepts and appli-cations, MATLAB will be introduced for analysis and filter design, C will be used for im-plementing DSP algorithms, and Code Composer Studio (CCS) of the TMS320C55x are integrated into lab experiments, projects, and applications. To efficiently utilize the ad-vanced DSP architecture for fast software development and maintenance, the mixing of C and assembly programs are emphasized.
 Chapter 1 reviews the fundamentals of real-time DSP functional blocks, DSP hard ware options, fixed and floatingpoint DSP devices, re-al-time constraints, algorithm development, selection of DSP chips, and software development. In Chapter 2, we introduce the architecture and assembly programming of the TMS320C55x.
 Chapter 3 presents some fundamental DSP concepts in time domain and practical considerations for the implementation of digital filters and algorithms on DSP hardware. Readers who are familiar with these DSP fundamentals should be able to skip through some of these sections. However, most notations used throughout the book will be defined in this chapter.
 In Chapter 4, the Fourier series, the Fourier transform, the r-transform, and th discrete Fourie transforms are introduced. Frequency analysis is ex-tremely helpful in understanding the characteristics of both signals and systems. Chapter 5 is focused on the design, implementation, and application of FIR filters; digital IIR fil-ters are covered in Chapter 6, and adaptive filters are presented in Chapter 8. The development, implementation, and application of FFT algorithms are introduced in Chapter 7.
In Chapter 9, we introduce some selected DSP applications in communications that have played an important role in the realization of the systems. As with any book attempting to capture the state of the art at a given time, there will necessarily be omissions that are ne-cessitated by the rapidly evolving developments in this dynamic field of exciting practical interest. We hope, at least, that this book will serve as a guide for what has already come and as an inspiration for what will follow.
 To aid teaching of the course a Solution Manual that presents detailed solutions to most of the problems in the book is available from the publisher.

 Availability of Software
The MATLAB, C, and assembly programs that imple-ment many DSP examples and applications are listed in the book.
 These programs along with many other programs for DSP implementations and lab experiments are available in the software package at eeetMu.edu/ faculty/kuo/ books/rtdsp.html. Several realworld data files for some applications introduced in the book also are included in the software package.
 The list of files in the software package is given in Appendix D. It is not critical you have this software as you read the book, but it will help you to gain insight into the implementation of DSP algorithms, and it will be required for doing experiments at the last section of each chapter.
 Some of these experiments involve minor modification of the example code. By examining, studying and modifying the example code, the software can also be used as a prototype for other practical applications. Every attempt has been made to ensure the cor-rectness of the code. We would appreciate readers bringing to our attention (kuo@ceet.niu.edu) any coding errors so that we can correct and update the codes avail-able in the software package on the web.

 Acknowledgments
We are grateful to Maria Ho and Christina Peterson at Texas Instruments, and Naomi Fernandes at Math Works, who provided the necessary support to write the book in a short period. The first author thanks many of his students who have taken his DSP courses, Senior Design Projects, and Master Thesis courses. He is indebted to Gene Frentz, Dr. Qun S. Lin, and Dr. Panos Pa-pamichalis of Texas Instruments, John Kronenburger of Tellabs, and Santo LaMantia of Shure Brothers, for their support of DSP activities at Northern Illinois University.
 He also thanks Jennifer Y. Kuo for the proofreading of the book. The second author wishes to thank Robert DeNardo, David Baughman, and Chuck Brokish of Texas Instruments, for their valuable inputs, help, and encouragement during the course of writing this book. We would like to thank Peter Mitchell, editor at Wiley, for his support of this project. We also like to thank the staff at Wiley for the final preparation of the book. Finally, we thank our parents and families for their endless love, encourage ment, and the understanding they have shown during the whole time.

Nhận xét

Bài đăng phổ biến từ blog này

sách giáo trình công nghệ thông tin pdf doc - sách tham khảo

[-] Mục Lục 1 kế toán doanh nghiệp với visual basic https://ambn.vn/product/35662/ke-toan-doanh-nghiep-voi-visual-basic.html Những kiến thức cơ bản về kế toán như biểu mẫu, báo cáo, sổ sách chứng từ kế toán đã được trình bầy ở những bộ sách trước cùng tác giả, và coi như ở tập sách này là bạn đã nắm rõ về microsoft access và visual basic. Trong sách này, sẽ hướng dẫn bạn thêm khi thiết kế các giao diện nhập dữ liệu, xử lý và báo cáo trong chương trình kế toán, hiểu rõ những kỹ thuật và công cụ lập trình nâng cao và dễ dàng thiết kế thành công một chương trình quản lý kế toán doanh nghiệp bằng Visual Basic 2. lập trình cơ sở dữ liệu visual basic sql server https://ambn.vn/product/35577/lap-trinh-co-so-du-lieu-visual-basic-sql-server.html Cuốn sách này cung cấp cho người học những thông tin chi tiết cảu các công cụ kỹ thuật hiện nay như ADO, ADO MD và ADOX, MSDE, .. SQL Namespace.. Mục tiêu cuốn sách là cung cấp các kiến thức ở mức độ chuyên sâu những công cụ mà kết hợp giữa

Đề tài: Hoạt động marketing của công ty cổ phần bút bi Thiên Long

Đề tài: Hoạt động marketing của công ty cổ phần bút bi Thiên Long Mục Lục Lời mở đầu Chương I : Phân tích kết quả kinh doanh của công ty cổ phần tập đoàn Thiên Long I. Kết quả kinh doanh của công ty cổ phần tập đoàn Thiên Long trong thời gian qua II.Đánh giá hoạt động marketing của công ty cổ phần tập đoàn Thiên Long thời gian qua Chương II : Phân tích môi trường marketing của công ty cổ phần tập đoàn Thiên Long I. Phân tích môi trường marketing vĩ mô II.Phân tích môi trường marketing vi mô III. Phân tích môi trường marketing nội bộ IV. Phân tích swot Chương III. Phân đoạn thị trường của công ty cổ phần tập đoàn Thiên Long với sản phẩm bút bi Thiên Long I. Vị trí hiện tại của doanh nghiệp II. Xác định đối tượng khách hàng hay thị trường cần phân đoạn III. Phân chia thị trường theo những tiêu thức thích hợp IV. Đánh giá tiềm năng của các đoạn thị trường V. Lựa chọn các phương thức marketing nhằm khai thác các đoạn thị trường mục tiêu Chương IV. Xác định chiến lược M

CÁC YẾU TỐ ẢNH HƯỞNG ĐẾN KẾT QUẢ HỌC TẬP CỦA HỌC SINH TRƯỜNG PHỔ THÔNG DÂN TỘC NỘI TRỲ TỈNH CAO BẰNG

LUẬN VĂN THẠC SĨ: CÁC YẾU TỐ ẢNH HƯỞNG ĐẾN KẾT QUẢ HỌC TẬP CỦA HỌC SINH TRƯỜNG PHỔ THÔNG DÂN TỘC NỘI TRỲ TỈNH CAO BẰNG HỌC VIÊN: BẾ THỊ DIỆP – HƯỚNG DẪN KH: TS. NGUYỄN THỊ TUYẾT CHUYÊN NGÀNH: ĐO LƯỜNG VÀ ĐÁNH GIÁO TRONG GIÁO DỤC MỤC LỤC MỞ ĐẦU 1. Lý do chọn đề tài 2. Mục đích nghiên cứu của đề tài 3. Giới hạn nghiên cứu của đề tài 4. Phương pháp nghiên cứu 5. Câu hỏi nghiên cứu, giả thuyết nghiên cứu 6. Khung lý thuyết của đề tài 7. Khách thể và đối tượng nghiên cứu Chương 1: CƠ SỞ LÝ LUẬN CỦA VẤN ĐỀ NGHIÊN CỨU 1.1. TỔNG QUAN VẤN ĐỀ NGHIÊN CỨU 1.1.1. Các công trình nghiên cứu ở nước ngoài 1.1.2. Các công trình trong nước 1.2. MỘT SỐ VẤN ĐỀ LÝ LUẬN CƠ BẢN 1.2.1. Hoạt động học tập trong nhà trường 1.2.2. Loại hình nhà trường PTDTNT 1.2.3. Đặc trưng học sinh THPT DTTS 1.2.4. Các khái niệm công cụ của đề tài 1.3. KẾT LUẬN CHƯƠNG Chương 2: TỔ CHỨC NGHIÊN CỨU 2.1. PHƯƠNG PHÁP NGHIÊN CỨU 2.1.1. Tổng thể