CSCI1600: Embedded and Real Time Software Steven Reiss Fall 2015

advertisement
CSCI1600: Embedded and
Real Time Software
Steven Reiss
Fall 2015
What is CSCI1600
Purpose: Teach how to program
embedded and real time systems.
What is an embedded system
What is a real time system
Why are they important
Why are these systems
important
Everything today has embedded
processor
How many CPUs are in a modern car?
Other examples
What are the differences
 RT/Embedded
 Traditional
 Emphasis on I/O
 User interfaces
 Predictability
 Performance
 Reliability
 Maintainability
 Fault tolerance
 Error messages
 Worst case time
 Expected time
 Control-oriented
 Data oriented
 Timing essential
 Timing unimportant
The Course
Learn the underlying concepts
Learn the underlying theory
(modeling, verification, …)
Writing embedded and real time
code
An interesting project of your choice
Course Mechanics
 Staff
 Office hours
 Assignments
 Programming/hardware homeworks
 One embedded, one real-time
 Readings
 Text: Lee & Seshia: Intro to Embedded Systems (2nd ed)
 Written homeworks
 Project
 Exam
Grading
15% for each programming
homework
45% for project
15% for final exam
10% for homeworks, participation,
etc.
Project
 Monday 9/14: Short presentation of ideas
 Monday 9/21: Initial project idea hand-in w/ budget
 Monday 9/28: Final project idea hand-in w/ budget
 Friday 10/16: Initial status reports due
 Monday 10/26: Project status presentations
 Monday 11/23: Project status reports
 Wednesday 12/4: Project presentations
 Friday 12/11: Project final hand-in
Project Ideas
 You are more creative than I am
 Pinball, model trains
 Hand-held or table-top game
 Controlling model car or helicopter
 Morse code listener
 Internet of Things: alarm clock, …
 Smart clothing
 Robotics
Hardware
 We are using Arduinos for homeworks
 Purchase your own (we have some to lend)
 We will get a shopping list of parts needed
 For final projects
Assignment
 Read chapter 1
 Take a common device in your
home/apartment/life/…
 Describe what the embedded software does and
how it might work
 You don’t have to be accurate – I’d rather you
think about how you might accomplish what it
does rather than looking up what it really does
Questions
Download