: Michael Hübner, Jürgen Becker
: Michael Hübner, Jürgen Becker
: Multiprocessor System-on-Chip Hardware Design and Tool Integration
: Springer-Verlag
: 9781441964601
: 1
: CHF 133.60
:
: Elektronik, Elektrotechnik, Nachrichtentechnik
: English
: 270
: Wasserzeichen/DRM
: PC/MAC/eReader/Tablet
: PDF
The purpose of this book is to evaluate strategies for future system design in multiprocessor system-on-chip (MPSoC) architectures. Both hardware design and integration of new development tools will be discussed. Novel trends in MPSoC design, combined with reconfigurable architectures are a main topic of concern. The main emphasis is on architectures, design-flow, tool-development, applications and system design.
<
Preface6
Contents8
Chapter 1: An Introduction to Multi-Core System on Chip - Trends and Challenges10
1.1 From SoC to MPSoC10
1.2 General Structure of MPSoC11
1.2.1 Processing Elements11
1.2.2 Interconnection12
1.2.3 Power Management12
1.3 Power Efficiency and Adaptability13
1.4 Complexity and Scalability15
1.5 Heterogeneous and Homogeneous Approaches16
1.5.1 Heterogeneous MPSoC16
1.5.2 Homogeneous MPSoC17
1.6 Multi variable Optimization20
1.6.1 Static Optimization20
1.6.2 Dynamic Optimization20
1.6.2.1 Centralized Approaches21
1.6.2.2 Distributed Approaches24
1.7 Static vs Dynamic Centralized and Distributed Approaches25
1.8 Conclusion27
References28
Part I: ``Application Mapping and Communication Infrastructure´´31
Chapter 2: Composability and Predictability for Independent Application Development,Verification, and Execution32
2.1 Introduction32
2.2 Composability and Predictability34
2.2.1 Terminology34
2.2.2 Composable Resources38
2.2.3 Predictable resources41
2.2.4 Composable and predictable resources42
2.3 Processor tile45
2.3.1 Composability45
2.3.1.1 Constant task slots46
2.3.1.2 Constant OS slot47
2.3.1.3 Two-level application and task scheduling48
2.3.2 Predictability48
2.4 Interconnect49
2.4.1 Composability50
2.4.2 Predictability51
2.5 Memory tile51
2.5.1 Predictability52
2.5.1.1 Predictable SDRAM back-end52
2.5.1.2 Predictable arbitration55
2.5.2 Composability56
2.6 Experiments57
2.7 Conclusions59
References61
Chapter 3: Hardware Support for Efficient Resource Utilization in Manycore Processor Systems64
3.1 Introduction65
3.2 Learning from Network Processing Applications67
3.2.1 Commercial Network Processors68
3.2.2 Example Networking Applications69
3.2.3 The FlexPath NP Approach70
3.2.4 What Can Other Manycore Domains Learn from Network Processing?75
3.3 Learning from HPC and Scientific Computing77
3.3.1 Hierarchical Multi-Topology Networks-on-Chip77
3.3.2 Task Management81
3.3.3 Synchronization Subsystem82
3.3.4 What Can Other Manycore Domains Learn from Supercomputing?83
3.4 Learning from Bio-Inspired, Self-Organizing Systems in Nature84
3.4.1 Collective Behavior of Entities in Natural and Technical Systems84
3.4.2 Technical Realization of Self-Adaptive IP Cores86
3.4.3 What Can Manycore Domains Learn from Nature?90
3.5 Summary and Conclusions92
References93
Chapter 4: PALLAS: Mapping Applications onto Manycore95
4.1 PALLAS96
4.2 Driving Applications97
4.2.1 Content-Based Image Retrieval97
4.2.2 Optical Flow and Tracking99
4.2.3 Stationary Video Background Subtraction101
4.2.4 Automatic Speech Recognition102
4.2.5 Compressed Sensing MRI103
4.2.6 Market Value-at-Risk Estimation in Computational Finance105
4.2.7 Games106
4.2.8 Machine Translation107
4.2.9 Summary108
4.3 Perspectives on Parallel Performance109
4.3.1 Linear Scaling Not Required109
4.3.2 Measure Real Problems on Real Hardware110
4.3.3 Consider the Algorithms110
4.3.4 Summing Up111
4.4 Patterns to Frameworks111
4.4.1 Application Frameworks112
4.4.2 Programming Frameworks114
4.4.2.1 Efficiency and Portability Through Programming Frameworks114
4.4.2.2 Copperhead115
4.5 Conclusions116
4.6 Appendices117
4.6.1 Structural Patterns117
4.6.2 Computational Patterns117
4.6.3 Parallel Algorithm Strategy Patterns118
References118
Chapter 5: The Case for Message Passing on Many-Core Chips120
5.1 Metrics for Comparing Parallel Programming Models121
5.2 Comparison Framework122
5.3 Comparing Message Passing and Shared Memory123
5.3.1 Agenda Parallelism123
5.3.2 Result Parallelism124
5.3.3 Specialist Parallelism125
5.4 Architectural Implications126
5.5 Discussion and Conclusion127
References128
Part II: ``Reconfigurable Hardware in Multiprocessor Systems´´129
Chapter 6: Adaptive Multiprocessor System-on-Chip Architecture: New Degrees of Freedom in System Design and Runtime Support130
6.1 Introduction131
6.2 Background: Introduction to Reconfigurable Hardware133
6.2.1 Basic Concept of Runtime Reconfiguration133
6.2.2 Basic Concept of Runtime Reconfiguration and Classification of Configurable Granularity135
6.3 Related Work138
6.4 The RAMPSoC Approach139
6.5 Hardware Architecture of RAMPSoC142
6.6 Design Methodology of RAMPSoC144
6.7 CAP-OS: Configuration Access Port-Operating System for RAMPSoC148
6.8 Conclusions and Outlook152
References152
Part III: ``Physical Design of Multiprocessor Systems´´155
Chapter 7: Design Tools and Methods for Chip Physical Design156
7.1 Introduction157
7.2 Use of MOS Complex Gates158
7.3 Wirelength Reduction159
7.4 Power Reduction159
7.5 Layout Strategies159
7.6 Layout as a Network of Transistors161
7.7 Using ASTRAN to Help in the Synthesis of Analog Modules163
7.8 Conclusions166
References166
Chapter 8: Power-Aware Multicore SoC and NoC Design168
8.1 Introduction168
8.2 Power Estimation Models: From Spreadsheets to Power State Machines172
8.2.1 Power Models of Processors174
8.2.2 Power Models of Memory175
8.2.3 Power Models of On-Chip Interconnects176
8.2.4 Power Models for Embedded Software178
8.2.5 Power Estimation, Analysis, and Optimization Tools180
8.2.6 Standardization and Power Formats182
8.3 Power Management183