3. 3
Un système embarqué peut être défini comme un système
électronique et informatique (autonome), intégré dans un
équipement matériel, qui répond à une tâche bien précise. Tout système
conçu pour résoudre un problème ou une tâche spécifique / dédié mais
n’est pas un ordinateur d’usage classique ou général.
Il s'agit d'un système intégré au sein d’un système global dont les
approches et les démarches de conception relèvent de l'ingénierie des
systèmes.
Systèmes Embarqués (SE)
4. 4
Il ne possède généralement pas des entrées/sorties standards et
classiques comme un écran d'ordinateur. Cependant, le système
embarqué possède des entrées-sorties spécifiques (pour la plupart, liées
à des grandeurs physiques).
Le système matériel et l’application sont intimement liés, le logiciel
embarqué étant enfoui, noyé dans le matériel. Ainsi, les parties matérielle
et logicielle ne sont pas discernables comme un environnement de travail
classique de type ordinateur PC.
Systèmes Embarqués (SE)
5. 5
Système Embarqués (SE)
C'est un système principalement numérique.
Il met en œuvre généralement un processeur.
Il exécute une application logicielle dédiée pour réaliser une
fonctionnalité ou une tâche précise.
Il n'a pas réellement de clavier standard (bouton poussoir, clavier...).
L’affichage est limité (écran LCD, LED, TFT…) ou n’existe pas forcément.
Ce n’est pas un PC en général mais des architectures des
processeurs similaires basse consommation sont de plus en plus
utilisées pour certaines applications embarquées.
6. 6
On peut noter :
Qu'un PC standard peut exécuter tout type d'applications car il est
généraliste alors qu'un système embarqué n'exécute qu'une application
dédiée et spécifique.
Que l’interface IHM (Interface Homme-Machine) peut être aussi
simple qu’une LED qui clignote ou aussi complexe.
Que des circuits numériques ou des circuits analogiques sont utilisés en
plus pour augmenter les performances d’un système embarqué ou sa
fiabilité.
Système Embarqués (SE)
7. 7
Systèmes Embarqués (SE) : Caractéristiques
Fonctions ciblée et précises,
Encombrement mémoire,
Consommation d’énergie,
Poids et volume,
Criticité / Fiabilité / Autonomie / Tolérance aux fautes
Mobilité et rapidité,
Communications,
Interfaçage avec monde physique,
Contraintes environnementales,
Contraintes temps réel,
Coûts…
8. 8
Système Embarqués (SE) : Contraintes
Contraintes temporelles pour les systèmes embarqués :
Réaliser des fonctions en temps réel stricte (systèmes orientés contrôle :
durée prévisible et déterministe) en relâché/souple (systèmes orientés
traitement du signal ou d’image : dégradation des performances).
Contraintes fonctionnelles pour les systèmes embarqués :
Réaliser des fonctions simples nécessitant très peu de calcul (appareils
ménagers) ou complexes pouvant nécessiter l’utilisation d’architectures
parallèles.
Assurer un fonctionnement logique déterministe : les mêmes entrées
doivent produire les mêmes effets.
9. 9
Une contrainte douce (système temps réel doux) est moins contraignante
qu’elle permet une erreur raisonnable par rapport au moment exact où le
processus aurait dû s’exécuter.
Par contre, la contrainte dure ne permet aucune erreur sur le moment où
le processus aurait dû s’exécuter.
Système Embarqués (SE) : Contraintes
Contraintes temps pour les systèmes embarqués :
10. 10
Utilisation de systèmes d’exploitation légers et adaptés aux
besoins particuliers :
Systèmes à base de Linux : MontaVista Linux (leader), BlueCat Linux,
μClinux (pour μcontrôleurs et processeurs sans MMU), RTLinux et RTAI
(doubles noyau), ELDK, PeeWee Linux.
Systèmes temps réel : pSOS, VxWorks (très utilisé mais coûteux), QNX (très
faible mémoire, GSM), Nucleus, eCos (automobile, imprimantes laser,
multimédia), μC/OS/μC/OS II (produits de petite taille : μC), Windows CE
(PDA), LynxOS.
Système Embarqués : Contraintes logiciels
11. 11
Utilisation de langages adaptés au matériel et produisant un
code optimisé :
Assembleur pour un code de taille et performance optimisées.
C/C++ moins complexes et relativement proches du matériel.
Shell-script (versions ash/msh de 30 à 60Ko et BusyBox de 150Ko)
dans le cas d’Unix, facile à maintenir puisque ne nécessitant pas
de recompilation en cas d’usage d’un autre système de type Unix
(qui est une famille de systèmes d'exploitation multitâche et multi-
utilisateur, programmée en C, Assembleur).
Scripts sous Linux : Shell Bash, Sed, Awk, Perl, Tcl, Tk, Python,
Ruby…
Système Embarqués : Contraintes logiciels
12. 12
Compilation optimisée du code :
Utilisation des options d’optimisation adaptées au matériel pour
éviter des problèmes de mémoire (Ex : GNU Compiler Collection
GCC pour déterminer le niveau d’optimisation, minimiser la taille
du code et adapter le code au processeur utilisé).
GNU GCC, est un ensemble de compilateurs créés par la plate-
forme GNU. GCC est un logiciel libre capable de compiler divers
langages de programmation (C, C++, Objective-C, Java, Ada,
Fortran...). Il est utilisé pour le développement de la plupart des
logiciels libres.
Système Embarqués : Contraintes logiciels
13. 13
Transports
Spatial
Militaire
Domotique, Bâtiments…
Distribution et gestion de l’énergie
Médical
Terminaux de paiement
Consumer electronics
Robotique
Appareils ménagers,
Appareils numériques
Réseaux et télécommunication
Contrôle de processus industriels
Systèmes d'alarme
Jeux et calcul général
Ordinateurs, tablettes…
Systèmes Embarqués (SE) : Domaines d’application
16. 16
Systèmes Embarqués (SE) ?
Ordinateur au sein d’un produit ou un objet
Un système qui traite une information
sur des processus externes provenant
de senseurs pour agir sur les processus
externes via des actuateurs ou
directement informer l'utilisateur.
17. 17
L’architecture de base d’un système embarqué est généralement composée
d'une unité centrale de traitement (CPU), d'un système d'exploitation
(OS) qui est parfois un logiciel spécifique, ou une boucle d'exècution. Ainsi,
l'interface IHM qui est parfois utile pour reconfigurer le système ou vérifier
son comportement.
Systèmes Embarqués (SE) : Architecture
18. 18
Systèmes Embarqués (SE) : Topologie
En entrée, on trouve des capteurs généralement analogiques couplés à des
convertisseurs A/N. En sortie, on trouve des actionneurs généralement analogiques
couplés à des convertisseurs N/A. Au milieu, on trouve le calculateur mettant en
œuvre un processeur embarqué et ses périphériques d'E/S.
19. 19
Entrées :
- Les capteurs/convertisseurs (pression, température...)
- Le clavier, boutons poussoirs ou télécommandes (infrarouge, bluetooth,
radio...)
- Le lecteurs de tags ou de codes barres…
Sorties :
- L'écrans et afficheurs LCD, LED...
- Le Système d'alarme, de signalisation ou synthèse vocale.
- L’imprimante en tous genres comme papier, étiquettes, photos...
Mémoire de mass :
- Le disque dur.
- La mémoire flash.
- L'utilisation de ROM.
- Le disque à distance.
IHM :
- Un dispositif qui sert à communiquer entre l'humain et la machine.
Systèmes Embarqués (SE) : Topologie
20. 20
FPGA : Field-Programmable Gate Array
ASIC : Application Specific Integrated Circuit
Systèmes Embarqués (SE) : Architecture
Il est à noter qu'il est complété généralement d'un circuit FPGA jouant le rôle
de coprocesseur afin de proposer des accélérations matérielles au processeur.
21. 21
Il reçoit des informations de l'environnement extérieur qu'il converti en
signal numérique.
L'unité de traitement composée du CPU, de la mémoire, du logiciel, de
l'ASIC et éventuellement de système externes traite l'information.
Le traitement génère éventuellement une sortie qui est envoyée vers la
sortie, les systèmes auxiliaire, les ports de monitoring ou l'IHM.
Systèmes Embarqués (SE) : Fonctionnement
22. 22
Contrairement au PC placé souvent dans un bureau, un système embarqué
doit faire face à des environnements plus nuisibles où il doit faire face à
un ensemble de paramètres alarmants :
Variations de la température et de l’éclairement.
Poussières et Salissement.
Vent, Vibrations, chocs.
Interférences RF et compatibilité EM.
Dégradation et Corrosion.
Pluie, feu...
Systèmes Embarqués (SE) : Fonctionnement
23. 23
L'environnement dans lequel opère le système embarqué n'est pas
contrôlé ou contrôlable, d’où la nécessité de prendre en considération ce
paramètre lors de la conception du système ; par exemple prendre en
compte les évolutions des caractéristiques électriques des composants en
fonction de la température, des éclairements,...
Les systèmes embarqués sont aujourd'hui fortement communicants. Cela
est possible grâce aux puissances de calcul offertes par les processeurs
pour l'embarqué (32 bits en particulier) et grâce aussi à l'explosion de
l'usage la connectivité Internet ou connectivité IP.
La connectivité IP permet fondamentalement de contrôler à
distance un système embarqué via Internet.
Systèmes Embarqués (SE) : Fonctionnement
Objet connecté ?
24. 24
On parle d’objets connectés pour définir des types d’objets dont la vocation
première n’est pas d’être des périphériques informatiques ni des interfaces
d’accès au web, mais auxquels l’ajout d’une connexion Internet a permis
d’apporter une valeur supplémentaire en terme de fonctionnalité,
d’information, d’interaction avec l’environnement ou d’usage. Autrement dit,
il s’agit de systèmes électroniques communicants qui produisent, échangent,
exploitent des données sur un réseau informatique (le plus souvent
Internet).
Systèmes Embarqués (SE) : Objets connectés ?
25. 25
Objet connecté ?
Objet discret, et facile à
utiliser,
Objet utile,
Objet communicant, et
partageant,
Objet permettant d’assurer un
niveau de confort, de service…
Communication,
Sécurité,
Fiabilité,
Vie privée …
26. 26
IoT (internet des objets)
Internet des objets permet aux personnes et aux objets d'être connectés à
tout moment, en tout lieu, à tout et à tout le monde, idéalement via n'importe
quel chemin / réseau ou tout service.
Internet des objets reflète une interaction entre les mondes réel/physique et
numérique/virtuel. Les entités physiques ont des équivalents numériques et
une représentation virtuelle ; les choses deviennent sensibles au contexte et
peuvent sentir, communiquer, interagir, échanger des données, des
informations et des connaissances.
28. 28
L'interopérabilité est la capacité que possède un produit ou un système, dont
les interfaces sont intégralement connues, à fonctionner avec d'autres
produits ou systèmes existants ou futurs et ce sans restriction d'accès ou de
mise en œuvre.
IoT (internet des objets)
IoT est un système non interopérable!
35. 35
IoT (Internet des Objets)
Évolution des objets connectés, par type (en milliards)
Après 2020, le nombre d’objets connectés devrait dépasser 100 milliards, où chaque
foyer devrait être équipé d’un nombre important d’objets connectés.
36. 36
Energie :
Les objets connectés sont souvent des objets mobiles => consommation
Réduite :
microcontrôleurs ultra low power,
production locale de l’énergie nécessaire (Exemple : EnOcean).
Connexions :
Tous les types de connexion sont envisagés :
Ethernet (ou fibre optique) pour les éléments fixes et/ou nécessitant des
flux de données très importants,
bus de terrain filaire,
sans fil (RF, WiFi, BLE, ZigBee, LiFi, 3G, 4G, …).
Sécurité :
Identification et cryptage des données :
paiement,
accès,
protection des données.
IoT (Internet des Objets) : Aspects techniques
42. 42
Pour l'emploi des technologies modernes du web pour un contrôle à distance
par l'utilisateur, il suffit d'embarquer un serveur web dans son équipement
électronique pour pouvoir le contrôler ensuite à distance, de n'importe où, à
l'aide d'un simple navigateur. Il n'y a plus d'IHM spécifique à concevoir pour
cela, ce rôle étant rempli par le navigateur web.
Il faut aussi noter la montée en puissance des communications sans fil dans
l'embarqué au détriment des communications filaires pour limiter le câblage
et faciliter la mise en place du système embarqué. Le Wifi et toutes les
normes de réseaux sans fil IEEE 802.15 comme Zigbee ont le vent en poupe
dans l'embarqué et surtout en domotique (réseaux de capteurs sans fil par
exemple).
La sécurité des systèmes embarqués, puisque connecté à Internet, est donc
cruciale aujourd'hui et doit être prise en compte dès leur conception!
IoT (Internet des Objets) : Sécurité
46. 46
IoT (Internet des Objets) : Sécurité
Cloud Computing, ou informatique
en nuage, consiste à utiliser des serveurs
informatiques distants par l'intermédiaire
d'un réseau, généralement Internet,
pour stocker des données ou les exploiter.
Le cloud computing c’est de
pouvoir utiliser des ressources
informatiques sans les posséder.
Le PC portable va utiliser la puissance de calcul du serveur
et la capacité de stockage de la baie.
Baie
PC
Serveur
47. 47
Le « Fog computing » est
une technologie cloud dans
laquelle les données
générées par les terminaux
ne sont pas directement
téléchargées dans le cloud,
mais sont au préalable
prétraitées dans des mini-
centres de calcul
décentralisés.
IoT (Internet des Objets) : Sécurité
Couche périphérique (edge layer) : la couche périphérique comprend tous les
dispositifs périphériques d’une architecture IoT. Les données générées au niveau de la
couche périphérique sont soit traitées directement sur le périphérique, soit transmises
à un serveur (fog node) de la couche fog.
Couche fog (fog layer) : la couche fog comprend un certain nombre de serveurs
performants qui reçoivent les données de la couche périphériques, les prétraitent, et
les téléchargent dans le cloud si nécessaire.
Couche cloud (cloud layer) : la couche cloud est le terminal de données central
d’une architecture de cloud computing.
48. 48
IoT (Internet des Objets) : Sécurité
Le concept inclut une structure réseau qui s’étend des points les plus
périphériques du réseau, où les données sont générées par des dispositifs et
objets connectés, jusqu’au terminal de données central dans le cloud public
ou dans un centre de données privé (cloud privé).
51. 51
M2M utilise des périphériques pour
capturer des événements, via une
connexion réseau à un serveur central,
qui traduit les événements capturés en
informations significatives.
RFID utilise des ondes radio pour
transférer des données d'une étiquette
électronique attachée à un objet à un
système central via un lecteur afin
d'identifier et de suivre l'objet.
WSN se compose de capteurs
autonomes répartis spatialement pour
surveiller les conditions physiques ou
environnementales.
SCADA est un système autonome
basé sur la théorie du contrôle en boucle
fermée ou un système intelligent ou un
système de données CPS qui connecte,
surveille et contrôle des équipements via
un réseau dans une installation telle
qu'une usine ou un bâtiment.
The Four Pillars of IoT
52. 52
M2M concerne les communications entre machines. M2M dépend des
communications point à point avec l'utilisation de composants matériels intégrés dans
la machine.
IoT est lié aux objets, aux capteurs d'humidité, aux thermomètres, aux gadgets
domotiques, aux capteurs de mouvement et à tout objet qui a un processeur connecté
à Internet.
IoT and M2M
53. 53
RFID (Radio Frequency Identification) : c’est une technologie sans contact
très utilisée dans de nombreux secteurs pour des tâches telles que la surveillance du
personnel, le contrôle d’accès, la gestion de la chaîne logistique, le suivi des livres
dans les bibliothèques, les systèmes de péage, etc. La RFID utilise les ondes radio
produites par un reader pour détecter la présence (puis lire les données stockées)
d'une étiquette RFID. Les étiquettes sont intégrées dans des petits objets tels que des
cartes, des boutons ou de minuscules capsules.
Radio Frequency IDentification (RFID)
Le lecteur RFID comprend un module radiofréquence,
une unité de contrôle et une bobine d’antenne qui génère
un champ électromagnétique haute fréquence. Par contre,
l’étiquette est généralement un composant passif, composé
uniquement d’une antenne et d’une puce électronique.
Ainsi, lorsqu’elle se rapproche du champ électromagnétique
de l’émetteur-récepteur, du fait de l’induction, une tension
est générée dans sa bobine d’antenne et la tension sert de
puissance pour la puce.
54. 54
WSN : c’est une collection d’appareils «nœuds de capteurs». Ils sont
petits, peu coûteux. Ils sont organisés en réseau. Ils communiquent
sans fil dans le routage multi-sauts.
Wireless sensor network (WSN): Definition
55. 55
Wireless sensor network (WSN) ?
Un réseau de capteurs est composé d’un grand nombre de nœuds de
capteurs qui sont déployés (aléatoirement) de manière dense à l’intérieur
ou à proximité du phénomène,
Capacités d'auto-organisation,
Chaque nœud des réseaux de capteurs est constitué de trois sous-
systèmes :
o Sous-système de capteur : détecte l'environnement,
o Sous-système de traitement : calculs locaux sur les données détectées,
o Sous-système de communication : échange de messages avec les nœuds
de capteurs voisins,
56. 56
Il est impossible de garder le contrôle et
la supervision de toutes les activités
industrielles manuellement. Un outil
automatisé est nécessaire pour
contrôler, superviser, collecter des
données, les analyser et générer des
rapports. Une solution unique est
introduite pour répondre à toute ce
besoin est le système SCADA.
Human Machine Interface (HMI)
C'est une interface qui présente les données de processus à un opérateur humain. Ce
dernier surveille et contrôle le processus.
Supervisory (computer) system
Il collecte des données sur le processus et envoie des commandes (ou contrôle) au
processus.
Remote Terminal Units (RTUs)
Il se connecte aux capteurs dans le processus, convertissant les signaux des capteurs en
données numériques et envoyant des données numériques au système de supervision.
Programmable Logic Controller (PLCs)
Il est utilisé comme appareil de champ car il est plus économique, polyvalent, flexible et
configurable que les RTU à usage spécifique.
Communication infrastructure
Il fournit une connectivité au système de supervision des unités terminales distantes.
Supervisory control and data acquisition (SCADA)
59. 59
Un microprocesseur c’est un circuit intégré muni d’un nombre
généralement important de broches. C’est une puce intégrée au silicium
avec uniquement une unité de traitement centrale, qui est le cœur d’un
système informatique conçu pour effectuer des tâches complexes impliquant
des données. Les microprocesseurs ne disposent pas de RAM, de ROM, des
E/S, de Timers et d’autres périphériques sur la puce. Ils doivent être ajoutés
à l’extérieur pour les rendre fonctionnels.
Exemples :
Intel 8085, 8086 : 40 broches, DIP (Dual In-line Package) ;
Motorola 68000 : 64 broches, DIP ;
Intel 80386 : 196 broches, PGA (Pin Grid Array).
Technologies de fabrication : NMOS, PMOS, CMOS.
Microprocesseurs (MPU) : Définition
60. 60
Le microprocesseur est un processeur miniaturisé (composants réunis sur
un seul circuit intégré).
Il assure ainsi l’interprétation et l’exécution des instructions.
Il a des entrées, des sorties et un processus.
Les entrées et les sorties d'un microprocesseur sont souvent une série de
tensions électriques pouvant être utilisées pour contrôler des
périphériques externes.
Le processus consiste à analyser les paramètres d’entrée et à les utiliser
pour «décider» des paramètres de sortie requises.
Microprocesseurs (MPU) : Définition
62. 62
Première machine à calculer électronique : ENIAC,
1944, Eckert et Mauchly, 18000 tubes électroniques,
machine à programme câblé.
Machine à programme enregistré : John Von
Neumann, 1946, les instructions sont enregistrées dans
la mémoire du calculateur : ordinateur.
Premier ordinateur commercialisé : SSEC d’IBM,
1948.
Ordinateur à transistors : 1963, PDP5 de Digital
Equipment Corporation (DEC), introduction des
mémoires à ferrites : mini-ordinateurs.
Micro-ordinateurs : 1969-70, utilisation des circuits
intégrés LSI.
Microprocesseurs (MPU) : Historique
63. 63
Premier microprocesseur : Intel, 1971, microprocesseur 4004,
puis 8008, premier microordinateur : le Micral, 1973, France, puis
l’Altair, 1975, Etats-Unis.
Autres microprocesseurs : 8080 et 8085 d’Intel, 6800 de
Motorola, Z80 de Zilog : microprocesseurs 8 bits, début des
années 1980.
Microprocesseurs 16 bits : 8086/8088 d’Intel, 68000 de
Motorola.
Microprocesseurs 32 bits en 1986 : 80386 d’Intel et 68020
de Motorola.
Fabrication en grandes séries des micro-ordinateurs : 1977,
Apple, Commodore, Tandy.
IBM PC + MS-DOS (Microsoft) en 1981.
Microprocesseurs (MPU) : Historique
64. 1947 : Invention hasardeuse du transistor bipolaire par Bardeen, Bratten,
et Schokley.
Réduction de la taille, du poids et de la consommation des circuits.
Intégration
L'histoire des microprocesseurs est intimement liée à celle de la technologie
des semi-conducteurs dont voici les principales étapes :
64
Microprocesseurs (MPU) : Historique
65. 1958 : 1er Circuit intégré (CI), 2 transistors
en germanium (Ge) par Jack KILBY. TEXAS
INSTRUMENTS produit le 1er circuit intégré
(CI).
1960 : Après une mise au point des
technologies bipolaires TTL et ECL, il y avait
l’invention du transistor à effet de champ (FET)
- TI & Fairshild 1er CI de 10 transistors.
1971 : Après une mise au point de la
technologie MOS, un premier microprocesseur
Intel 4004 (4bits avec plus de 2000 transistors
pour 10µm) a apparait. Intégration à grande
échelle (LSI de 500 à 20 000 transistors).
2003 : Microprocesseur Pentium IV
Intel (32/64bits- avec plus de 55M
transistors pour 0,1µm) 65
1985 : Intégration à très grande échelle
(VLSI plus de 20 000 transistors)
Microprocesseurs (MPU) : Historique
66. Le volume est divisé•
par 108
Le nombre de transistors dans
une puce est multipliée par 4
tous les 4 ans.
Loi de Gordon Moore
66
L’évolution des systèmes de l’électronique, communication et informatique,
l’augmentation des besoins en capacités et rapidité de transmission
d’informations et l’essor des télécommunications, nécessitent le
développement des circuits intégrés avec des systèmes complexes, des
dimensions réduites et des performances accrues.
La puissance est multipliée par 108
Microprocesseurs (MPU) : Historique
69. Microprocesseurs (MPU) : Circuits intégrés
Circuit intégré (CI) : Appelé aussi puce est un ensemble très dense de
dispositifs électroniques ayant une fonction définie (résistances,
condensateurs, diodes, transistors…). Un ensemble de couches (métaux,
isolants, semiconducteurs…) déposés sur un même substrat.
La fabrication d’un circuit intégré
correspond à la réalisation sur
quelques centimètres voir
millimètres carrés de surface et
quelques microns d’épaisseur
d’un assemblage de millions de
composants interconnectés.
Fabriqué en général sur un substrat en Silicium (Si),
Fabriqués sur plaquettes de Si de différentes pouces de diamètre (1
pouce= 27.07 mm)
Différents types de puce : microprocesseur, mémoire, capteurs,
microcontrôleurs… 69
70. Exemple : DRAM (Dynamic Random Access Memory)
Adressage
des
lignes
Adressage des colonnes
Capacité
Transistor
1 bit
mémoire
Une cellule mémoire DRAM est constituée d’un transistor MOS et d’un
condensateur. Lorsque le transistor est activé, il devient passant et charge la
condensateur. Un bit d’information est stocké sous forme d’une charge,
utilisant un effet capacitif. 70
Microprocesseurs (MPU) : Circuits intégrés
71. Les circuits intégrés sont incorporé dans tous les appareils électriques ou
électroniques et dans la plupart des objets situés autour de nous (PC, montre,
tel, fax, copieur, grille pain, autos, cartes à puce, …)
71
Microprocesseurs (MPU) : Circuits intégrés
72. La microélectronique est une discipline qui se place déjà au centre d'un
certain nombre d'activités très diverses de la microélectronique en général.
Ainsi son développement est au cœur des développements économiques.
72
Microprocesseurs (MPU) : Circuits intégrés
73. Coût/mm2
Règles
Production,
Procédés technologiques,
Tests de production et de
procédés,
Conception
Equipements - compatibilité
du produit avec la technologie
de réalisation,
Qualité…
Les principaux domaines concernés
Métiers : Ingénieur produit, Applications, Fabrication, Test,
Conception, Qualité, Vente, Marketting, Planning, Recherche et
Dévellopement...
73
Microprocesseurs (MPU) : Circuits intégrés
74. Lingot de Si Plaquettes de Si
Design, Layout
& Technologie
Wafer structuré
Découpe
Puces ou CI
Encapsulation
Circuit Intégré final
Silice (SiO2)
(Nature : sable…)
Phases simplifiées de fabrication d’un circuit intégré
74
Microprocesseurs (MPU) : Circuits intégrés
75. Evolution de la taille des substrats de silicium depuis le début des
circuits intégrés.
75
Microprocesseurs (MPU) : Circuits intégrés
81. 81
Système de vision pour véhicule automobile
Microcontrôleurs (MCU) : Microprocesseurs (MPU)
82. 82
Systèmes Embarqués
Opérations gérées par un microcontrôleur.
Microcontrôleur (MCU)
Dispositif informatique électronique intégré (sur puce) :
o Microprocesseur (MPU),
o Mémoire,
o Ports I/O (Input/Output)…
Microcontrôleurs (MCU) : Microprocesseurs (MPU)
83. 83
Ce sont des circuits intégrés regroupant les fonctions d’un «système»
minimum à microprocesseur.
Avantages des microcontrôleurs :
Intégration dans un seul boîtier
Fiabilité
Coût de câblage réduit
Faible consommation
Inconvénients :
L’intégration de nombreux périphériques, de RAM, de ROM limite la
puissance de calcul et la vitesse de ces circuits (les transistors intégrés
sont destinés aux périphériques et non plus au calcul).
Microcontrôleurs (MCU)
84. 84
Il y a une différence fondamentale entre un microprocesseur et un
microcontrôleur :
Le microcontrôleur intègre dans un même boîtier, un microprocesseur, de
la mémoire, et des interfaces entrées/sorties.
Le microprocesseur se présente sous la forme d’un boîtier qui nécessite
des éléments externes, comme de la mémoire et des circuits d’interfaces.
Ils sont présents dans la plupart des systèmes électroniques embarqués
ou dédiés à une application unique ou précise.
Microcontrôleurs (MCU) : Microprocesseurs (MPU)
86. 86
Le microprocesseur est le cœur d’un
système informatique. C’est un
processeur. Les composants de
mémoire et d’E/S doivent être
connectés en externe. Principalement
utilisé dans les ordinateurs personnels.
Le microprocesseur est basé sur
l’architecture de Von Neumann dans
laquelle le programme et les données
sont stockés dans le même module de
mémoire.
Le microprocesseur a moins de
registres, donc plus d’opérations sont
basées sur la mémoire.
Le microcontrôleur est le cœur
d’un système embarqué.
Le microcontrôleur dispose d’un
processeur externe ainsi que de
composants de mémoire interne et
d’E/S.
Le microcontrôleur est basé sur
l’architecture de Harvard où la
mémoire du programme et la
mémoire de données sont
séparées.
Le microcontrôleur a un grand
nombre de registres, ce qui facilité
l’écriture des programmes.
Microcontrôleurs (MCU) VS Microprocesseurs (MPU)
87. 87
Microprocessor
CPU is stand-alone, RAM,
ROM, I/O, timer are separate
Designer can decide on the
amount of ROM, RAM and
I/O ports.
Expensive
Versatility
General-purpose
High processing power
High power consumption
Instruction sets focus on
processing-intensive
operations
Typically 32/64 – bit
Typically deep pipeline (5-20
stages)
Microcontroller
CPU, RAM, ROM, I/O and timer
are all on a single chip
Fixed amount of on-chip ROM,
RAM, I/O ports
For applications in which cost,
power and space are critical
Single-purpose (control-oriented)
Low processing power
Low power consumption
Bit-level operations
Instruction sets focus on control
and bit-level operations
Typically 8/16 bit
Typically single-cycle/two-stage
pipeline
Microcontrôleurs (MCU) VS Microprocesseurs (MPU)
88. 88
Architecture Von Neuman
L’architecture de Von Neuman (1945) est un modèle qui utilise une structure
unique pour les instructions et les données.
o Notion de programme stocké en mémoire
o Possibilité de programmer la machine
o Séparation entre le stockage et le processeur
Architecture limitée par le transfert mémoire (l’élément le plus lent)
89. 89
Architecture Harvard
L’architecture de Harvard sépare physiquement la mémoire de données de la
mémoire de programme. Elle permet de transférer simultanément les données et
les instructions à exécuter. L’accès à chaque mémoire par deux bus distincts. La
structure est plus complexe, mais plus rapide que le modèle Von Neuman.
91. 91
Microprocesseur (MPU) : Familles
Différentes familles de microprocesseurs existent,
ces derniers sont commercialisés par différentes
fabricants tels que Intel, AMD…
92. 92
Famille x86 : a été initialement commercialisée par Intel. On
retrouve les Intel Pentium et AMD Athlons, qui ont inondés les
marchés informatiques durant les années 90 et 2000.
Famille x64 : fait suite à celle des x86. Celle-ci à été créé avec
pour objectif de permettre une meilleur gestion de la mémoire
vive des ordinateurs qui ne cesse d'augmenter ces dernières
années.
Famille des PowerPC : a été développée par Motorola et IBM.
Famille ARM : la plus répandue du marché. Ces processeurs se
retrouvent dans les tablettes (iPad…), les téléphones, ou encore
les systèmes embarqués comme Raspberry PI…
Microprocessor (MPU) : Families
93. 93
Il existe deux principaux types de microprocesseurs :
Les processeurs CISC (Complex Instruction Set Computer) dont le jeu
d'instructions possède les propriétés suivantes :
o Ils contiennent beaucoup de classes d'instructions différentes.
o Ils contiennent beaucoup de type d'instructions différentes complexes et
de taille variable.
o Ils se servent de beaucoup de registres spécialisés et de peu de registres
généraux.
Ceux-ci peuvent faire de nombreuses instructions complexes, plusieurs cycles
d’horloges sont nécessaires pour effectuer ces instructions, mais celles-ci sont
également plus complètes (de plus gros calculs sont faits à chaque
instruction).
Microprocessors (MPU) : Architectures CISC et RISC
94. 94
Les processeurs RISC (Reduced Instruction Set Code) est un
processeur dont le jeu d'instructions possède les propriétés suivantes :
o Le nombre de classes d'instructions différentes est réduit par rapport à
un CISC.
o Les instructions sont de taille fixe.
o Ils se servent de beaucoup de registres généraux.
o Ils fonctionnent avec un pipe-line.
Les processeurs RISC (Reduced Instruction Set Computer) possèdent un
nombre limité d’instructions de base. Chaque instruction est donc effectuée
plus rapidement, ce qui fait la force de ces microprocesseurs : leur rapidité
d’exécution.
Microprocessors (MPU) : Architectures CISC et RISC
95. 95
Unité centrale de traitement (CPU : Centarl Processing Unit)
Unité de mémoire
Unité d’échange (E/S ou I/O)
Unités fondamentales
Microprocesseurs (MPU) standards
96. 96
Microprocesseurs (MPU) : Modèle de base
L’Unité Arithmétique et
Logique (UAL)
L’Unité de Contrôle (UC),
Les registres.
Le microprocesseur est composé d’une unité centrale de traitement
(CPU : Centarl Processing Unit), qui elle même composée
principalement de :
CPU
97. 97
L’UAL (Unité Arithmétique et
Logique) : Gère et réalise toutes les
opérations arithmétiques (additions,
soustractions, …) et logiques (ET, OU, …). En
entrée de l’UAL, on a des commandes
permettant d’activer les opérations, venant
de l’unité de contrôle. En sortie, on a les
résultats des opérations et les conditions qui
sont en fait les entrées de l’unité de contrôle.
Microprocesseurs (MPU) : CPU (Central Processing Unit)
C'est un circuit complexe qui assure les fonctions logiques (ET, OU,
comparaison, décalage, etc...) ou arithmétique (addition,
soustraction...).
98. 98
Microprocesseurs (MPU) : Unité de contrôle
L’unité de contrôle (UC : Unit Control) : qui gère le flux
d’instructions dans tout le système. C’est un circuit logique séquentiel chargée
de séquencer l’algorithme et de générer les signaux de contrôle pour piloter
les éléments du chemin de données. Elle envoie des commandes à l’unité de
traitement qui va exécuter les traitements.
Séquenceur (logique de contrôle) : commander le séquencement de
l’ensemble du système en gérant les signaux de commande et de
contrôle, l’occupation des bus d’adresse et de données. Il permet de
synchroniser les différents éléments du processeur. En particulier, il
initialise les registres lors du démarrage de la machine et il gère les
interruptions.
Décodeur : chercher, décoder et exécuter les instructions.
99. 99
Le compteur de programme (PC : Programme Counter) appelé aussi
Compteur Ordinal (CO) : Il est constitué par un registre dont le contenu
est initialisé avec l'adresse de la première instruction du programme. Il
contient toujours l’adresse de la prochaine instruction à exécuter.
Le registre d'instruction et le décodeur d'instruction : Chacune des
instructions à exécuter est transféré depuis la mémoire dans le registre
instruction puis est décodée par le décodeur d’instruction.
Bloc logique de commande (ou séquenceur) : Il organise l'exécution
des instructions au rythme d’une horloge. Il élabore tous les signaux de
synchronisation internes ou externes (bus de commande) du microprocesseur
en fonction de l’instruction qu’il a à exécuter. Il s'agit d'un automate réalisé
de façon microprogrammée.
Microprocesseurs (MPU) : Unité de contrôle
L'unité de control peut contenir :
100. 100
Un processeur utilise toujours des registres, qui sont des petites mémoires
internes très rapides d'accès utilisées pour stocker temporairement une
donnée, une instruction ou une adresse. Chaque registre stocke 8, 16 ou 32
bits.
Parmi les registres, le plus important est l’accumulateur, qui est un registre
utilisé pour stocker les résultats des opérations arithmétiques et logiques.
L'accumulateur intervient dans une proportion importante des instructions. Il
aussi est utilisé pour stocker les données en cours de traitement par l’UAL.
C’est un registre de travail qui sert à stocker une opérande au début d'une
opération arithmétique et le résultat à la fin de l'opération.
Microprocesseurs (MPU) : Les registres et l'accumulateur
Le registre : C'est un espace mémoire interne au processeur. On distingue
deux types de registres : à usage général qui permettent à l'UAL de
manipuler des données et les registres d'adresses qui sont connectés au bus
d'adresse. Stockent les données du mémoire en cours de traitement et les
données pour un accès rapide.
101. 101
Par exemple, lorsque le processeur exécute une instruction comme «Ajouter
5 au contenu de la case mémoire d'adresse 180 » :
Le processeur lit et décode l'instruction ;
le processeur demande à la mémoire la contenu de l'emplacement 180 ;
la valeur lue est rangée dans l'accumulateur ;
l'unité de traitement (UAL) ajoute 5 au contenu de l'accumulateur ;
le contenu de l'accumulateur est écris en mémoire à l'adresse 180.
c'est l'unité de commande qui déclenche chacune de ces actions dans
l'ordre.
l’addition proprement dite est effectuée par l'UAL.
Microprocesseurs (MPU) : Les registres et l'accumulateur
102. 102
Registres de données
Il s'agit de registres d'usage général recevant des opérandes, des
résultats intermédiaires ou des résultats. Ils évitent des appels
fréquents à la mémoire, réduisant ainsi les temps de calcul.
Les registres de données remplissent souvent la fonction
d'accumulateur, permettant des opérations du type :
ACCU F(OPERANDE)-> ACCU,
avec F() : opération logique ou arithmétique.
Microprocesseurs (MPU) : Les registres
103. 103
Ces registres contiennent toujours l’adresse de la prochaine information à lire
par l’UAL, soit la suite de l’instruction en cours, soit la prochaine instruction.
Ils servent à gérer l'adressage de la mémoire. Parmi ceux-ci, on trouve un
registre qui est fondamental dans l'exécution du programme : le compteur
ordinal (Program Counter). Il contient l'adresse de l'instruction courante.
Les instructions sont rangées séquentiellement en mémoire, ce qui implique
un adressage séquentiel de celles-ci par incrémentation d'adresse.
Un programme élémentaire comprend les étapes suivantes :
Initialisation du PC avec l'adresse de début de programme,
Envoi du contenu du PC sur le bus d'adresse, lecture du contenu de la
case adressée par PC et transfert dans le registre d'instruction en cours
de traitement (phase de recherche ou "Fetch"),
Décodage de l'instruction par l'UC,
Exécution de l'instruction,
Incrémentation du PC...
Le contenu du PC peut cependant être modifié conditionnellement ou non
par des instructions de rupture de séquence.
Registres d'adresses
Microprocesseurs (MPU) : Les registres
104. 104
Ces registres sont plus spécialement adaptés au traitement des éléments d'un
tableau. Ils sont en général munis de propriétés d'incrémentation et de
décrémentation.
Un cas particulier de pointeur est le pointeur de pile (Stack Pointer SP). Ce
registre permet de stocker des données ou des adresses selon le principe du
"Dernier Entré Premier Sorti" ou "LIFO" (Last In First Out). Dans certain cas,
la pile est contenue dans l'UT, mais la plupart du temps elle est située en
mémoire.
Registres d'index ou pointeurs
Il est généralement composé de 8 bits à considérer individuellement. Chacun
de ces bits est un indicateur dont l'état dépend du résultat de la dernière
opération effectuée par l’UAL. On les appelle indicateur d’état ou flag ou
drapeaux (Retenue, débordement, zéro, ...).
Registre d'état
Microprocesseurs (MPU) : Les registres
105. 105
Un bus est un ensemble de lignes de communications groupés par fonction. Il permet
de faire transiter (liaison série/parallèle) des informations codées en binaire entre
deux points. Il est caractérisé par le nombres de lignes et la fréquence de transfert.
Bus de données (bi-directionnel) : permet de transférer entre composants des
données ,
Exemple : résultat d'une opération, valeur d'une variable, etc.
Le nombre de lignes du bus de données définie la capacité de traitement du
microprocesseur ; selon le microprocesseur la largeur du bus peut être de 8 bits,
16 bits, 32 bits, 64 bits.
Bus d'adresses (uni-directionnel) : permet de transférer entre composants des
adresses,
Exemple : adresse d'une case mémoire, etc.
L’espace adressable peut avoir 2n emplacements, avec n est le nombre de lignes
du bus d'adresses.
Bus de contrôle (bi-directionnel) : permet l'échange entre les composants
d'informations de contrôle [bus rarement représenté sur les schémas].
Exemple : périphérique prêt/occupé, erreur/exécution réussie, etc.
Les bus
Microprocesseurs (MPU) : Liaisons entre unités (Bus)
106. 106
MPU communique avec la Mémoire les Ports I/O, en utilisant le Système Bus :
Address bus
o Unidirectional
o Memory and I/O Addresses
Data bus
o Bidirectional
o Transfers Binary Data and Instructions
Control lines
o Read and Write timing signals
Bidirectional
Unidirectional
Microprocesseurs (MPU) : Liaisons entre unités (Bus)
107. 107
Les communications entre l’unité centrale (CPU) et les autres modules
se font par l’intermédiaire de bus.
Bus :
o Le bus de commande assure la synchronisation des opérations du système.
Transporte les signaux de contrôle entre UC et autres modules.
o Le bus de données transmet les données échangées par différents modules.
Bidirectionnel (lecture, écriture)
Format des données (8,16, 32-bit)
o Le bus d’adresses sert à sélectionner la source ou la destination des
données.
• Unidirectionnel.
• Transporte des adresses, sa largeur détermine la capacité d’adressage.
Ex : 16-bit 65536 données.
Microprocesseurs (MPU) : Liaisons entre unités (Bus)
108. 108
Une mémoire est un ensemble de cellules élémentaires qui stockent chacune
un bit. Le nombre de cellules est appelé "capacité" de la mémoire. A chaque
cellule sont associées 2 informations :
- une adresse (numéro) permettant de désigner la cellule,
- une donnée représentée par son état.
Microprocessors (MPU) : Mémoires
La possibilité d'accéder à une cellule quelconque en fournissant son adresse
est appelée "accès aléatoire« . On distingue un mode de lecture permettant
de connaître l'état de la cellule sélectionnée et un mode d'écriture permettant
d'imposer son état. Ces 2 modes sont définis par l'état d'une ligne de lecture-
écriture (Read/Write : R/W).
109. 109
Mémoire :
La mémoire principale sert à stocker les programmes en cours
d’exécution et les données manipulées.
La mémoire de masse sert à stocker les programmes ou données
qui ne sont pas utilisées dans l’immédiat (disques durs, CD
ROM,…).
Microprocessors (MPU) : Mémoires
Note : la plupart des mémoires à semi-conducteur sont à accès
aléatoire. Par contre les mémoires dites "de masse" (disques,
bandes, mémoires à bulles,..) sont à accès séquentiel.
110. 110
Microprocessors (MPU) : Mémoires
On distingue généralement deux types de mémoires :
Mémoire vive (ou RAM)
Mémoire morte (ou ROM).
111. 111
Les mémoires vives ou RAM (Random Access Memory) pour mémoires à
accès aléatoire ou direct, sont des mémoire volatiles, cela signifie que si
l'on coupe l'alimentation, les données qu'elles contiennent sont perdues.
Ses caractéristiques sont les suivantes :
o Elle sert à stocker les programmes exécutés par le processeur
o Elle est accessible en lecture et en écriture
o Elle est organisée sous forme matricielle
Mémoires vives
Microprocessors (MPU) : Mémoires
112. 112
Mémoires Mortes
Se sont des mémoires à lecture seule (Read Only Memory), l’écriture
nécessite un programmateur ou une procédure plus longue que pour Les
informations qu'elle contient sont conservées en permanence, même lors
d’une coupure d’alimentation.
Microprocessors (MPU) : Mémoires
113. 113
k lignes d’adresses permettent l’accès aux cellules mémoire
La taille d’un bloc mémoire est 2k.
Une ligne de commande R/W
Mémorisation de l’information, accès en écriture (R/W =0)
Restitution de l’information, accès en lecture (R/W =1)
Port d’écriture
Port de lecture
Organisation de la mémoire principale
Microprocesseur (MPU) : Mémoires
114. 114
Exemple : k=16, n=8
Bus d’adresse de 16 bits, chaque ligne d’adresse peut prendre la
valeur 0 ou 1.
216=65536 adresses
Bus de données 8 bits
Capacité de mémoire de 65536 mots de 8 bits
o 65536 octets
o 65536/1024=64 Koctets
o 65536*8=524288 bits
o 524288/1024=512 Kbits
1 octet=8 bits
Microprocesseurs (MPU) : Mémoires
115. 115
La capacité : c’est le nombre total de bits que contient la mémoire. Elle
s’exprime aussi souvent en octet.
Le format des données : c’est le nombre de bits que l’on peut mémoriser
par case mémoire. On dit aussi que c’est la largeur du mot mémorisable.
Le temps d’accès : c’est le temps qui s'écoule entre l'instant où a été lancée
une opération de lecture/écriture en mémoire et l'instant où la première
information est disponible sur le bus de données.
Le temps de cycle : il représente l'intervalle minimum qui doit séparer deux
demandes successives de lecture ou d'écriture.
Le débit : c’est le nombre maximum d'informations lues ou écrites par
seconde.
Volatilité : elle caractérise la permanence des informations dans la mémoire.
L'information stockée est volatile si elle risque d'être altérée par un défaut
d'alimentation électrique et non volatile dans le cas contraire.
Microprocessors (MPU) : Caractéristiques d’une mémoire
116. 116
Programme : séquence d’instructions décrivant au microprocesseur ce qu’il doit
effectuer ou faire.
Exécution : réalise une séquence d’instructions.
Langage de programmation : langage pour écrire des instructions au
microprocesseur.
Langages principaux :
- Langage machine ou code objet (binaire)
- Assembleur (mnémoniques)
- Haut niveau (C, Pascal…)
Compilateur : transforme un programme en langage de haut niveau en
séquence d’instruction machine (code objet).
Microprocesseurs (MPU) : Notions
117. 117
Chaque microprocesseur reconnaît un ensemble d’instruction
appelé jeu d’instructions
o CISC : nombre important d’instructions.
o RISC : nombre moins important d’instructions.
Une instruction est définie par son code opératoire qui est une
valeur numérique binaire
o On utilise une notation symbolique : les mnémoniques.
o Un programme constitué de mnémoniques est appelé programme
assembleur.
Microprocesseurs (MPU) : Notions
Jeu d’instructions
118. 118
Types de données de base
o Nombres entiers (0, -23, 0, 6, 65635)
o Nombres réels (0.3, -3.2, 5, 10e3)
o Booléens (true, false)
o Caractères (‘a’, ‘b’, ‘?’, ‘&’, ‘0’)
Systèmes de numération
o Décimal : 0 … 9, décomposition en puissances de 10
o Hexadécimal : 0 à 9 et A…F, décomposition en puissances de 16
o Binaire : 0 ou 1, décomposition en puissances de 2
Décimal et hexadécimal sont utilisables pour l’être humain
Représentation binaire est utilisable par l’ordinateur
Mot binaire
o Bit (Binary digit)
o Quartet (nibble) 4 bits
o Octet (byte) 8 bits
Terminologie utilisée sur les processeurs 32-bit (y compris ARM)
o Demi-mot (half-word) 16 bits Mot (word) 32 bits
o Double-mot (double word) 64 bits
/! la terminologie peut changer d’une famille à l’autre
o Motorola, Intel
o word 16 bits, long word 32 bits, quad word 64 bits
Représentation de l’information
Microprocesseur (MPU) : Notions
120. 120
En supposant que le code du programme d'application est dans la RAM, le cycle
d'exécution du programme se déroule comme suit :
1. La CPU émet (1) l'adresse de l'emplacement mémoire contenant l'instruction
requise (cette adresse est conservée dans le compteur de programme). L'exemple
d'adresse est présenté sous forme hexadécimale (3A24), mais il est affiché sous
forme binaire sur les lignes d'adresse du processeur. La logique du décodeur
d'adresse utilise l'adresse pour sélectionner la puce mémoire allouée à cette adresse.
Le bus d'adresses se connecte également directement à la puce de RAM pour
sélectionner l'emplacement individuel, ce qui donne un processus de sélection
d'emplacement mémoire en deux étapes.
2. Le code d'instruction est renvoyé à la CPU depuis la puce RAM via le bus de
données (2). La CPU lit l'instruction du bus de données dans un registre
d'instructions. La CPU décode ensuite et exécute l'instruction (3). Les opérandes
(code à traiter) sont extraits (4) des emplacements suivants dans la RAM via le bus
de données, de la même manière que l'instruction.
3. L'exécution de l'instruction continue en alimentant le ou les opérandes dans la
logique de traitement de données (5). Des données supplémentaires peuvent être
extraites de la mémoire (6). Le résultat de l'opération est stocké dans un registre de
données (7), puis éventuellement dans la mémoire (8) pour une utilisation
ultérieure. Entre-temps, le compteur de programme a été incrémenté (augmenté) à
l'adresse du code d'instruction suivant. L'adresse de l'instruction suivante est ensuite
émise et la séquence est répétée à partir de l'étape 2.
Microprocesseurs (MPU) : Exécution d’un programme
121. 121
Microprocesseurs (MPU) : Système Embarqués (SE)
Système informatique qui sert à exécuter des programmes ; il
procure des résultats ou prend des décisions en fonction des
données introduites.
Critères de performance des Système Embarqués (SE)
122. 122
Ouvrir la porte du garage
Système Embarqués (SE) : Microprocesseurs (MPU)
126. 126
Le type de CPU : 386 , 486, Pentium, 68k, Power PC, Monochip, DSP ...
Les fréquences d'horloge.
Les capacités mémoires RAM et ROM.
Le nombre et la nature des dispositifs d'entrées sorties.
La taille et le nombre des bus de données (8, 16, 32, 64)
La taille le nombre des bus d'adresse (16, 24, 32, 64).
Le type des bus d'extension : ISA, PCI, PCM, VME, PXI, Compac PCI, VXI
Les systèmes d'exploitation utilisés : MSDOS, Windows, UNIX, Noyaux
temps réels.
Microprocesseurs (MPU)
Caractéristiques d’un système informatique
127. 127
Pierre LECOY, Professeur ECP, Technologies opto-electroniques.
J. Cho et al.: White light-emitting diodes , 1600147 (8 of 17)
Anne Julien-Vergonjanne, XLIM , Pourquoi et comment communiquer en Optique Sans Fils : de l’Infrarouge au Li-Fi .
http://www.ledbenchmark.com/faq/LED-interference-issues.html
Andras Kovacs et al., Intelligent control for energy-positive street lighting, Energy, 114 (2016) 40-51.
Fathima Dheena P.P, IOT Based Smart Street Light Management System, ICCS2017
http://www.gridComm-plc.com/- intel.com/iot
https://bushengwang.wordpress.com/2015/06/08/week-13b-smart-city-studies-songdo-and-chicagos-strategies-in-traffic-management/
Latif Ullah Khan, Digital Communications and Networks 3 (2017) 78–88.
Image sensor based visible light communication
Vehicle Motion and Pixel Illumination Modeling for Image Sensor Based Visible Light Communication
Vehicle to vehicle communication using “visible light communication technology”.
Emilie Bialic, Intelligent Transportation Systems & Photovoltaic LiFi Communication Solution.
https://www.bioenabletech.com/smart-traffic-management-system
http://ciscorouterswitch.over-blog.com/2017/02/lifi-vs.wifi-basic-difference-between-lifi-and-wifi.html
Moussa Ayyash et al. Coexistence of WiFi and LiFi towards 5G: Concepts, Opportunities, and Challenges, IEEE Communications Magazine -
February 2016.
LINGJIAOC HEN, et al. Vol. 24, No. 14 | 11 Jul 2016 | OPTICS EXPRESS 15570.
Grzegorz J. Blinowski, intl journal of electronics and telecommunications, 2016, VOL. 62, NO. 1, PP. 7-13.
Jupeng Ding, November 10, 2010 / Vol. 8, No. 11 / chinese optics letters.
Source: http://www.ijcta.com/documents/volumes/vol5issue1/ijcta2014050121.pdf
Visible Light Communication Based Traffic Information Broadcasting Systems
Visible Light Communication for Cooperative ITS
Mayank Swarnkar et al., Architectural Building Protocols for Li-Fi (Light Fidelity),
Aminy E. Ostfeld, Flexible photovoltaic power systems: integration opportunities, challenges and advances, 2017.
http://idm2011bg.com/led-solutions/led-traffic-solutions/solar-traffic-light-system.
Patrizio Primiceri and Paolo Visconti, ARPN Journal of Engineering and Applied Sciences, VOL. 12, NO. 1, JANUARY 2017 ISSN 1819-6608.
Pompage par LED de matériaux laser émettant dans le visible ou l’infrarouge proche.
OLEDs – Cours commun Ecoles Doctorales SPI/SC – L. Vignau
https://www.poal.fr/appfree/filtre-cpl-protection-anti-linky.html
https://www.jechange.fr/telecom/internet/guides/courant-porteur-en-ligne-3587
Andras Kovacs et al., Intelligent control for energy-positive street lighting, Energy 114 (2016) 40-51.
Ram Sharma, Optimal LED deployment for mobile indoor visible light communication system: Performance analysis.
Références
128. 128
Références
F. Z. BELOUADHA, Systèmes embarqués à microcontrôleurs, Filière Génie Informatique-EMI
C. Brunschweiler, Architecture des systèmes embarqués
https://www.ukonline.be/cours/embeddedsystems/programming/chapitre1-1
https://www.gminsights.com/industry-analysis/embedded-system-market
Guy SINNIG, Les bases des systèmes embarqués, IUT – département informatique.
https://blog.orsys.fr/les-carnets/index.php/2015/12/18/tour-dhorizon-des-systemes-embarques-linux/
Les objets connectés Systèmes mobiles et réseaux de capteurs , Conférence Captronic/Openwide – 2 Octobre 2014.
http://drrajivdesaimd.com/2016/07/19/internet-of-things-iot/
The Internet of Things: Vision, Architecture and Applications
https://www.guillaumeriviere.name/estia/poo/tp_iot/
https://axible.io/comprendre-simplement-le-nfc/
http://www.smartgrids-cre.fr/index.php?p=objets-connectes-technologies
Christos Stergiou: Secure integration of IoT and Cloud Computing
https://iotlearners.com/four-pillars-of-iot-m2m-rfid-scada-wsn/
http://www.ameterreading.com/v2/en/iot-versus-m2m-whats-the-difference/
Saber Talari, A Review of Smart Cities Based on the Internet of Things Concept, energies, 2017.
Jorge Higuera, Trends in smart lighting for the Internet of Things
https://www.theengineeringprojects.com/2019/03/introduction-to-dht11.html
Optical Vehicle‐to‐Vehicle Communication System Using LED Transmitter and Camera Receiver.
Etude et réalisation d’un système de communications par lumière visible (VLC/LiFi). Application au domaine Automobile. Alin Cailean
Mesure de distance et transmission de données intervéhicules par phares à LED, Bastien Béchadergue.
https://www.theengineeringprojects.com/2018/06/introduction-to-arduino-uno.html
https://www.lossendiere.com/2017/09/17/famille-carte-arduino/
K.Prathyusha, DESIGN OF EMBEDDED SYSTEMS FOR THE AUTOMATION OF DRIP IRRIGATION
Automatic Irrigation System using Embedded System and GSM Technology
Design of GSM Based Embedded System for Irrigation
https://zarinsam.blogspot.com/2017/07/automatic-irrigation-system-using-8051.html
Microcontroller Based Automatic Drip Irrigation System, Rahul G.
https://www.studyforengineering.com/2018/12/gsm-based-automatic-plant-irrigation.html
https://circuitdigest.com/microcontroller-projects/arduino-automatic-plant-watering-system
https://www.elprocus.com/smart-irrigation-system-using-iot/
M. Safdar Munir et al., Design and Implementation of an IoT System for Smart Energy Consumption and Smart Irrigation in Tunnel Farming
https://www.hackster.io/renesas-team-sece/smart-agriculture-system-with-iot-2efb66
Souvanxay Lorvanleuang*, Yandong Zhao, Automatic Irrigation System Using Android
Pham Viet Hung, Linux Embarqué et Système Embarqué , 2005.
https://www.pantechsolutions.net/iot-based-smart-irrigation-system-using-fpga
https://www.culture-informatique.net/cest-quoi-le-cloud/
https://www.ionos.fr/digitalguide/serveur/know-how/fog-computing/
129. 129
Pierre LECOY, Professeur ECP, Technologies opto-electroniques.
J. Cho et al.: White light-emitting diodes , 1600147 (8 of 17)
Anne Julien-Vergonjanne, XLIM , Pourquoi et comment communiquer en Optique Sans Fils : de l’Infrarouge au Li-Fi .
http://www.ledbenchmark.com/faq/LED-interference-issues.html
Andras Kovacs et al., Intelligent control for energy-positive street lighting, Energy, 114 (2016) 40-51.
Fathima Dheena P.P, IOT Based Smart Street Light Management System, ICCS2017
http://www.gridComm-plc.com/- intel.com/iot
https://bushengwang.wordpress.com/2015/06/08/week-13b-smart-city-studies-songdo-and-chicagos-strategies-in-traffic-management/
Latif Ullah Khan, Digital Communications and Networks 3 (2017) 78–88.
Image sensor based visible light communication
Vehicle Motion and Pixel Illumination Modeling for Image Sensor Based Visible Light Communication
Vehicle to vehicle communication using “visible light communication technology”.
Emilie Bialic, Intelligent Transportation Systems & Photovoltaic LiFi Communication Solution.
https://www.bioenabletech.com/smart-traffic-management-system
http://ciscorouterswitch.over-blog.com/2017/02/lifi-vs.wifi-basic-difference-between-lifi-and-wifi.html
Moussa Ayyash et al. Coexistence of WiFi and LiFi towards 5G: Concepts, Opportunities, and Challenges, IEEE Communications Magazine -
February 2016.
LINGJIAOC HEN, et al. Vol. 24, No. 14 | 11 Jul 2016 | OPTICS EXPRESS 15570.
Grzegorz J. Blinowski, intl journal of electronics and telecommunications, 2016, VOL. 62, NO. 1, PP. 7-13.
Jupeng Ding, November 10, 2010 / Vol. 8, No. 11 / chinese optics letters.
Source: http://www.ijcta.com/documents/volumes/vol5issue1/ijcta2014050121.pdf
Visible Light Communication Based Traffic Information Broadcasting Systems
Visible Light Communication for Cooperative ITS
Mayank Swarnkar et al., Architectural Building Protocols for Li-Fi (Light Fidelity),
Aminy E. Ostfeld, Flexible photovoltaic power systems: integration opportunities, challenges and advances, 2017.
http://idm2011bg.com/led-solutions/led-traffic-solutions/solar-traffic-light-system.
Patrizio Primiceri and Paolo Visconti, ARPN Journal of Engineering and Applied Sciences, VOL. 12, NO. 1, JANUARY 2017 ISSN 1819-6608.
Pompage par LED de matériaux laser émettant dans le visible ou l’infrarouge proche.
OLEDs – Cours commun Ecoles Doctorales SPI/SC – L. Vignau
https://www.poal.fr/appfree/filtre-cpl-protection-anti-linky.html
https://www.jechange.fr/telecom/internet/guides/courant-porteur-en-ligne-3587
Andras Kovacs et al., Intelligent control for energy-positive street lighting, Energy 114 (2016) 40-51.
Ram Sharma, Optimal LED deployment for mobile indoor visible light communication system: Performance analysis.
Références
130. 130
http://100futurs.fr/blog/loi-de-moore-les-illusions-fonctionnelles-du-futurologue/
https://www.healthline.com/health-news/scientists-developing-nanorobots-to-kill-cancer-tumors#1
http://www.indianjcancer.com/article.asp?issn=0019-
509X;year=2015;volume=52;issue=2;spage=236;epage=241;aulast=Saxena
Introduction aux systèmes embarqués, EMB7000
https://microprocesseurs.communiquons.org/fonctionnementMathematique/typesDeMicroprocesseurs/
http://microprocesseur.over-blog.com/pages/Familles_de_Microprocesseurs-1096246.htm
http://microprocesseur.over-blog.com/pages/Familles_de_Microprocesseurs-1096246.html
http://gei.insa-toulouse.fr/fr/formation_initiale/automatique_electronique/embedded-smart-power-electronics/espe-programme-
detaille.html
M. MURUGANANDAM Asst. Professor/EEE, EMBEDDED SYSTEM BASICS AND APPLICATION, Muthayammal Engineering College,
Rasipuram-637 408.
Martin Bates, PIC Microcontrollers, An Introduction to Microelectronics, Third Edition 2011.
https://rmdiscala.developpez.com/cours/LesChapitres.html/Cours1/Chap1.5.htm
Références