| |
| |
Preface | |
| |
| |
Acknowledgments | |
| |
| |
| |
Introduction | |
| |
| |
| |
Motivation | |
| |
| |
| |
The Advent of Multi-core Processors | |
| |
| |
| |
Multiprocessor Systems Are Not New | |
| |
| |
| |
Applications Will Need to be Multi-threaded | |
| |
| |
| |
Software Burden or Opportunity | |
| |
| |
| |
What is Embedded? | |
| |
| |
| |
What is Unique About Embedded? | |
| |
| |
Chapter Summary | |
| |
| |
| |
Basic System and Processor Architecture | |
| |
| |
Key Points | |
| |
| |
| |
Performance | |
| |
| |
| |
Brief History of Embedded Intel Architecture Processors | |
| |
| |
| |
Embedded Trends and Near Term Processor Impact | |
| |
| |
| |
Tutorial on x86 Assembly Language | |
| |
| |
Chapter Summary | |
| |
| |
Related Reading | |
| |
| |
| |
Multi-core Processors and Embedded | |
| |
| |
Key Points | |
| |
| |
| |
Motivation for Multi-core Processors | |
| |
| |
| |
Multi-core Processor Architecture | |
| |
| |
| |
Benefits of Multi-core Processors in Embedded | |
| |
| |
| |
Embedded Market Segments and Multi-core Processors | |
| |
| |
| |
Evaluating Performance of Multi-core Processors | |
| |
| |
Chapter Summary | |
| |
| |
Related Reading | |
| |
| |
| |
Moving to Multi-core Intel Architecture | |
| |
| |
Key Points | |
| |
| |
| |
Migrating to Intel Architecture | |
| |
| |
| |
Enabling an SMP OS | |
| |
| |
| |
Tools for Multi-Core Processor Development | |
| |
| |
Chapter Summary | |
| |
| |
Related Reading | |
| |
| |
| |
Scalar Optimization and Usability | |
| |
| |
Key Points | |
| |
| |
| |
Compiler Optimizations | |
| |
| |
| |
Optimization Process | |
| |
| |
| |
Usability | |
| |
| |
Chapter Summary | |
| |
| |
Related Reading | |
| |
| |
| |
Parallel Optimization Using Threads | |
| |
| |
Key Points | |
| |
| |
| |
Parallelism Primer | |
| |
| |
| |
Threading Development Cycle | |
| |
| |
Chapter Summary | |
| |
| |
Related Reading | |
| |
| |
| |
Case Study: Data Decomposition | |
| |
| |
Key Points | |
| |
| |
| |
A Medical Imaging Data Examiner | |
| |
| |
Chapter Summary | |
| |
| |
| |
Case Study: Functional Decomposition | |
| |
| |
Key Points | |
| |
| |
| |
Snort | |
| |
| |
| |
Analysis | |
| |
| |
| |
Design and Implement | |
| |
| |
| |
Snort Debug | |
| |
| |
| |
Tune | |
| |
| |
Chapter Summary | |
| |
| |
| |
Virtualization and Partitioning | |
| |
| |
Key Points | |
| |
| |
| |
Overview | |
| |
| |
| |
Virtualization and Partitioning | |
| |
| |
| |
Techniques and Design Considerations | |
| |
| |
| |
Telecom Use Case of Virtualization | |
| |
| |
Chapter Summary | |
| |
| |
Related Reading | |
| |
| |
| |
Getting Ready for Low Power Intel Architecture | |
| |
| |
Key Points | |
| |
| |
| |
Architecture | |
| |
| |
| |
Debugging Embedded Systems | |
| |
| |
Chapter Summary | |
| |
| |
| |
Summary, Trends, and Conclusions | |
| |
| |
| |
Trends | |
| |
| |
| |
Conclusions | |
| |
| |
Appendix A | |
| |
| |
Glossary | |
| |
| |
Index | |