real-time digital signal processing 2nd edition

666 530 0
real-time  digital  signal  processing  2nd  edition

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

www.it-ebooks.info JWBK080-FM JWBK080-Kuo March 9, 2006 19:24 Char Count= 0 Real-Time Digital Signal Processing Implementations and Applications Second Edition Sen M Kuo Northern Illinois University, USA Bob H Lee Ingenient Technologies Inc., USA Wenshun Tian UTStarcom Inc., USA iii www.it-ebooks.info JWBK080-FM JWBK080-Kuo March 9, 2006 19:24 Char Count= 0 Real-Time Digital Signal Processing Second Edition i www.it-ebooks.info JWBK080-FM JWBK080-Kuo March 9, 2006 19:24 Char Count= 0 ii www.it-ebooks.info JWBK080-FM JWBK080-Kuo March 9, 2006 19:24 Char Count= 0 Real-Time Digital Signal Processing Implementations and Applications Second Edition Sen M Kuo Northern Illinois University, USA Bob H Lee Ingenient Technologies Inc., USA Wenshun Tian UTStarcom Inc., USA iii www.it-ebooks.info JWBK080-FM JWBK080-Kuo March 9, 2006 19:24 Char Count= 0 Copyright C  2006 John Wiley & Sons Ltd, The Atrium, Southern Gate, Chichester, West Sussex PO19 8SQ, England Telephone (+44) 1243 779777 Email (for orders and customer service enquiries): cs-books@wiley.co.uk Visit our Home Page on www.wileyeurope.com All Rights Reserved. No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except under the terms of the Copyright, Designs and Patents Act 1988 or under the terms of a licence issued by the Copyright Licensing Agency Ltd, 90 Tottenham Court Road, London W1T 4LP, UK, without the permission in writing of the Publisher. Requests to the Publisher should be addressed to the Permissions Department, John Wiley & Sons Ltd, The Atrium, Southern Gate, Chichester, West Sussex PO19 8SQ, England, or emailed to permreq@wiley.co.uk, or faxed to (+44) 1243 770620. Designations used by companies to distinguish their products are often claimed as trademarks. All brand names and product names used in this book are trade names, service marks, trademarks or registered trademarks of their respective owners. The Publisher is not associated with any product or vendor mentioned in this book. This publication is designed to provide accurate and authoritative information in regard to the subject matter covered. It is sold on the understanding that the Publisher is not engaged in rendering professional services. If professional advice or other expert assistance is required, the services of a competent professional should be sought. Other Wiley Editorial Offices John Wiley & Sons Inc., 111 River Street, Hoboken, NJ 07030, USA Jossey-Bass, 989 Market Street, San Francisco, CA 94103-1741, USA Wiley-VCH Verlag GmbH, Boschstr. 12, D-69469 Weinheim, Germany John Wiley & Sons Australia Ltd, 42 McDougall Street, Milton, Queensland 4064, Australia John Wiley & Sons (Asia) Pte Ltd, 2 Clementi Loop #02-01, Jin Xing Distripark, Singapore 129809 John Wiley & Sons Canada Ltd, 22 Worcester Road, Etobicoke, Ontario, Canada M9W 1L1 Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic books. Library of Congress Cataloging-in-Publication Data Kuo, Sen M. (Sen-Maw) Real-time digital signal processing : implementations, applications and experiments with the TMS320C55X / Sen M Kuo, Bob H Lee, Wenshun Tian. – 2nd ed. p. cm. Includes bibliographical references and index. ISBN 0-470-01495-4 (cloth) 1. Signal processing–Digital techniques. 2. Texas Instruments TMS320 series microprocessors. I. Lee, Bob H. II. Tian, Wenshun. III. Title. TK5102 .9 .K86 2006 621.382  2-dc22 2005036660 British Library Cataloguing in Publication Data A catalogue record for this book is available from the British Library ISBN-13 978-0-470-01495-0 ISBN-10 0-470-01495-4 Typeset in 9/11pt Times by TechBooks, New Delhi, India Printed and bound in Great Britain by Antony Rowe Ltd, Chippenham, Wiltshire This book is printed on acid-free paper responsibly manufactured from sustainable forestry in which at least two trees are planted for each one used for paper production. iv www.it-ebooks.info JWBK080-FM JWBK080-Kuo March 9, 2006 19:24 Char Count= 0 Contents Preface xv 1 Introduction to Real-Time Digital Signal Processing 1 1.1 Basic Elements of Real-Time DSP Systems 2 1.2 Analog Interface 3 1.2.1 Sampling 3 1.2.2 Quantization and Encoding 7 1.2.3 Smoothing Filters 8 1.2.4 Data Converters 9 1.3 DSP Hardware 10 1.3.1 DSP Hardware Options 10 1.3.2 DSP Processors 13 1.3.3 Fixed- and Floating-Point Processors 15 1.3.4 Real-Time Constraints 16 1.4 DSP System Design 17 1.4.1 Algorithm Development 18 1.4.2 Selection of DSP Processors 19 1.4.3 Software Development 20 1.4.4 High-Level Software Development Tools 21 1.5 Introduction to DSP Development Tools 22 1.5.1 C Compiler 22 1.5.2 Assembler 23 1.5.3 Linker 24 1.5.4 Other Development Tools 25 1.6 Experiments and Program Examples 25 1.6.1 Experiments of Using CCS and DSK 26 1.6.2 Debugging Program Using CCS and DSK 29 1.6.3 File I/O Using Probe Point 32 1.6.4 File I/O Using C File System Functions 35 1.6.5 Code Efficiency Analysis Using Profiler 37 1.6.6 Real-Time Experiments Using DSK 39 1.6.7 Sampling Theory 42 1.6.8 Quantization in ADCs 44 References 45 Exercises 45 v www.it-ebooks.info JWBK080-FM JWBK080-Kuo March 9, 2006 19:24 Char Count= 0 vi CONTENTS 2 Introduction to TMS320C55x Digital Signal Processor 49 2.1 Introduction 49 2.2 TMS320C55x Architecture 50 2.2.1 Architecture Overview 50 2.2.2 Buses 53 2.2.3 On-Chip Memories 53 2.2.4 Memory-Mapped Registers 55 2.2.5 Interrupts and Interrupt Vector 55 2.3 TMS320C55x Peripherals 58 2.3.1 External Memory Interface 60 2.3.2 Direct Memory Access 60 2.3.3 Enhanced Host-Port Interface 61 2.3.4 Multi-Channel Buffered Serial Ports 62 2.3.5 Clock Generator and Timers 65 2.3.6 General Purpose Input/Output Port 65 2.4 TMS320C55x Addressing Modes 65 2.4.1 Direct Addressing Modes 66 2.4.2 Indirect Addressing Modes 68 2.4.3 Absolute Addressing Modes 70 2.4.4 Memory-Mapped Register Addressing Mode 70 2.4.5 Register Bits Addressing Mode 71 2.4.6 Circular Addressing Mode 72 2.5 Pipeline and Parallelism 73 2.5.1 TMS320C55x Pipeline 73 2.5.2 Parallel Execution 74 2.6 TMS320C55x Instruction Set 76 2.6.1 Arithmetic Instructions 76 2.6.2 Logic and Bit Manipulation Instructions 77 2.6.3 Move Instruction 78 2.6.4 Program Flow Control Instructions 78 2.7 TMS320C55x Assembly Language Programming 82 2.7.1 Assembly Directives 82 2.7.2 Assembly Statement Syntax 84 2.8 C Language Programming for TMS320C55x 86 2.8.1 Data Types 86 2.8.2 Assembly Code Generation by C Compiler 87 2.8.3 Compiler Keywords and Pragma Directives 89 2.9 Mixed C-and-Assembly Language Programming 90 2.10 Experiments and Program Examples 93 2.10.1 Interfacing C with Assembly Code 93 2.10.2 Addressing Modes Using Assembly Programming 94 2.10.3 Phase-Locked Loop and Timers 97 2.10.4 EMIF Configuration for Using SDRAM 103 2.10.5 Programming Flash Memory Devices 105 2.10.6 Using McBSP 106 2.10.7 AIC23 Configurations 109 2.10.8 Direct Memory Access 111 References 115 Exercises 115 www.it-ebooks.info JWBK080-FM JWBK080-Kuo March 9, 2006 19:24 Char Count= 0 CONTENTS vii 3 DSP Fundamentals and Implementation Considerations 121 3.1 Digital Signals and Systems 121 3.1.1 Elementary Digital Signals 121 3.1.2 Block Diagram Representation of Digital Systems 123 3.2 System Concepts 126 3.2.1 Linear Time-Invariant Systems 126 3.2.2 The z-Transform 130 3.2.3 Transfer Functions 132 3.2.4 Poles and Zeros 135 3.2.5 Frequency Responses 138 3.2.6 Discrete Fourier Transform 141 3.3 Introduction to Random Variables 142 3.3.1 Review of Random Variables 142 3.3.2 Operations of Random Variables 144 3.4 Fixed-Point Representations and Quantization Effects 147 3.4.1 Fixed-Point Formats 147 3.4.2 Quantization Errors 151 3.4.3 Signal Quantization 151 3.4.4 Coefficient Quantization 153 3.4.5 Roundoff Noise 153 3.4.6 Fixed-Point Toolbox 154 3.5 Overflow and Solutions 157 3.5.1 Saturation Arithmetic 157 3.5.2 Overflow Handling 158 3.5.3 Scaling of Signals 158 3.5.4 Guard Bits 159 3.6 Experiments and Program Examples 159 3.6.1 Quantization of Sinusoidal Signals 160 3.6.2 Quantization of Audio Signals 161 3.6.3 Quantization of Coefficients 162 3.6.4 Overflow and Saturation Arithmetic 164 3.6.5 Function Approximations 167 3.6.6 Real-Time Digital Signal Generation Using DSK 175 References 180 Exercises 180 4 Design and Implementation of FIR Filters 185 4.1 Introduction to FIR Filters 185 4.1.1 Filter Characteristics 185 4.1.2 Filter Types 187 4.1.3 Filter Specifications 189 4.1.4 Linear-Phase FIR Filters 191 4.1.5 Realization of FIR Filters 194 4.2 Design of FIR Filters 196 4.2.1 Fourier Series Method 197 4.2.2 Gibbs Phenomenon 198 4.2.3 Window Functions 201 www.it-ebooks.info JWBK080-FM JWBK080-Kuo March 9, 2006 19:24 Char Count= 0 viii CONTENTS 4.2.4 Design of FIR Filters Using MATLAB 206 4.2.5 Design of FIR Filters Using FDATool 207 4.3 Implementation Considerations 213 4.3.1 Quantization Effects in FIR Filters 213 4.3.2 MATLAB Implementations 216 4.3.3 Floating-Point C Implementations 218 4.3.4 Fixed-Point C Implementations 219 4.4 Applications: Interpolation and Decimation Filters 220 4.4.1 Interpolation 220 4.4.2 Decimation 221 4.4.3 Sampling-Rate Conversion 221 4.4.4 MATLAB Implementations 224 4.5 Experiments and Program Examples 225 4.5.1 Implementation of FIR Filters Using Fixed-Point C 226 4.5.2 Implementation of FIR Filter Using C55x Assembly Language 226 4.5.3 Optimization for Symmetric FIR Filters 228 4.5.4 Optimization Using Dual MAC Architecture 230 4.5.5 Implementation of Decimation 232 4.5.6 Implementation of Interpolation 233 4.5.7 Sample Rate Conversion 234 4.5.8 Real-Time Sample Rate Conversion Using DSP/BIOS and DSK 235 References 245 Exercises 245 5 Design and Implementation of IIR Filters 249 5.1 Introduction 249 5.1.1 Analog Systems 249 5.1.2 Mapping Properties 251 5.1.3 Characteristics of Analog Filters 252 5.1.4 Frequency Transforms 254 5.2 Design of IIR Filters 255 5.2.1 Bilinear Transform 256 5.2.2 Filter Design Using Bilinear Transform 257 5.3 Realization of IIR Filters 258 5.3.1 Direct Forms 258 5.3.2 Cascade Forms 260 5.3.3 Parallel Forms 262 5.3.4 Realization of IIR Filters Using MATLAB 263 5.4 Design of IIR Filters Using MATLAB 264 5.4.1 Filter Design Using MATLAB 264 5.4.2 Frequency Transforms Using MATLAB 267 5.4.3 Design and Realization Using FDATool 268 5.5 Implementation Considerations 271 5.5.1 Stability 271 5.5.2 Finite-Precision Effects and Solutions 273 5.5.3 MATLAB Implementations 275 www.it-ebooks.info [...]... Kuo, Bob H Lee and Wenshun Tian www.it-ebooks.info www.it-ebooks.info 1 Introduction to Real-Time Digital Signal Processing Signals can be divided into three categories: continuous-time (analog) signals, discrete-time signals, and digital signals The signals that we encounter daily are mostly analog signals These signals are defined continuously in time, have an infinite range of amplitude values, and... expectation 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 in digital forms This may or may not represent a current action, and the requirement for the processing result is not a function of real time Real-time signal processing places stringent... continuous-time signal The signals x(n) and y(n) in Figure 1.1 depict digital signals which are only meaningful at time instant n In this section, we first discuss how to convert analog signals into digital signals so that they can be processed using DSP hardware The process of converting an analog signal to a digital signal is called the analog-to -digital conversion, usually performed by an analog-to -digital. .. processing digital signals using digital hardware However, the analysis usually uses discrete-time signals and systems for mathematical convenience Therefore, we use the terms ‘discrete-time’ and digital interchangeably Digital signal processing (DSP) is concerned with the digital representation of signals and the use of digital systems to analyze, modify, store, or extract information from these signals Much... Experiments 633 Index 639 www.it-ebooks.info Preface In recent years, digital signal processing (DSP) has expanded beyond filtering, frequency analysis, and signal generation More and more markets are opening up to DSP applications, where in the past, real-time signal processing was not feasible or was too expensive Real-time signal processing using general-purpose DSP processors provides an effective... changing with time, especially for signals with a larger dynamic range such as human speech Once the input digital signal has been processed by the DSP hardware, the result y(n) is still in digital form In many DSP applications, we need to reconstruct the analog signal after the completion of digital processing We must convert the digital signal y(n) back to the analog signal y(t) before it is applied... schemes are used in most digital telecommunications The A-law companding scheme gives slightly better performance at high signal levels, while the μ-law is better at low levels As shown in Figure 1.1, the input signal to DSP hardware may be a digital signal from other DSP systems In this case, the sampling rate of digital signals from other digital systems must be known The signal processing techniques... stored, transferred, or reproduced many times without degrading the quality By contract, analog circuits Real-Time Digital Signal Processing: Implementations and Applications C 2006 John Wiley & Sons, Ltd www.it-ebooks.info S.M Kuo, B.H Lee, and W Tian 2 INTRODUCTION TO REAL-TIME DIGITAL SIGNAL PROCESSING will not have the same characteristics even if they are built following identical specifications... signal level until the next sample is taken www.it-ebooks.info 4 INTRODUCTION TO REAL-TIME DIGITAL SIGNAL PROCESSING Analog-to -digital converter Quantizer Ideal sampler x(t) x(nT ) Figure 1.2 x(n) Block diagram of an ADC Quantization process approximates a waveform by assigning a number for each sample Therefore, the analog-to -digital conversion will perform the following steps: 1 The bandlimited signal. .. analog-to -digital converter (ADC) The purpose of signal conversion is to prepare real-world analog signals for processing by digital hardware As shown in Figure 1.1, the analog signal x (t) is picked up by an appropriate electronic sensor that converts pressure, temperature, or sound into electrical signals For example, a microphone can be used to collect sound signals The sensor signal x (t) is amplified by an amplifier . www.it-ebooks.info JWBK080-FM JWBK080-Kuo March 9, 2006 19:24 Char Count= 0 Real-Time Digital Signal Processing Implementations and Applications Second Edition Sen M Kuo Northern Illinois University, USA Bob H. USA iii www.it-ebooks.info JWBK080-FM JWBK080-Kuo March 9, 2006 19:24 Char Count= 0 Real-Time Digital Signal Processing Second Edition i www.it-ebooks.info JWBK080-FM JWBK080-Kuo March 9, 2006 19:24 Char. 0 ii www.it-ebooks.info JWBK080-FM JWBK080-Kuo March 9, 2006 19:24 Char Count= 0 Real-Time Digital Signal Processing Implementations and Applications Second Edition Sen M Kuo Northern Illinois University, USA Bob H

Ngày đăng: 05/05/2014, 16:54

Từ khóa liên quan

Mục lục

  • Cover

  • Real-Time Digital Signal Processing: Implementations and Applications

  • ©

  • Contents

  • Preface

  • 1 Introduction to Real-Time Digital Signal Processing

  • 2 Introduction to TMS320C55x Digital Signal Processor

  • 3 DSP Fundamentals and Implementation Considerations

  • 4 Design and Implementation of FIR Filters

  • 5 Design and Implementation of IIR Filters

  • 6 Frequency Analysis and Fast Fourier Transform

  • 7 Adaptive Filtering

  • 8 Digital Signal Generators

  • 9 Dual-Tone Multifrequency Detection

  • 10 Adaptive Echo Cancelation

  • 11 Speech-Coding Techniques

  • 12 Speech Enhancement Techniques

  • 13 Audio Signal Processing

  • 14 Channel Coding Techniques

  • 15 Introduction to Digital Image Processing

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan