SOFTWARE FOR EMBEDDED SYSTEMS

 

[Labn]             indicates release of an assignment. Due date typically  coincides with next release.

[Ch n]             date by which chapter n of text T should have been read. (before class)


Please note that the schedule and exact topics of individual are subject to change. This is provided to give an overview of the class only.


Schedule

01/09 - Introduction: Overview & logistics
01/11 - Introduction: Introduction to Embedded Systems [ESP Ch1, CPS Ch1]  (ayg)
01/13 -[Lab0]

01/16  - MLK - No class
01/18 - Hardware: Fundamentals, registers, SPI  [ESP Ch2]  (ayg)
01/20 - [Lab1]

01/23 - Hardware: Microprocessors, buses, memory,  GPIO [ESP Ch3] [CPS Ch7]  (ayg)
01/25 - Hardware:   (ayg)
01/27 - [Lab2]

01/30 - Hardware: Clocks, timers, and watchdogs [CPS Ch 8]  (ayg)
02/01 - Hardware (ayg)
02/03 - Lab help session

02/06 - Hardware
02/08   Software: Interrupt vectors; interrupt masking; interrupt handlers. [ESP Ch4]
02/10 -
[Lab3)]

02/13 - Software:  Tool Support for Better Embedded Software (John Regehr)
02/15 - Software: static task scheduling, round robin architectures [ESP Ch5]
02/17 - Software: Single Program Approach, Foreground Background Systems, Multi-tasking [ESP Ch6, CPS Ch 10]

02/20 - Software: Software architectures: Cyclic executive
02/22 - Software: Real-time operating systems
02/24 - [Lab4]

02/27 - Software: Preemption and priority-based scheduling; static priority assignment; PIP v PCE [ESP Ch 7-8]
02/29 - Software: Scheduling computation in embedded and real-time operating systems [CPS Ch 11]
03/02 - [Lab5]

03/05 - [Futexes]
03/07 - Project: Challenges in Wind engineering (da)
03/09 - Project: Wind turbines: sensing and analysis  (da)  [Lab5]

          --  Spring Break --

03/19 - Software: Execution time analysis [CPS Ch 15]
03/21 - Software: Execution time analysis
03/23 - 
[Lab6]

03/26 - Software: Benchmarking (tk)
03/28 - Software: Measurements (tk)
03/30 - --

04/02 - Student presentation: [TinyOS] (jl,rh)
04/04 - Software: Monitoring (sf)
04/06 - [Final Project] 

04/09 - Student presentation: [Sensornets] (rm,ak)
04/11 - Student presentation: [PredJIT] (bs cb)
04/13 -
Student presentation: [RT-Xen] (ki, oo)

04/16 - Student presentation: [ARMor] (jg,js)
04/18 - Student presentation: [Solar] (ac,mh) 
04/20 - Student presentation: [Self-healing] (ac,et)                                    

04/23 - Student presentation: [Custom Allocation] (ns, jvha)
04/25 - Student presentation: [Lime] (rg,cn)
04/27 - Student presentation: [Reconfig] (jh,w) [Model Checking] (ng, kk)


Optional topics:

Modelling with synchronous languages (Signal, Lustre) [CPS Ch 6]

Turning-off hardware, restart times; memory protection and  memory-safe programming for MMU-less embedded systems; recursion, reentrant code

System-on-a chip: hardware architectures; I/O interfaces and pins

status LEDs; serial port; kprintf; emulation; JTAG; real-time monitors [ESP Ch10]