Esigelec - Mst-Ees - Course Outline
Esigelec - Mst-Ees - Course Outline
Esigelec - Mst-Ees - Course Outline
ELECTRONIC EMBEDDED
SYSTEMS
COURSE OUTLINE 2022 - 2024
In partnership with
TABLE OF CONTENTS
A COURSE STRUCTURE
The Master’s Programme comprises:
For students with a 4-year Bachelor’s Degree minimum and with a
specialisation in Electronics / Instrumentation / Automation / Electrical
Engineering -
◌ Semester 2 – Academic (on campus)
◌ Semester 3 – Academic (on campus)
◌ Semester 4 – Internship (company/laboratory)
* 2 academic semesters in the case of students granted direct entry into the second semester,
beginning February 2023
2
Failure to meet these requirements may result in the degree not being
awarded.
B PROGRAMME OBJECTIVES
The Master’s Programme seeks to equip the students with the relevant
knowledge, professional skills and practical experience in electronic
embedded systems for industry or for research. They will learn how
to design, develop and implement electronic embedded systems in
different sectors. Students will also acquire basic managerial skills.
C ATTENDANCE POLICY
ESIGELEC views class attendance as the student’s individual
responsibility. Students are expected to comply with ESIGELEC’s
attendance policy throughout their study period. All lectures, tutorials,
practical work, projects, conferences and seminars are mandatory.
Attendance will be monitored by the faculty members at the beginning
of each class and the attendance sheet will be maintained by the
Studies Office of ESIGELEC.
4
Penalty:
Students will receive an oral warning after 5 occurrences (unjustified
absence). A stern oral warning will be given after 10 instances. 20 such
cases may lead to the student’s dismissal from ESIGELEC.
D EVALUATION
Evaluation may include tests, quizzes, presentations or other formats
as decided by the faculty members, who may also authorise the use
of reference documents or calculators, if they deem it necessary. Each
such test will be graded on a maximum mark of 20.
The jury of ESIGELEC and INSA Rouen for the Master’s Degree comprises
the President, faculty members of ESIGELEC and/or INSA Rouen, and
representatives of the managing staff of ESIGELEC and/or INSA Rouen.
This jury, chosen by the General Director of ESIGELEC, convenes up
to a maximum of four times per year, i.e. April, July, September and
December.
7
G RETAKING EXAMS
If a student has obtained less than 10/20 in one or more courses in the
academic semesters at ESIGELEC, the student will be asked to retake
one or more exams in one or more modules of the courses concerned,
as advised by the Academic Coordinator of the Master’s Programme
(even if the final overall score of the student in the Master’s Programme
is greater than 10/20).
The new average(s) of the course(s) must be greater than 10/20 to obtain
the requisite credits.
8
◌ A student who fails to clear all the ECTS credits for academic
year 1 before the end of academic year 2 will be required to redo
academic year 1 (but only the courses of academic year 1 for
which the requisite ECTS credits have not yet been obtained),
the following academic year, or will be disqualified from the
programme and will not be awarded the degree, if the student
would also be required to redo one or two semesters of academic
year 2 due to his/her scores obtained in academic year 2. Failure
to clear the 60 required ECTS credits after redoing academic
year 1 the following academic year, may result the degree not
being awarded.
A student can only redo courses of one academic year (academic year 1
or academic year 2), and can redo only once a course or the internship,
during the Master’s Programme.
In the event that the curriculum is revised and if some modules are
replaced by newer ones, students who are required to redo modules,
i.e. attend classes and appear for the exams, must do so for the new
modules.
I COURSES & ECTS CREDITS
Duration ECTS
Courses Modules Weight
(hours) Credits
Fundamentals of Data
Computer Science 1 8
Communication and 24 2
Networking
Fundamentals of Web-Centric
30 3
Development
C Programming 30 3
Bibliographical Study 12 1
Specialized Courses
Digital Electronics Project 32 3 7
for EES
Fundamentals of Electronics 30 3
Total Credits 30
Duration ECTS
Courses Modules Weight
(hours) Credits
Communication
30 2
Busses
Embedded C
30 2
programming
Embedded
Analysis & Design with 6
Software 32 2
UML
Embedded Java 30 2
Smart Sensors 30 3
Instrumentation 6
Specific
30 3
Instrumentation
French as a Foreign
Language
Communication
OR 60 4 4
& Language 2
English as a Foreign
Language
Total Credits 30
Duration ECTS
Courses Modules Weight
(hours) Credits
Android Programming 30 3
System on Chip 20 2
Embedded
DSP Processors 20 2 6
Electronics
Safety Systems 20 2
Oral Communication
14 1
& Presentation Skills
Total Credits 30
List of topics
◌ Storing information, communicating information, making
choices, creating repetitions
◌ Initiation to Object-Oriented programming
◌ From algorithms to writing functions, classes and objects, UML
classes
◌ Collecting objects (a fixed amount and undetermined amount),
using UML
16
List of topics
◌ Basics of information transmission
◌ Classical telecommunications services
◌ Integration of telecommunication services
◌ Principles of networking and protocols
◌ TCP/IP communication architecture
◌ LAN/WLAN technologies
◌ MobilityFundamentals of Web-centric Development
List of topics
◌ Introduction to the internet and World Wide Web
◌ HTML (Hypertext Markup Language)
◌ Editing and viewing HTML
◌ Headers, titles, meta-tags
◌ Special characters
◌ Lists
◌ Tables
◌ Basic forms
◌ Metatags
◌ Cascading Style Sheets
◌ Embedded Anchors, Images, Links, Objects
◌ Dynamic web pages with PHP
◌ Introduction to javascript
List of topics
◌ Basic concepts of probability:
◌ Number representation
◌ Fundamentals of Boolean algebra
◌ Construction of elementary gates
18
LabView
Module Code: MSTEE15 Duration: 30h
Objectives
◌ Design a program with LabVIEW for an electrocardiogram that
monitors real and “noisy” data. This program must:
◌ respect design standards
◌ use standard programming and signal processing tools seen in
the 2nd year
◌ The application must respect standard LabVIEW practices
(taken from the Certified LabVIEW Developer (CLD) test) and use
a modular and evolving architecture
List of topics
◌ Fundamental programming notions in LabVIEW
◌ LabVIEW programming
◌ Creating an interface
◌ Learning good LabVIEW practices for form and structure in
programming
C Programming
Module Code: MSTEE10 Duration: 30h
Objectives
At the end of this module, students will be able to write and develop a
programme in C language, using:
◌ Functions: definitions, interests, prototypes
◌ 1 & 2 D arrays: syntax, use, parameters
◌ String functions: manipulating chains of characters
◌ Pointers: syntax, manipulation, using them correctly
◌ Structures: syntax, manipulation, establishing parameters
◌ Binary and text files: manipulation and relation to structures
◌ Dynamic allocation
19
List of topics
◌ Algorithms, processors, fundamentals, environment and
variables
◌ Simplified architecture of a computer
◌ C Language: programming structure, declarations, control
structures (if, switch, while, do while, for), entries / exits (printf,
scanf, fflush role)
◌ Environment for development
◌ 1D arrays
◌ Review of general notions for arrays, functions, character chains,
structures, pointers, dynamic allocation, files
List of topics
◌ Modern leadership models and their application
◌ The influence of national cultures on leadership
◌ The building and management of international, multi-
discipline, remote and virtual teams
Bibliographical Study
Module Code: MSTEE40 Duration: 12h
Objectives
At the end of the module, students will be able to :
◌ Learn to create and conduct a short oral presentation on a
technical topic given to them at the beginning of the semester
◌ Acquire basic skills and methods on searching for information
and oral presentations
◌ Enhance their skills to search for information and conduct oral
presentations
◌ Learn to deliver an effective oral presentation in order
demonstrate their understanding of the subject
List of topics
◌ Team working
◌ Information searching
◌ Oral presentation
Objecives
At the end of the module, students will be able to:
◌ Acquire basic practical skills in Digital Electronics
◌ Familiarise themselves with a real-world situation similar to that
of future professional environments
◌ Acquire skills to exercise their initiative and independence
◌ Improve their organizational, interpersonal and communication
skills
◌ Acquire time management skills
21
Fundamentals of Electronics
Module Code: MSTEE13 Duration: 30h
Objectives
At the end of this module, students will be able to:
◌ Put together an electrical circuit in the form of a four-terminal
network (transmit gain, input / output impedance)
◌ Transcribe a situation into a simulation diagram
◌ Choose the type of analysis (polarisation or time-frequency
analysis)
◌ Identify function block diagrams
◌ Design a cabling schema from a given electric schema (using
BNC connectors correctly)
◌ Measure voltage using oscilloscopes, multimeters and dB
meters
◌ Create various wave forms, recognize them using an
oscilloscope and change settings
◌ Measure input/output impedance
◌ Measure frequency response
◌ Interpret results of the aforementioned measurements
◌ Use Excel to plot graphs and schemas
List of topics
◌ Electrical circuits
◌ Simulation schema
◌ Block diagrams
◌ Cabling and electric schema
◌ Measurement
◌ Generation of various signals
◌ Generation of plot graphs
22
Microprocessors
Module Code: MSTSEE21 Duration: 60h
Objectives
At the end of this module, students will be able to:
◌ Understand the architecture of microprocessors
◌ Program microprocessors
◌ Study the evolution of their architecture
List of topics
◌ Microprocessor architecture (ALU, control unit, registers, buses)
◌ Data and processors (address decoding, synchronization)
◌ Vital signals of processors (clocks, power supply, reset)
◌ Microprocessor programming (languages, registers, addresses,
instructions)
◌ Execution time, routines, passing parameters
◌ Principles and how exceptions/interruptions work
◌ Inputs/outputs
◌ Case study (MSP430)
Objectives
At the end of this module, students will be able to:
◌ Program logic devices (PLD)
◌ Develop programs using VHDL language
List of topics
◌ Review of combinatory and sequential logic
◌ The different families of programmable logic devices
◌ Practice with synthesis tools (Xilinx or Altera targets, Quartus or
ISE tools, Modelsim)
Communication Busses
Module Code: MSTSEE23 Duration: 30h
Objectives
23
List of topics
◌ RS-485
◌ I2C BUS, SPI BUS
◌ CAN BUS
◌ ARINC bus
Objectives
At the end of this module, the students will be able to:
◌ Understand why real-time executive is used in embedded
systems
◌ Describe the four major categories of services provided by an
executive
◌ Describe the necessary required materials to implement an
executive in real-time
◌ Learn the various commercial aspects of executive suppliers
◌ Describe the role of scheduling, how it works and the major
variations
◌ Calculate task times for simple situations
◌ List attribution rules for task priority
◌ Describe how the principle elements for synchronization are
presented in executives
◌ Describe the characteristics and how an email inbox works
◌ Design and develop a simple multitasking application with
MicroC / OSI
24
List of topics
◌ Fundamentals of multitasking and real-time
◌ A scheduler: its role and how it works
◌ Why real-time executives are used in embedded systems
◌ Necessary materials
◌ Categories of executives and their markets
◌ A real-time kernel: MicroC/OSII (Micro-Controller Operating
Systems Version 2)
◌ Memory management
◌ Intertask communication and synchronization tools
◌ Using MicroC/OSII and microcontrollers
Embedded Linux
Module Code: MSTSEE25 Duration: 30h
Objectives
At the end of the module, the students will be able to:
◌ Understand the possibilities and uses of the Linux kernel for an
embedded IT project.
◌ Learn the principle software tools used in the Linux/Unix world
and how to use them to develop.
◌ Write a device driver for specific Linux run material
◌ Combine tools to create advanced functions with a minimum
of programming
List of topics
◌ Introduction to Linux.
◌ How an OS fits in an embedded system.
◌ History of Linux and Unix systems.
◌ Linux compared to other embedded operating systems.
◌ Fundamental tools: command lines, shell scripts.
◌ Linux development tools.
◌ C programming with embedded systems.
◌ Linux drivers.
◌ Web connections and Remote Administration Tools (RATs).t
25
Embedded C Programming
Module Code: MSTSEE26 Duration: 30h
Objectives
At the end of this module, students will:
◌ Be familiar with the C coding practices for embedded systems
◌ Be familiar with the elements and tools for embedded software
validation
◌ Develop, write and test a C language program (as per design
specifications) to be used with a microprocessor with respect of
good practices like MISRA-C rules
◌ Analyse and enumerate the various phases of development for
a software project: the V cycle
List of topics
◌ Specificities of C Language for embedded systems (variables,
memory organization, physical address access, etc.)
◌ Programming methods
◌ Software analysis and validation tools and principles for
embedded systems
Objectives
At the end of this module students will be able to:
◌ Be familiar with the process for designing software applications,
with a special focus on the Unified Modelling Language (UML)
and Java as design tools
◌ Be familiar with the major steps in software design, including
the development of user requirements, specifications, data
bases, user interfaces, and software models
26
List of topics
◌ Overview of software design: challenges, accomplishments, and
failures
◌ Overview of software lifecycle model and its variants
◌ Overview of object oriented design – Java classes, objects,
inheritance, associations
◌ Requirements analysis and use case design – UML use case and
sequence diagrams
◌ Class design – UML class diagrams
◌ Modeling activities and interactions – UML activity and state
diagrams
Embedded Java
Module Code: MSTSEE27 Duration: 30h
Objectives
At the end of this module, students will:
◌ Be familiar with a computer language which can be used to
develop graphic applications under Windows for personal
embedded systems like Pocket PCs
List of topics
◌ Java ME environment: interface and syntax
◌ Basics of programming in the Java ME environment
Smart Sensors
Module Code: MSTSEE32 Duration: 30h
Objectives
At the end of this module, students will:
◌ Be familiar with the principles and the advantages of smart
sensors through different applications
27
List of topics
◌ Sensors and interfacing circuits
◌ Applications of smart sensors
◌ Architecture and components of smart sensors
◌ Practice with smart sensors
Specific Instrumentation
Module Code: MSTSEE29 Duration: 30h
Objectives
At the end of this module, students will be able to:
◌ Manage the entire information sampling chain in an
instrumentation-type embedded system
List of topics
◌ The measurement chain: physical signal to digital processing
◌ Sensors: types, technology
◌ Signal conditioning: transport, filtering, amplification
◌ Sampling: period, response time
◌ Information security: accuracy, lifetime, redundancy
MtoM Communication
Module Code: MSTSEE31 Duration: 30h
Objectives
At the end of this module, students will:
◌ Be familiar with the principles of communication between
machines, needing no human action
List of topics
◌ Sensors and servers
◌ Cellular networks
◌ Applications
◌ Protocols of MtoM communication
28
Objectives
The Python language is today, one of the most useful programming
tool for engineers and is used in several applicative areas including
embedded systems. The objective of this elective is to understand the
environment, the tools and the scope of this language.
List of topics
◌ Python Development Environment
• Python distribution and their installation
• Python as a script language
• Python as a programming language
• Interactive Python (Jupiter-notebook)
• Comparison with other programming languages
• Installing important libraries (PIP)
◌ Python Basics
• The first program
• Docstrings
• Blocks and indentation
• First Control structures
◌ Simple data types and expressions
• Boolean
• Integer
• Float
• Complex numbers
• Strings
• Bytes
◌ More data types
• Lists
• Tuples
• Sets
• Dictionaries
• Strings
• Numpy
• Arrays
29
◌ Control structures
• Loops
• Alternatives
• Exceptions
◌ Comprehension and slicing
◌ Object oriented Python
• Class definition
• Class instantiation
• Generators and iterators
◌ Files
• Files
• Serialization
• Important file formats
◌ Specialized topics (optional)
• Writing and installing your own libraries
• Regular expressions
Android Programming
Module Code: MSTSEE32 Duration: 30h
Objectives
At the end of this module, students will be able to:
◌ Understand the challenges and possibilities of mobile platforms
◌ Use the Android development environment
◌ Create a user interface
◌ Develop communication applications
◌ Develop an application using persistent data
◌ Develop a multimedia application
◌ Develop an application that works with Googlemaps
◌ Make and publish an Android application
30
List of topics
◌ Embedded applications, possibilities, Android SDK
◌ Using views, creating advanced user interfaces
◌ Intent classes
◌ Persistent data
◌ Multimedia
◌ Geolocalisation
◌ Publishing Embedded applications, possibilities, Android SDK
◌ Using views, creating advanced user interfaces
◌ Intent classes
◌ Persistent data
◌ Multimedia
◌ Geolocalisation
◌ Publishing
System on Chip
Module Code: MSTSEE33 Duration: 20h
Objectives
At the end of this module, students will understand and be able to
implement a complete embedded system on a chip (SoC)
List of topics
◌ Main components of SoC systems
◌ Related embedded solutions on chips
◌ Defining an intellectual property tool
◌ Integration of a solution
◌ Xilinx Spartan or Microsemi SmartFusion components
DSP Processors
Module Code: MSTSEE34 Duration: 20h
Objectives
At the end of this module, students will:
◌ Be familiar with the main DSP (digital signal processing)
algorithms and their impact on DSP architecture
31
List of topics
◌ Sampling, convolution
◌ Linear filtering
◌ Fourier transforms
◌ STM32F407VG ARM based processor
Safety Systems
Module Code: MSTSEE35 Duration: 20h
Objectives
At the end of this module, students will:
◌ Understand the role EMC phenomena play in the field of
embedded systems, by studying automotive examples
List of topics
◌ EMC (Electromagnetic Compatibility) issues for electronics
◌ Cause and effect
◌ Prevention and solutions
◌ The automotive field: an overview
Objectives
At the end of this module students will:
◌ Have a clear model of what constitutes successful and
unsuccessful presentations
◌ Have practiced giving formal presentations in English.
◌ Be more aware of their own downfalls when presenting
List of topics
◌ Methods for putting together an oral presentation
◌ Practice
32
Project Management
Module Code: MSTPM Duration: 26h
Objectives
At the end of this module students will be able to:
◌ Appreciate the need for project management including formal
methods, as a recognised discipline
◌ Appreciate the need for effective planning, control and delivery
mechanisms
◌ Understand the complexities of different types of computing
projects and some of the methods used to manage them
◌ Apply some of the skills and knowledge learned in any future
project (including during other module(s) of this course, and, in
particular, documentation for development project)
List of topics
◌ What is a project? The need for PM, formal methods
◌ Managing large, complex, international projects
◌ Un peu de franglais (PM culture and language in English and in
French)
◌ Management of projects, project life cycle, roles of the project
manager and stakeholders
◌ Stakeholder management, scope, creep
◌ Work planning, project breakdown structures and estimating
◌ Resource planning, estimating, management
◌ Risk identification, analysis, management
◌ PERT and Gantt charts, their use and shortcomings
◌ PM planning tools (including practical sessions with MS Project)
◌ Change control, documentation, configuration management
◌ Project control, quality, documentation, delivery management
◌ Project closure; maintenance projects
◌ Types of computing projects and risks; computing PM methods
◌ Cost-benefit analysis and project accounting may be touched
upon, but are not in the scope of this course
33
Objectives
At the end of this module students will be able to:
◌ Improve their organizational skills (within a team, facing
deadlines) and manage their time
◌ Improve their communication skills
◌ Work in a real-world situation close to their future professional
environments
◌ Filter and identify relevant online information according to a
targeted subject
◌ Constitute a bibliographical study
◌ Develop functional specifications and success strategies
◌ Estimate the workload of each identified task
◌ Analyse their production capacity
◌ Design and build computer applications with current standards
and new opportunities
◌ Integrate research approaches
◌ Evaluate the quality level for a developed application
◌ Present their work and justify the outcome
List of topics
◌ State of the art practices
◌ Technical / feasibility studies
◌ Research methodologies and approaches
◌ Information processing
◌ Experimental results and evaluation
34
Objectives
At the end of this module students will be able to:
◌ Oral comprehension
• Understand standard French used in everyday situations at
work, school, etc.
◌ Written comprehension
• Understand texts written in standard French used in everyday
situations such at work, school, etc.
◌ Oral expression
• Participate in a regular day-to-day conversation on familiar
topics
• Ask and exchange information
• Prepare and give a short formal presentation
◌ Written expression
• Write short, clear and coherent texts on familiar / everyday
situations with basic grammar and vocabulary
List of topics
◌ Revision of grammar and vocabulary
◌ Preparation for the Test of French Language (TCF or TEF)
35
Objectives
At the end of this module students will be able to:
◌ Oral comprehension
• Understand standard English used in everyday situations at
work, school, etc.
◌ Written comprehension
• Understand texts written in standard English used in
everyday situations such at work, school, etc.
◌ Oral expression
• Participate in a regular day-to-day conversation on familiar
topics
• Ask and exchange information
• Prepare and give a short formal presentation
◌ Written expression
• Write short, clear and coherent texts on familiar / everyday
situations with basic grammar and vocabulary
List of topics
◌ Revision of grammar and vocabulary
◌ Preparation for the Test of English for International
Communication (TOEIC)
36
37
The professional thesis (2 hard copies by post and 1 soft copy in Word
or pdf via intranet) must be submitted to ESIGELEC at least 3 weeks
before the oral presentation before a Jury comprising of a President
(from ESIGELEC or INSA Rouen), one faculty member from ESIGELEC
or INSA Rouen and the industrial tutor (if possible). This presentation
must be done within four months, at the latest, of completion of the
internship. The total duration of the oral presentation will be of 60
minutes (30 min. presentation + 15 min. Q&A + 15 min. deliberation
among jury members).
The Board of Studies, which meets at least once a year, also ensures
that the course content and laboratories are streamlined in keeping
with the changing industry requirements. A meeting between the
Academic Coordinator of the Master’s Programme and all faculty
members is convened at the end of each module, to assess the relevance
of the content, equipment and issues which may have occurred while
delivering the module.
School of Engineering
Supported by the Chamber of Commerce and Industry of Rouen
ESIGELEC
Technopôle du Madrillet
Avenue Galilée BP10024
76801 Saint-Etienne du Rouvray - France
Phone: +33 (0)2 32 91 58 58 | Fax: +33 (0)2 32 91 58 59
www.esigelec.fr