Embedded systems

Code 159II
Credits 6

Learning outcomes

Objectives
This course covers the main stages in the development of embedded systems, with emphasis on model-based development and formal methods for the analysis of system properties. We review problems and approaches related to all the stages of development including requirements analysis, system-level design, component oriented modelling, behavioural modelling, verification of properties, architecture selection and design, code generation and testing.

Syllabus
1) Model-based development of embedded Systems
a. Embedded systems and impact on modern day industrial electronics
b. Stages in the development flow, model based design.
c. Computation models for Embedded Systems: finite state machines, hierarchical FSM, timed automata, dataflows.
d. User requirements analysis, system-level testing, requirements tracking, architecture selection and analysis, component modelling, design of components, implementation of models into concurrent code, semantics preservation issues. Tools, standards and methods for system modelling.
e. Introduction to verification techniques, functional and timing analysis.
f. Automatic code generation for abstract models.
g. Testing techniques, conformance testing, concept of coverage, MC/DC coverage.
2) Embedded Systems Programming: Operating systems and wireless communication: technologies and examples-

Course structure
6 credits consisting of front lectures, exercise, laboratory and project. Exam consists in a colloquium concerning course concepts and the discussion of the project assigned to the student.