Professional Documents
Culture Documents
Agenda
Brève présentation personnelle
Introduction
Présentation du syllabus
Projet de session
Organisation du cours
Définition et concepts
1
Qu’est-ce qu’un systèmes ordinés en temps réel
(S.O.T.R.)?
Système Ordiné ?
• Comprend un CPU, de la mémoire, un programme,
des périphériques, des E/S
Mémoire
CPU
E/S
Temps réel ?
• Obligation de répondre à un événement à l’intérieur
d’un intervalle de temps borné Temps de réponse
• Aspect temporel crucial, sinon danger
2
Problématique centrale du cours
Lo
on g
a ti l'ap iciel
pi l plic de
C om ati o
n
oir e
E nt
rée Mém
Sort U
ie
CP
Couche application
code source
Langage de programmation
Aspects logiciels
Langage + Compilateur
Système
d'exploitation
Jeu d'instructions
Langage assembleur
Couche Matérielle
Aspects matériels
3
Présentation du cours et du syllabus
Description sommaire
• Initiation aux systèmes embarqués et S.T.R
• Révision de la structure matérielle
• Performance et le temps de réponse du système
• Aspects logiciels:
Programmation de bas niveau (en C et pas d’assembleur)
Traitement des interruptions et entrées-sorties
Programmation concurrente
• Principaux éléments des noyaux en temps réel
Structure et services – Ordonnancement
• Fiabilité
Laboratoire
• Réaliser un système impliquant deux ordinateurs :
Un ordinateur PC
Un microcontrôlleur AVR de Atmel.
4
Présentation du cours et du syllabus
Objectifs
• Réaliser des systèmes satisfaisant aux contraintes
matérielles et logicielles associées au traitement des
évènements en temps réel.
• Comprendre l’opération des microcontrôleurs et des
ordinateurs utilisés dans les systèmes temps réel.
• Comprendre l’opération des systèmes d’exploitation et
savoir les utiliser dans le développement de SOTR.
• Développer et programmer un système embarqué en temps
réel qui fait fonctionner un robot mobile.
• Choisir une technique de conception sécuritaire pour les
SOTR.
Stratégie pédagogique
Contenu
5
Contenu – Séances Vs chapitres
Séance Chapitre
Évaluation
Examen partiel 25%
Cours 7 – 22 février
Examen final 30%
Laboratoire 40%
• Système embarqué (robot mobile) 20 %
• Système d’exploitation multitâches 20 %
Devoirs 5%
6
Présentation du cours et du syllabus
Références
Références
BURNS, A. et WELLINGS, A., Real-Time Systems
and Programming languages, 3e édition,
Addison-Wesley, 2000.
DOUGLASS, B.P., Doing Hard Time – Developing
Real-Time Systems with UML, Objects,
Frameworks, and Patterns, Addison-Wesley,
1999.
COTTET, F. et AL. , Ordonnancement temps réel,
Hermes Science, 2000.
7
Présentation du cours et du syllabus
Ecole de
Projet de session Technologie
Supérieure
Robot mobile
8
Projet de session
Plate-forme
matérielle :
Atmel AVR
Plate-forme logicielle :
Noyau en temps réel
Micro-C/OS-II
9
Ecole de
Projet de session Technologie
Supérieure
Module
RS232-Bluetooth Carte STK500 – ATMega32
Tx Rx D B
0 0
UART
CPU
Timer
Counter
G D 0 0
A C
M M
G D
Système microC/OS-II
10
Introduction aux STR
Signaux des
Affichage des calculs de
différents capteurs,
- position
- accéléromètres
- température
- gyroscopes CPU Commande
- commande du pilote
- des moteurs
- température
- volets.
- radar
11
Terminologie des SOTR
Exemple pratique de
temps de réponse...
12
Terminologie des SOTR (suite)
13
Terminologie des SOTR (suite)
Définition: Événement
• Signal (externe ou interne) qui permet, par ses
différents états, d'indiquer la situation ou l'évolution
d'une partie d'un système.
• Tout fait significatif pour un traitement.
Synchronisation
• Évènement synchrone (ou synchronisé) avec un signal
ou une horloge de référence
• Évènement asynchrone ne peut être prédit
interruption externe
changement d’état du registre d’un périphérique
Évènement synchrone
• Prévisible par rapport à une référence
• Ex: Pour le CPU, un événement est synchrone si on peut
prédire à quel cycle/instruction il survient
• Ex: Pour un bus de communication, la transmission de
données est synchrone si on mesure le signal en phase avec
l’horloge
Événement asynchrone
• Il ne peut pas être prédit
• Ex: Une interruption externe
• Ex: Le signal/interruption du port série
Événements cyclique
• Revient de façon périodique ou régulière
14
Qu’est-ce qu’un système embarqué (SE)?
Produit: Hunter
Thermostat
Programmable
Digital.
Microprocesseur:
4-bit
15
Exemple de système embarqué
Microprocesseurr:
8-bit Motorola 68HC05.
Produit:
NASA's Mars Sojourner Rover.
Microprocesseur:
8-bit Intel 80C85.
16
Exemple de système embarqué
Produit:
Chien robot -- Sony Aibo
Microprocesseur:
64-bit MIPS RISC.
Microprocesseur vs Microcontrôleur
Microprocesseur
• Circuit optimisé pour le traitement d'information:
Manipulation de l'information Æ calcul et E/S
• Besoin d'autres composantes spécialisées pour son
fonctionnement ( Æ "chip set" + mémoire + …)
Microcontrôleur
• Inclure des fonctions additionnelles (nécessaire au
applications) directement dans le circuit
Mémoire,horloge (timer)
Entrés/Sortie, convertisseur
17
Le règne des microprocesseurs
Number of Threads: 6 9
Read-Write Memory
2048 Bytes 512 Bytes
(RAM):
Total RAM Actually Used: 1346 Bytes (66%) 384 Bytes (75%)
18
Contraintes – Processeurs embarqués
90.0%
80.0%
70.0%
1998-1999
60.0%
1999-2000
50.0%
40.0%
30.0%
20.0%
10.0%
0.0%
Assembly C C++ Java Other
19
Utilisation des noyaux en temps réel
dans les nouveaux systèmes
100.0%
100.0%
80.0%
80.0%
60.0%
60.0%
40.0%
40.0%
20.0%
20.0%
0.0%
0.0%
4-bit
4-bit 8-bit
8-bit 16-bit
16-bit 32-bit
32-bit 64-bit
64-bit Special
Special
Par interrogation
• Cette méthode consiste à interroger chaque
périphérique pour déterminer s'il requiert
l'attention du processeur.
Par interruption
• Permet d'interrompre le travail du processeur et
Interruptions
20
Programmation concurrente
Programmation concurrente
21