COMPLIANCE DESIGN OF AUTOMOTIVE SYSTEMS M
cod. 1008152

Academic year 2019/20
2° year of course - First semester
Professor
Academic discipline
Convertitori, macchine e azionamenti elettrici (ING-IND/32)
Field
A scelta dello studente
Type of training activity
Related/supplementary
54 hours
of face-to-face activities
6 credits
hub:
course unit
in ENGLISH

Learning objectives


The course aims at providing knowledge about the development of embedded systems for automotive applications. The main focus lays in the firmware. The course will provide knowledge in:
• Requirements for automotive electronics systems
• Design and testing of embedded code
• Advanced information about embedded architectures
• Tools to support automatic testing and synthesis of embedded code

Prerequisites


Notions of power circuits and systems, embedded and digital systems srchitecture, Matlab fundamentals.

Course unit content


Analysis, design and development of embedded systems for the automotive field.

Full programme


--- Lecture #01 (3 hrs): Software engineering (I) ---
* Abstraction levels and system partitioning
* V-model
* The building system
o Preprocessor
o Compiler
o Linker
o Optimizer
o Makefiles

--- Lecture #02 (3 hrs): Software engineering (II) ---
* Testing
o Unit testing
o Static code analysis
o Code coverage
* Documentation

--- Lecture #03 (3 hrs): Version Control Systems (VCSs) ---
* Centralized VCSs (SVN)
* Distributed VCSs (GIT)
* Versioning
* Branch/tag
* Merge and lock

--- Lecture #04 (3 hrs): Standards ---
* Coding standards
* Safety standards
* Automotive standards
* ISO/OSI model

--- Lecture #05 (3 hrs): Communication protocols ---
* Generalities
* CAN
* CANopen
* J1939

--- Lecture #06 (3 hrs): Real-Time Tasks ---
* RTOS
* Drivers
* Middleware
* Interrupt management

--- Lecture #07 (3 hrs): Real-Time computation (I) ---
* Numerical analysis
* Recurring execution

--- Lecture #08 (3 hrs): Real-Time computation (II) ---
* State machines
* Benchmarking

--- Lecture #09 (3 hrs): MATLAB for EP (I) ---
* Fitting and interpolation
* Optimization

--- Lecture #10 (3 hrs): MATLAB for EP (II) ---
* Unit testing and "automatic" test-benches
* Model-based design
* System validation with MIL/SIL/PIL/HIL

--- Lecture #11 (3 hrs): Complementary topics ---
* Watchdog
* Semaphores and locks
* Memory management
* Error management

--- Lecture #12 (3 hrs): Bootloaders ---
* Levels and stages
* Memory requirements
* Interrupt vector rewriting
* OpenBLT example
* Native bootloader examples

--- Laboratory #13 (3 hrs): Project description and assignment ---

--- Laboratory #14 (3 hrs): Project Design ---

--- Laboratory #15 (3 hrs): Tutorial Automatic code generation ---

--- Laboratory #16 (3 hrs): Tutorial Unit testing and code analysis ---

--- Laboratory #17 (3 hrs): Tutorial SIL/PIL/HIL verification ---

--- Laboratory #18 (3 hrs): Project application ---

Bibliography


Lecture notes, standards and documentation of the software used.

Teaching methods


Lectures and team laboratory activity

Assessment methods and criteria


Report on the laboratory activity and oral examination.
At the end of the laboratory activities each team of students must deliver a written report. After receiving an evaluation of their report, the students can individually take the oral examination.
The result of the oral examination accounts for 2/3 of the final mark, while the laboratory activity accounts for 1/3.

Other information

- - -