|
COURSE OBJECTIVES
-
How to design an embedded system
-
How to partition a system to hardware and software
parts efficiently
-
Hardware/software Co-design concepts
TEXT BOOK
-
J. A. Fisher, P. Faraboschi
and C. Young, "Embedded Computing: a VLIW Approach to Architecture,
Compilers and Tools", Morgan Kaufmann Publishers, 2005.
-
P. Marwedel,
“Embedded System Design”, Springer, 2006.
-
F. Vahid
and T. Givargis, “Embedded System
Design: A Unified Hardware / Software Approach”, 1999.
-
Lecture notes.
-
Selected papers.
COURSE OUTLINES
-
An introduction to
embedded processing (slides)
-
Application areas
-
Embedded System
Technologies (slides)
3.1.
Processor technology
3.2.
IC technology
3.3.
Design technology
-
Custom single
purpose processor (slides)
4.1.
Control Datapath model
4.2.
FSMD
4.3.
Optimizations
4.4.
High level synthesis algorithms
-
General purpose
processor (slides)
5.1.
Architectural considerations
5.2.
An overview of VLIW and ILP
5.3.
An overview of ISA design
5.4.
Superscalar Vs. VLIW
5.5.
Rules of the compiler
5.6.
Memory architectures
-
Modeling
techniques and system design
-
System level
partitioning (slides)
7.1.
Structural partitioning
7.2.
Functional partitioning
7.3.
Automatic partitioning approaches
-
Multi-criteria
optimization (slides)
-
Design space exploration
-
Communication
synthesis (slides)
-
Specification and
representation of embedded systems
-
Embedded compiling
(slides)
12.1.
ILP compiler
12.2.
Compiling for VLIWs
12.3.
Space, time and energy tradeoffs
-
Operating system requirements
for embedded systems (slides)
13.1.
Real-time OS
13.2.
Kernel
13.3.
Multithreaded programming (slides)
-
Hardware/Software
Co-design for embedded systems (slides)
-
Formal
Verification (slides)
|