Book description
This Expert Guide gives you the techniques and technologies in embedded multicore to optimally design and implement your embedded system. Written by experts with a solutions focus, this encyclopedic reference gives you an indispensable aid to tackling the day-to-day problems when building and managing multicore embedded systems.
Following an embedded system design path from start to finish, our team of experts takes you from architecture, through hardware implementation to software programming and debug.
With this book you will learn:
• What motivates multicore
• The architectural options and tradeoffs; when to use what
• How to deal with the unique hardware challenges that multicore presents
• How to manage the software infrastructure in a multicore environment
• How to write effective multicore programs
• How to port legacy code into a multicore system and partition legacy software
• How to optimize both the system and software
• The particular challenges of debugging multicore hardware and software
- Examples demonstrating timeless implementation details
- Proven and practical techniques reflecting the authors’ expertise built from years of experience and key advice on tackling critical issues
Table of contents
- Cover image
- Title page
- Table of Contents
- Copyright
- About the Editor
- About the Authors
- Chapter 1. Introduction and Roadmap
- Chapter 2. The Promise and Challenges of Concurrency
-
Chapter 3. Multicore Architectures
- The need for multicore architectures
- Multicore architecture drivers
- Traditional sequential software paradigms break
- Scope of multicore hardware architectures
- Basic multicore hardware architecture overview
- Specific multicore architecture characteristics
- Processing architectures
- ALU processing architectures
- Lightweight processing architectures
- Mediumweight processing architectures
- Heavyweight processing architectures
- Communication architectures
- Memory architectures
- Application specificity
- Application-specific platform topologies
- Integration of multicore systems, MPSoCs and sub-systems
- Programming challenges
- Application characteristics
- MPSoC analysis, debug and verification
- Shortcomings and solutions
- MPSoC parallel programming
- Parallel software and MPSoCs
- Summary
- References
- Chapter 4. Memory Models for Embedded Multicore Architecture
-
Chapter 5. Design Considerations for Multicore SoC Interconnections
- Introduction
- Communication activity in multicore SoCs
- Functional requirements and topologies of SoC traffic
- Performance considerations
- Interconnection networks: representation and terminology
- Bus as an SoC interconnection
- Fabric-oriented interconnects for larger SoCs
- Building blocks of scalable interconnections
- Evaluating and comparing interconnection topologies for future SoCs
- A survey of interconnection networks suitable for future SoCs
- Some practical considerations in designing interconnections
- Summary
- References
- Further reading
- Chapter 6. Operating Systems in Multicore Platforms
-
Chapter 7. System Virtualization in Multicore Systems
- What is virtualization?
- A brief retrospective
- Applications of system virtualization
- Hypervisor architectures
- Leveraging hardware assists for virtualization
- Hypervisor robustness
- I/O Virtualization
- Case study: power architecture virtualization and the freescale P4080
- Example use cases for system virtualization
- Conclusion
- References
- Chapter 8. Communication and Synchronization Libraries
- Chapter 9. Programming Languages
- Chapter 10. Tools
- Chapter 11. Partitioning Programs for Multicore Systems
-
Chapter 12. Software Synchronization
- Introduction
- Why is synchronization required?
- Problems with not synchronizing (or synchronizing badly)
- Testing for proper synchronization
- How is synchronization achieved?
- Specific conditions requiring synchronization
- Language support for implementation
- Patterns
- Side-effects of synchronization
- Hardware and OS effects on synchronization
- Problems when trying to implement synchronization
- References
- Chapter 13. Hardware Accelerators
- Chapter 14. Multicore Synchronization Hardware
- Chapter 15. Bare-Metal Systems
- Chapter 16. Multicore Debug
- Index
Product information
- Title: Real World Multicore Embedded Systems
- Author(s):
- Release date: February 2013
- Publisher(s): Newnes
- ISBN: 9780123914613
You might also like
book
Embedded Microprocessor Systems, 3rd Edition
The less-experienced engineer will be able to apply Ball's advice to everyday projects and challenges immediately …
book
Software Development for Embedded Multi-core Systems
The multicore revolution has reached the deployment stage in embedded systems ranging from small ultramobile devices …
book
Real-Time Embedded Systems
From the Foreword: "…the presentation of real-time scheduling is probably the best in terms of clarity …
book
Real-Time Embedded Systems
This book integrates new ideas and topics from real time systems, embedded systems, and software engineering …