Modelling, Design and Analysis of Embedded System (IOPS332C, 2-1-1)

 

AUTUMN 2018-19
(Monday 9:00-11:00, Friday 9:00-10:00)

Venue: Room-5255, CC3 Building

 

 

 

 

Course Outline:

 

Module 1 : Introduction - Embedded and Cyber-Physical Systems (definitions),application areas, examples, Common characteristics,Challenges in embedded system design design flows

Module 2 : Modelling of Embedded Systems - Requirements, models of computation, Finite State Machines, Timed Automata, State Charts, Modelling of Hierarchy; Data flow modelling - Synchronous data flow, Using Matlab, Simulink, Stateflow and Labview; Petri nets: Introduction, condition/event nets, place transition nets, predicate/transition nets; Discrete Event Modelling - Verilog

Module 3: Modelling Cyber -Physical Systems Discrete-time System concepts, Discrete-time system model simulation using suitable examples, Continuous-time concepts, Continuous-time system model simulation using suitable examples,

Module 4: Design - Choosing the components HW platforms - Processors, Sensors, Actuators; Sw stack - RTOS;Scheduling Real Time control tasks

Module 5: Design - Implementation Concept of Stability and Controller Design techniques; Mapping of Applications to Multi-Processor Systems

Deadlocks : System Model, Dynamic Resource Allocation, Deadlock Characterization, Methods for Handling Deadlocks, Deadlock Prevention, Deadlock Avoidance, Deadlock Detection, Recovery From Deadlock

Module 6 : Evaluation multi-objective optimization, relevant objectives, performance evaluation (early estimation & worst case execution time analysis), prerequisite: integer linear programming, Energy and power models, thermal models, Simulation, rapid prototyping and emulation, formal verification; Optimization - ask concurrency management, floating-point, high-level loop transformations, optimizations for caches, offset assignment problem, additional compiler optimizations, dynamic voltage scaling

 

 

References:

 

1.      Peter Mardwel, Embedded System Foundations of Cyber Physical Systems Springer 2nd Edition. [Slides Available Here]

2.      E. A. Lee, Sanjit Seshia Introduction to Embedded Systems – A Cyber–Physical Systems Approach,

3.      Rajeev Alur, Principles of Cyber-Physical Systems

 

 

 

 

Important Instructions:

1.         Classes will be conducted using slide presentation as well as chalk-board. Official slide sets and miscellaneous study materials from text books will be uploaded on the web site on a regular basis.

3.         Attendance in the classes is mandatory. If the attendance of a student falls below 75%, he/she may expect a "F Grade"

4.         The course will consist of laboratory assignments and a term project. If a student does not submit the term project, his/her grade will remain as incomplete.

5.         Grading Policy :

o   20%: Mid-semester examination (closed book/notes)

o   50%: End-semester examination (closed book/notes)

o   30%: Lab assignments and term project

o   10%: Homework Assignments (open book/notes)

6.         Tutorials : Announcements for Tutorial classes will be made in the lecture classes. The lab assignments will help you build your concepts and will also prepare you for mid-sem and end-sem. You will have to explain your solution to the TAs during tutorial classes.

Announcements:

        

        

        

        

        

 

 

 

Lecture Slides: Majority of the slides have been taken from the available official slides of the book by Peter Marwedel, Tu Dortmund

 

Sl. No.

Topic

Slides

Helpful Resources

Lab Assignments

1.

Introduction

Lecture 1

Embedded System Basics

2.

Modelling Embedded Systems

Lecture 2

3.

Models of Computation : FSM

Lecture 3

4.

Models of Computation : State Charts

Lecture 4

5.

Models of Computation : Data Flow Models

Lecture 5

Tut1 : Simulink

Tut2: Stateflow

Tut3: Stateflow

6.

Models of Computation : Petrinets

Lecture 6

Tut4:Petrinets

7.

Embedded System Hardware

Lecture 7

8.

Scheduling

Lecture 8

Scheduling Periodic Tasks

9.

Evaluation

Lecture 9

10.

Application Mapping

Lecture 10