|
Hardware/Software Codesign of Embedded Systems
Lecture topics in Part I
Lecture 1: Design of embedded systems
- Characteristics of embedded applications
- The traditional design flow
- What is bad with the traditional design flow
- System-level design of embedded systems
Lecture 2: Architectures and platforms for embedded systems
- General purpose vs. application specific architectures
- Typical architectures for embedded systems
- Architecture specialization techniques
- Component and platform-based Design
- Reconfigurable Systems
Lecture 3: Modeling techniques
- Models of computations
- Synchronous finite state machines
- Time and synchrony
- Globally asynchronous locally synchronous systems
- Codesign finite state machines
- System design with the POLIS system
Lecture 4: Performance analysis and co-simulation
- Static analysis techniques
- Worst case execution analysis
- Micro-architectural modeling and analysis
- Basic co-simulation approaches
- Co-simulation of heterogeneous systems with Ptolemy
Lecture 5: Optimization techniques for design space exploration
- Optimization problems in codesign
- Heuristic techniques
- Simulated annealing
- Tabu search
- Genetic algorithms
Lecture 6: Software synthesis and code generation
- Code selection techniques
- Code selection and optimization for irregular architectures
- Optimal storage assignment for DSP architectures
- Retargetable compilers
Lecture 7: System-level power/energy optimization
- Sources of power dissipation
- System level power optimization
- Dynamic power management
- Mapping and scheduling for low energy
- Real-time scheduling with dynamic voltage scaling
Main literature:
- Ahmed A. Jerraya, Jean Mermet, editors: "System-Level Synthesis," Kluwer Academic Publishers, 1999.
- Felice Balarin et. al.: "Hardware-Software Co-design of Embedded Systems. The POLIS Approach," Kluwer Academic Publishers, 1997.
- Lecture notes.
- Selected papers.
Back to the course homepage
|
|