本书是经典原版书库之一,采用一种独特的量化方法来论述现代嵌入式计算系统的设计,书中根据性能、功率和能量消耗以及成本应达到的量化目标描述了在设计中亟待解决的问题,深入论述了网络、可重构系统、软硬件协同设计、安全性以及程序分析。书中包含大量现实世界中嵌入式计算应用和体系结构的实例,盖嵌入式计算领域的高级主题,比如可配置处理器、针对实时和功率损耗的软件优化、异构多处理器以及嵌入式中间件。本书对专业人员、研究人员和学生来说都是及时且非常有价值的资源。
在过去的20年中,虽然嵌入式系统仍是许多消费电子设备、工业设备和军方设备中不可见的部分,但它作为一个整体已经脱颖而出。如今,嵌入式计算不再限于简单设备控制,它已经能以高实时处理率和低能耗来执行复杂的处理任务。
本书采用一种独特的量化方法来论述现代嵌入式计算系统的设计,书中根据性能、功率和能量消耗以及成本应达到的量化目标描述了在设计中亟待解决的问题。贯穿全书的实际应用使得本书对专业人员、研究人员和学生来说都是及时且非常有价值的资源。
Wayne Wolf拥有斯坦福大学电子工程博士学位,现为普林斯顿大学电子工程教授。在1989年加入普林斯顿大学之前,他曾在AT&T贝尔实验室工作。他是IEEE和ACM会员、IEEE计算机协会核心成员以及ASEE和SPIE成员。Wolf教授于2003年获得了ASEE Frederick E.Terman奖,于2006年获得了IE
Preface
1 Embedded Computing
1.1 The Landscape of High-Performance Embedded Computing
1.2 Example Applications
1.3 Design Goals
1.4 Design Methodologies
1.5 Models of Computation
1.6 Reliability, Safety, and Security
1.7 Consumer Electronics Architectures
1.8 Summary and a Look Ahead What We Learned Further Reading Questions Lab Exercises
2 CPUs
2.1 Introduction
2.2 Comparing Processors
2.3 RISC Processors and Digital Signal Processors
2.4 Parallel Execution Mechanisms
2.5 Variable-Performance CPU Architectures
2.6 Processor Memory Hierarchy
2.7 Additional CPU Mechanisms
2.8 CPU Simulation
2.9 Automated CPU Design
2.10 Summary What We Learned Further Reading Questions Lab Exercises
3 Programs
3.1 Introduction
3.2 Code Generation and Back-End Compilation
3.3 Memory-Oriented Optimizations
3.4 Program Performance Analysis
3.5 Models of Computation and Programming
3.6 Summary What We Learned Further Reading Questions Lab Exercises
4 Processes and Operating Systems
4.1 Introduction
4.2 Real-Time Process Scheduling
4.3 Languages and Scheduling
4.4 Operating System Design
4.5 Verification
4.6 Summary What We Learned Further Reading Questions Lab Exercises
5 Multiprocessor Architectures
5.1 Introduction
5.2 Why Embedded Multiprocessors?
5.3 Multiprocessor Design Techniques
5.4 Multiprocessor Architectures
5.5 Processing Elements
5.6 Interconnection Networks
5.7 Memory Systems
5.8 Physically Distributed Systems and Networks
5.9 Multiprocessor Design Methodologies and Algorithms
5.10 Summary What We Learned Further Reading Questions Lab Exercises
6 Multiprocessor Software
6.1 Introduction
6.2 What Is Different About Embedded Multiprocessor Software?
6.3 Real-Time Multiprocessor Operating Systems
6.4 Services and Middleware for Embedded Multiprocessors
6.5 Design Verification
6.6 Summary What We Learned Further Reading Questions Lab Exercises
7 Hardware/Software Co-Design
7.1 Introduction
7.2 Design Platforms
7.3 Performance Analysis
7.4 Hardware/Software Co-Synthesis Algorithms
7.5 Hardware/Software Co-Simulation
7.6 Summary What We Learned Further Reading Questions Lab Exercises
Glossary