Over the past several years, embedded systems have emerged as an integral though unseen part of many consumer, industrial, and military devices. The explosive growth of these systems has resulted in embedded computing becoming an increasingly important discipline. The need for designers of high-performance, application-specific computing systems has never been greater, and many universities and colleges in the US and worldwide are now developing advanced courses to help prepare their students for careers in embedded computing.
High-Performance Embedded Computing: Architectures, Applications, and Methodologies is the first book designed to address the needs of advanced students and industry professionals. Focusing on the unique complexities of embedded system design, the book provides a detailed look at advanced topics in the field, including multiprocessors, VLIW and superscalar architectures, and power consumption. Fundamental challenges in embedded computing are described, together with design methodologies and models of computation. HPEC provides an in-depth and advanced treatment of all the components of embedded systems, with discussions of the current developments in the field and numerous examples of real-world applications.
Covers advanced topics in embedded computing, including multiprocessors, VLIW and superscalar architectures, and power consumption
Provides in-depth coverage of networks, reconfigurable systems, hardware-software co-design, security, and program analysis
Includes examples of many real-world embedded computing applications (cell phones, printers, digital video) and architectures (the Freescale Starcore, TI OMAP multiprocessor, the TI C5000 and C6000 series, and others)
Author(s): Wayne Wolf
Edition: 1
Publisher: Morgan Kaufmann
Year: 2006
Language: English
Pages: 542
About the Author......Page 5
Title page......Page 6
Copyright page......Page 7
Supplemental Materials......Page 9
Table of contents......Page 10
Preface......Page 18
1.1 The Landscape of High-Performance Embedded Computing......Page 22
1.2 Example Applications......Page 26
1.3 Design Goals......Page 42
1.4 Design Methodologies......Page 43
1.5 Models of Computation......Page 54
1.6 Reliability, Safety, and Security......Page 67
1.7 Consumer Electronics Architectures......Page 75
1.8 Summary and a Look Ahead......Page 81
2.1 Introduction......Page 86
2.2 Comparing Processors......Page 87
2.3 RISC Processors and Digital Signal Processors......Page 90
2.4 Parallel Execution Mechanisms......Page 98
2.5 Variable-Performance CPU Architectures......Page 107
2.6 Processor Memory Hierarchy......Page 110
2.7 Additional CPU Mechanisms......Page 120
2.8 CPU Simulation......Page 147
2.9 Automated CPU Design......Page 153
2.10 Summary......Page 171
3.1 Introduction......Page 176
3.2 Code Generation and Back-End Compilation......Page 177
3.3 Memory-Oriented Optimizations......Page 191
3.4 Program Performance Analysis......Page 206
3.5 Models of Computation and Programming......Page 218
3.6 Summary......Page 239
4.1 Introduction......Page 244
4.2 Real-Time Process Scheduling......Page 245
4.3 Languages and Scheduling......Page 262
4.4 Operating System Design......Page 268
4.5 Verification......Page 280
4.6 Summary......Page 285
5.1 Introduction......Page 288
5.2 Why Embedded Multiprocessors?......Page 290
5.3 Multiprocessor Design Techniques......Page 296
5.4 Multiprocessor Architectures......Page 300
5.5 Processing Elements......Page 309
5.6 Interconnection Networks......Page 310
5.7 Memory Systems......Page 325
5.8 Physically Distributed Systems and Networks......Page 333
5.9 Multiprocessor Design Methodologies and Algorithms......Page 347
5.10 Summary......Page 353
6.2 What Is Different about Embedded Multiprocessor Software?......Page 358
6.3 Real-Time Multiprocessor Operating Systems......Page 360
6.4 Services and Middleware for Embedded Multiprocessors......Page 382
6.5 Design Verification......Page 397
6.6 Summary......Page 399
7.1 Introduction......Page 404
7.2 Design Platforms......Page 405
7.3 Performance Analysis......Page 408
7.4 Hardware/Software Co-synthesis Algorithms......Page 417
7.5 Hardware/Software Co-simulation......Page 449
7.6 Summary......Page 451
Glossary......Page 454
References......Page 488
Index......Page 522