Week |
Monday |
Wednesday |
1
|
September 30
|
Lecture 1: Introduction and setup
|
- Course overview
- Course administration, set up
- Embedded system design, challenges
|
|
October 2
|
Lecture 2: Embedded system modeling
|
- Abstraction levels, top-down design flow
- Models of computation, system-level description languages
- Separation of concerns, computation and communication
|
|
2
|
October 7
|
Lecture 3: System modeling concepts
|
- C/C++ language foundation, data types
- Structural hierarchy
- Behavioral hierarchy, exception handling
|
|
October 9
|
Lecture 4: System modeling concepts
|
- Communication and synchronization
- Hierarchical channels and interfaces
- Time and timing constraints
|
|
3
|
October 14
|
Lecture 5: IEEE SystemC language
|
- SystemC from the ground up,
Part 1 (pages 1-25)
- Introduction and core concepts
- SystemC modeling syntax
|
|
October 16
|
Lecture 6: IEEE SystemC language
|
- SystemC from the ground up,
Part 2 (pages 25-43)
- Modules and connectivity
- Processes and events
|
|
4
|
October 21
|
Lecture 7: IEEE SystemC language
|
- SystemC from the ground up,
Part 3 (pages 44-56)
- Elaboration and simulation, SystemC scheduler
- Channels, interfaces, ports
|
|
October 23
|
Lecture 8: SLDL execution semantics
|
- Motivating examples
- Discrete event simulation algorithm
- SystemC scheduler
|
|
5
|
October 28
|
Lecture 9: Embedded system specification
|
- Top-down system design flow
- Specification modeling guidelines
- Project discussion, specification model
|
|
October 30 Nov. 6, 2pm, DBH 1300
|
Lecture 10: IEEE SystemC language
|
- SystemC from the ground up,
Part 4 (pages 57-78)
- Bus modeling
- Odds and ends
|
|
6
|
November 4
|
Lecture 11: Embedded system design flow
|
|
|
November 6
|
Lecture 12: Embedded system specification
|
- Project discussion, specification model
- Structural refinement of DUT module
- Profiling of algorithm complexity
|
|
7
|
November 11
|
Veteran's Day
|
|
|
November 13
|
Lecture 13: Embedded system design flow
|
- Specify-explore-refine methodology
- System-level communication architecture
|
|
8
|
November 18
|
Lecture 14: IEEE SystemC language
|
- Transaction Level Modeling (TLM)
- TLM in SystemC, v1.0, v2.0
- The Definitive Guide to SystemC,
TLM-2.0 (pages 1-46)
|
|
November 20
|
Lecture 15: Embedded system timing estimation
|
- Project discussion
- Performance profiling, estimation
- Pipelining and parallelization
|
|
9
|
November 25
|
Lecture 16: Embedded system optimization
|
- Performance optimization of the application example
- Pipelined platform module
- Parallelization of bottle-neck blocks
|
|
November 27
|
Lecture 17: Unified Modeling Language (UML)
|
- Project discussion
- Performance optimization, pipeline balancing
- UML 2.0 overview and examples
|
|
10
|
December 2
|
Lecture 18: RTL component modeling
|
- Hardware modeling at RTL abstraction
- Hardware and software synthesis
- RTL modules in SystemC
|
|
December 4
|
Lecture 19: Project discussion
|
- Final report: Canny case study
- Course wrap-up, future work
- Outlook: Parallel Discrete Event Simulation (PDES)
- Research: Recoding Infrastructure for SystemC (RISC)
|
|
Final
|
December 9
|
Final Exam
|
8:00-10:00am
|
|
|