
At a Glance
No. of Pages
426
426
Dimensions(cm)
23.5 x 19.05 x 2.21
23.5 x 19.05 x 2.21
RRP $151.95
$140.75
or 4 interest-free payments of $35.19 with
 orÂShips in 5 to 7 business days
A key technology enabling fast-paced embedded media processing developments is the high-performance, low-power, small-footprint convergent processor, a specialized device that combines the real-time control of a traditional microcontroller with the signal processing power of a DSP. This practical guide is your one-stop shop for understanding how to implement this cutting-edge technology.
You will learn how to:
* Choose the proper processor for an application.
* Architect your system to avoid problems at the outset.
* Manage your data flows and memory accesses so that they line up properly
* Make smart-trade-offs in portable applications between power considerations and computational performance.
* Divide processing tasks across multiple cores.
* Program frameworks that optimize performance without needlessly increasing programming model complexity.
* Implement benchmarking techniques that will help you adapt a framework to best fit a target application, and much more!
Covering the entire spectrum of EMP-related design issues, from easy-to-understand explanations of basic architecture and direct memory access (DMA), to in-depth discussions of code optimization and power management, this practical book will be an invaluable aid to every engineer working with EMP, from the beginner to the seasoned expert.
* Comprehensive subject coverage with emphasis on practical application
* Essential assembly language code included throughout text and on CD-ROM
* Many real-world examples using Analog's popular Blackfin Processor architecture
You will learn how to:
* Choose the proper processor for an application.
* Architect your system to avoid problems at the outset.
* Manage your data flows and memory accesses so that they line up properly
* Make smart-trade-offs in portable applications between power considerations and computational performance.
* Divide processing tasks across multiple cores.
* Program frameworks that optimize performance without needlessly increasing programming model complexity.
* Implement benchmarking techniques that will help you adapt a framework to best fit a target application, and much more!
Covering the entire spectrum of EMP-related design issues, from easy-to-understand explanations of basic architecture and direct memory access (DMA), to in-depth discussions of code optimization and power management, this practical book will be an invaluable aid to every engineer working with EMP, from the beginner to the seasoned expert.
* Comprehensive subject coverage with emphasis on practical application
* Essential assembly language code included throughout text and on CD-ROM
* Many real-world examples using Analog's popular Blackfin Processor architecture
Industry Reviews
"Both the experienced system designer and the student will find value in this comprehensive work. More practical than a theoretical text, it's what an expert engineer would tell a peer embarking on the journey of embedded media processing. Notably reader-friendly for a subject this complex, this book should give anyone access to multimedia design techniques including memory partitioning, data movement, and power considerations." - Max Baron, Principal Analyst, In-Stat "This readable, practical book addresses the needs of today's embedded systems that are designed specifically to meet the computational demands and power constraints of the latest embedded audio, video and communications applications. The book spans architectures, implementations, memory issues, data flows, and sharing of processing loads, while exploring the inevitable tradeoffs that engineers must weigh in their designs." - Bill Schweber, Executive Editor, EDN Magazine "Grounded in real-world application support experience, this book provides readers with an in-depth look at embedded multimedia design and the processors that are driving the emergence of a new class of applications - from video-enabled handheld devices to control-intensive industrial imaging systems." - Sam Fuller, Vice President, R&D, Analog Devices, Inc. "You cannot go wrong buying this book. The authors have done an excellent job blending practical information about embedded media processing with general information about signal processing. If you plan to develop embedded applications that will employ video or audio information, you will find this book more than earns its keep." - Jon Titus, Senior Technical Editor, ECN
| Preface | p. xix |
| History of This Book | p. xix |
| Chapter Overviews | p. xx |
| Embedded Media Processing | p. xx |
| Memory Systems | p. xx |
| Direct Memory Access (DMA) | p. xxi |
| System Resource Partitioning and Code Optimization | p. xxi |
| Basics of Embedded Audio Processing | p. xxi |
| Basics of Embedded Video and Image Processing | p. xxi |
| Media Processing Frameworks | p. xxii |
| Power Management for Embedded Systems | p. xxii |
| Application Examples | p. xxiii |
| Acknowledgments | p. xxiii |
| Acronyms | p. xxv |
| About the Authors | p. xxix |
| What's on the CD-ROM? | p. xxxi |
| Embedded Media Processing | p. 1 |
| Why Are You Reading This Book? | p. 1 |
| So What's All the Excitement About Embedded Multimedia Systems? | p. 2 |
| A Simplified Look at a Media Processing System | p. 4 |
| Core Processing | p. 4 |
| Input/Output Subsystems-Peripheral Interfaces | p. 6 |
| Memory Subsystem | p. 11 |
| Laying the Groundwork for an EMP Application | p. 11 |
| What Kind(s) of Media Am I Dealing With? | p. 12 |
| What Do I Need to Do With the Data? | p. 12 |
| Are My System Needs Likely to Change Over Time, or Will This Be a Static System? | p. 12 |
| Is This a Portable Application? | p. 12 |
| Does my Application Require a Fixed-Point or Floating-Point Device? | p. 13 |
| How Does the Data Get Into and/or Out of the Chip? | p. 14 |
| How Do I Develop on the Processor? | p. 14 |
| Do I Need an Operating System? | p. 14 |
| What Are the Different Ways to Benchmark a Processor? | p. 15 |
| How Much Am I Willing to Spend? | p. 16 |
| OK, So What Processor Choices Do I Have? | p. 17 |
| A Look Inside the Blackfin Processor | p. 26 |
| System View | p. 27 |
| Computational Units | p. 28 |
| Memory Model | p. 29 |
| DMA | p. 30 |
| Instruction Flow | p. 30 |
| Event Handler | p. 31 |
| Protection of Resources | p. 32 |
| Programming Model | p. 32 |
| Power Management | p. 33 |
| What's Next? | p. 35 |
| Memory Systems | p. 37 |
| Introduction | p. 37 |
| Memory Spaces | p. 38 |
| L1 Instruction Memory | p. 40 |
| L1 Data Memory | p. 41 |
| Cache Overview | p. 42 |
| What Is Cache? | p. 42 |
| More Cache Details | p. 46 |
| External Memory | p. 51 |
| Synchronous Memory | p. 52 |
| Asynchronous Memory | p. 65 |
| What's Next? | p. 73 |
| Direct Memory Access | p. 75 |
| Introduction | p. 75 |
| DMA Controller Overview | p. 76 |
| More on the DMA Controller | p. 78 |
| Programming the DMA Controller | p. 80 |
| DMA Classifications | p. 92 |
| Advanced DMA Features | p. 99 |
| System Performance Tuning | p. 99 |
| External DMA | p. 100 |
| What's Next? | p. 101 |
| System Resource Partitioning and Code Optimization | p. 103 |
| Introduction | p. 103 |
| Event Generation and Handling | p. 104 |
| System Interrupts | p. 104 |
| Programming Methodology | p. 107 |
| Architectural Features for Efficient Programming | p. 108 |
| Multiple Operations per Cycle | p. 109 |
| Hardware Loop Constructs | p. 110 |
| Specialized Addressing Modes | p. 112 |
| Interlocked Instruction Pipelines | p. 116 |
| Compiler Considerations for Efficient Programming | p. 119 |
| System and Core Synchronization | p. 125 |
| Load/Store Synchronization | p. 126 |
| Ordering | p. 126 |
| Atomic Operations | p. 129 |
| Memory Architecture-The Need for Management | p. 129 |
| Memory Access Tradeoffs | p. 129 |
| Instruction Memory Management-To Cache or To DMA? | p. 131 |
| Data Memory Management | p. 132 |
| System Guidelines for Choosing Between DMA and Cache | p. 135 |
| Memory Management Unit (MMU) | p. 140 |
| Physics of Data Movement | p. 141 |
| Grouping Like Transfers to Minimize Memory Bus Turnarounds | p. 142 |
| Understanding Core and DMA SDRAM Accesses | p. 144 |
| Keeping SDRAM Rows Open and Performing Multiple Passes on Data | p. 145 |
| Optimizing the System Clock Settings and Ensuring Refresh Rates are Tuned for the Speed At Which SDRAM Runs | p. 147 |
| Exploiting Priority and Arbitration Schemes Between System Resources | p. 148 |
| What's Next? | p. 148 |
| Basics of Embedded Audio Processing | p. 149 |
| Introduction | p. 149 |
| What Is Sound? | p. 149 |
| Audio Signals | p. 151 |
| Speech Processing | p. 152 |
| Audio Sources and Sinks | p. 152 |
| Converting Between Analog and Digital Audio Signals | p. 152 |
| Background on Audio Converters | p. 155 |
| Connecting to Audio Converters | p. 156 |
| Interconnections | p. 160 |
| Dynamic Range and Precision | p. 162 |
| Numeric Formats for Audio | p. 166 |
| Audio Processing Methods | p. 174 |
| Getting Data to the Processor's Core | p. 174 |
| Block Processing versus Sample Processing | p. 174 |
| Double-Buffering | p. 174 |
| 2D DMA | p. 176 |
| Basic Operations | p. 176 |
| Signal Generation | p. 178 |
| Filtering and Algorithms | p. 178 |
| Sample Rate Conversion | p. 180 |
| Audio Compression | p. 181 |
| Speech Compression | p. 184 |
| What's Next? | p. 187 |
| Basics of Embedded Video and Image Processing | p. 189 |
| Introduction | p. 189 |
| Human Visual Perception | p. 189 |
| What's a Video Signal? | p. 191 |
| Broadcast TV-NTSC and PAL | p. 193 |
| Video Resolution | p. 193 |
| Interlaced versus Progressive Scanning | p. 194 |
| Color Spaces | p. 195 |
| Gamma Correction | p. 196 |
| Chroma Subsampling | p. 198 |
| Digital Video | p. 201 |
| ITU-R BT.601 (formerly CCIR-601) | p. 202 |
| ITU-R BT.656 (formerly CCIR-656) | p. 202 |
| A Systems View of Video | p. 206 |
| Video Sources | p. 207 |
| Video Displays | p. 214 |
| Embedded Video Processing Considerations | p. 219 |
| Video Port Features | p. 219 |
| Video ALUs | p. 223 |
| DMA Considerations | p. 227 |
| Classification of Video Algorithms | p. 229 |
| Bandwidth Calculations | p. 230 |
| Sample Video Application Walk-Through | p. 231 |
| Deinterlacing | p. 232 |
| Scan Rate Conversion | p. 233 |
| Pixel Processing | p. 234 |
| 2D Convolution | p. 235 |
| Dealing With Image Boundaries | p. 236 |
| Chroma Resampling, Gamma Correction and Color Conversion | p. 237 |
| Scaling and Cropping | p. 238 |
| Display Processing | p. 239 |
| Compression/Decompression | p. 241 |
| Lossless versus Lossy Compression | p. 242 |
| Image Compression | p. 243 |
| Video Compression | p. 245 |
| Encoding/Decoding on an EMP | p. 250 |
| What's Next? | p. 252 |
| Media Processing Frameworks | p. 253 |
| Introduction | p. 253 |
| What Is a Framework? | p. 254 |
| Defining Your Framework | p. 255 |
| The Application Timeline | p. 256 |
| Asymmetric and Symmetric Dual-Core Processors | p. 264 |
| Programming Models | p. 265 |
| Asymmetric Programming Model | p. 265 |
| Homogeneous Programming Model | p. 267 |
| Strategies for Architecting a Framework | p. 270 |
| Processing Data On-the-Fly | p. 270 |
| Programming Ease Trumps Performance | p. 273 |
| Performance-Based Framework | p. 276 |
| Framework Tips | p. 282 |
| Other Topics in Media Frameworks | p. 283 |
| Audio-Video Synchronization | p. 283 |
| Managing System Flow | p. 285 |
| Frameworks and Algorithm Complexity | p. 289 |
| What's Next? | p. 289 |
| Power Management for Embedded Systems | p. 291 |
| Introduction | p. 291 |
| A Processor's View of Power | p. 292 |
| Input Clock | p. 293 |
| Phase-Locked Loop (PLL) | p. 293 |
| Frequency, Voltage and Power | p. 294 |
| Processor Power Modes | p. 297 |
| Power Domains | p. 301 |
| Other Considerations | p. 302 |
| Voltage Regulation | p. 303 |
| Linear Regulators | p. 304 |
| Switching Regulators | p. 305 |
| Efficiency | p. 310 |
| Component Selection for Step-Down Regulators | p. 311 |
| Schottky Diode and FET Switch | p. 311 |
| Inductor Considerations | p. 312 |
| Capacitor Considerations | p. 314 |
| Switching Frequency | p. 317 |
| Calculating System Power | p. 318 |
| Average Power Dissipation | p. 318 |
| Battery Fundamentals | p. 321 |
| Primary Batteries | p. 322 |
| Rechargeable Batteries | p. 323 |
| Relative Power for External Devices | p. 326 |
| Application Examples | p. 327 |
| Introduction | p. 327 |
| Automotive Driver Assistance | p. 328 |
| Automotive Safety Systems | p. 328 |
| Lane Departure-A System Example | p. 331 |
| Baseline JPEG Compression Overview | p. 344 |
| Preprocessing | p. 344 |
| Spatial Filtering | p. 345 |
| Discrete Cosine Transform (DCT) | p. 346 |
| Quantization | p. 347 |
| Zigzag Sorting | p. 348 |
| Coding the DC Coefficients | p. 349 |
| Coding the AC Coefficients (Run-Length Coding) | p. 350 |
| Entropy Encoding | p. 350 |
| JPEG File Interchange Format (JFIF) | p. 352 |
| MPEG-2 Encoding | p. 353 |
| Motion Estimation/Compensation | p. 354 |
| Frame Types | p. 356 |
| Format Conversion | p. 357 |
| MPEG-2 Encoder Frameworks | p. 359 |
| Code Optimization Study Using Open-Source Algorithms | p. 363 |
| What Is Open Source? | p. 363 |
| Optimizing Vorbis and Speex on Blackfin | p. 366 |
| Sources and Further Reading | p. 373 |
| Chapter 1 | p. 373 |
| Chapter 2 | p. 373 |
| Chapter 3 | p. 374 |
| Chapter 4 | p. 374 |
| Chapter 5 | p. 374 |
| Chapter 6 | p. 375 |
| Chapter 7 | p. 377 |
| Chapter 8 | p. 377 |
| Chapter 9 | p. 378 |
| Index | p. 379 |
| Table of Contents provided by Ingram. All Rights Reserved. |
ISBN: 9780750679121
ISBN-10: 0750679123
Series: Embedded Technology
Published: 7th September 2005
Language: English
Number of Pages: 426
Audience: General Adult
Publisher: Butterworth-Heinemann - Newnes
Country of Publication: GB
Dimensions (cm): 23.5 x 19.05 x 2.21
Weight (kg): 0.87
Shipping
| Standard Shipping | Express Shipping | |
|---|---|---|
| Metro postcodes: | $9.99 | $14.95 |
| Regional postcodes: | $9.99 | $14.95 |
| Rural postcodes: | $9.99 | $14.95 |
How to return your order
At Booktopia, we offer hassle-free returns in accordance with our returns policy. If you wish to return an item, please get in touch with Booktopia Customer Care.
Additional postage charges may be applicable.
Defective items
If there is a problem with any of the items received for your order then the Booktopia Customer Care team is ready to assist you.
For more info please visit our Help Centre.
You Can Find This Book In
This product is categorised by
- Non-FictionComputing & I.T.Computer HardwarePersonal Computers
- Non-FictionEngineering & TechnologyEnergy Technology & EngineeringElectrical Engineering
- Non-FictionComputing & I.T.Computer ScienceImage Processing
- Non-FictionEngineering & TechnologyTechnology in GeneralEngineering in General
- Non-FictionEngineering & TechnologyElectronics & Communications EngineeringElectronics EngineeringElectronic Devices & MaterialsMicroprocessors
- Non-FictionComputing & I.T.Computer ScienceComputer Architecture & Logic Design
- Non-FictionComputing & I.T.Computer ScienceSystems Analysis & Design
- Non-FictionEngineering & TechnologyElectronics & Communications Engineering
























