Augmenter la flexibilité d’un système et réduire sa consommation par des solutions architecturales

Télécharger le fichier pdf d’un mémoire de fin d’études

Capteurs

Le but du capteur dans un nœud de capteur est de mesurer une grandeur physique et de la convertir en signal électrique. Ce signal électrique analogique est ensuite converti en signal numérique grâce à des convertisseurs analogique-numérique (ADC 9) directement dans le capteur ou grâce aux ADC du microcontrôleur. Il existe une multitude de capteurs dont une liste non exhaustive est donnée dans le tableau 8.2 en annexe A.3. Différents types de capteurs sont présentés que ce soit pour des mesures acoustiques, chimiques, environnementales, de déplacements/vibrations/angles, physiologiques, de radiations, de positions, optiques ou mécaniques. Le tableau 8.2 en annexe A.3 montre des exemples de capteurs du commerce qui peuvent être utilisés pour des nœuds de capteurs sans fil. Leur référence, leur interface avec le microcontrôleur ainsi que leur consommation en activité ou au repos sont présentées. La consommation moyenne d’un capteur dans une application dépend fortement de la fréquence d’échantillonnage de celui-ci et est entièrement dépen-dante de l’application. Il est possible de voir que les consommations de certains capteurs sont relativement élevées que ce soit en mesure (16,5 mA pour le GPS, 3,7 mA pour la centrale inertielle) ou au repos (300 µA pour le GPS et 8 µA pour la centrale inertielle). Il faudra donc adapter la fréquence d’échantillonnage du capteur à l’application pour avoir le meilleur rapport consommation/performance. Il serait aussi possible de couper l’alimen-tation de ces capteurs pour réduire davantage leur consommation statique au repos.

Microcontrôleur

Le microcontrôleur est le centre de calcul et de contrôle du nœud de capteurs. Dans cette section nous allons passer en revue les différentes tâches de celui-ci ainsi que quelques exemples de microcontrôleurs du commerce utilisés pour les nœuds de capteurs communi-cants et l’ordre de grandeur des consommations. L’architecture du microcontrôleur ainsi que les réalisations de la littérature seront présentées en détail à la section 2.1. Dans un nœud de capteurs, le microcontrôleur est en charge des tâches de transfert des données pro-venant des capteurs vers la mémoire du microcontrôleur en passant par des périphériques de communications ou par des ADCs. Ensuite, celui-ci doit effectuer des calculs sur ces données brutes pour les transformer en données utiles et agir sur des actionneurs suivant ces valeurs et suivant l’application. Il peut aussi envoyer les données utiles à la radio en passant par des périphériques de communication en gérant la couche MAC de celle-ci pour centraliser ces données sur les serveurs applicatifs et traiter globalement l’ensemble des données provenant de tous les nœuds de capteurs. Le microcontrôleur est aussi en charge, la plupart du temps du réveil du nœud entier grâce à l’utilisation de timer et d’horloges très basse consommation. Les tâches les plus courantes pour le microcontrôleur sont donc les transferts de données de ses périphériques à sa mémoire dans le cadre des mesures sur les capteurs ou de la réception de données par la radio, des transferts de données de sa mémoire à sa mémoire pour les calculs sur les données brutes aux données utiles et des transferts de sa mémoire à ses périphériques dans le cadre de transmissions radio. Les tâches de réveil sont aussi des tâches courantes pour un nœud de capteurs communicant, que ce soit pour allumer ou éteindre ses modules internes ou pour mettre la radio et les capteurs dans des modes de consommation différents. De plus, les ressources en calcul peuvent être plus ou moins importantes suivant l’application. C’est pourquoi des instructions pour le traitement du signal (instruction DSP 10) sont implémentées dans le cœur de processeur ainsi que des instructions pour des opérations arithmétiques pour nombres flottants (FPU 11), comme dans le cœur de processeur ARM Cortex M4 [33]. Certains mi-crocontrôleurs du commerce sont illustrés figure 1.7. Le microcontrôleur STM32L0 [145] de STMicroelectronics utilise l’architecture du Cortex M0+ [32]. Il est capable d’atteindre 0,27 µA dans son mode de consommation le plus bas avec seulement deux lignes d’inter-ruptions disponibles et 6,3 mA de consommation pour une fréquence de 32MHz en mode d’exécution. Les microcontrôleurs SAMD20-21 [37] utilisent aussi l’architecture du Cortex M0+ et atteignent une consommation de 6,32 mA pour une fréquence de 48 MHz et 2,70 µA dans son mode de consommation le plus bas. Une autre gamme de processeurs com-merciaux est beaucoup utilisée dans le domaine des nœuds de capteurs communicants, il s’agit de la famille des MSP430 [152] de Texas Instruments. Ils ont des consommations de 9,2 mA à 16 MHz en mode actif et 0,1 µA dans son mode de consommation le plus bas.
Il est possible de voir que la consommation des microcontrôleurs peut être élevée en mode actif et que dans le mode de consommation les plus bas, les fonctionnalités restent très limitées pour certaines applications. La section 3 passera en revue les différentes techniques existantes pour réduire la consommation globale du microcontrôleur.
Récupérateurs d’énergie
Comme vu précédemment, pour certaines applications, l’un des objectifs des nœuds de capteurs communicants est d’avoir une très grande autonomie afin d’éviter de remplacer les batteries de ces nœuds trop souvent. Une des techniques pour avoir des nœuds capteurs avec une autonomie presque illimitée est de récupérer l’énergie directement depuis son environnement grâce à des récupérateurs d’énergie. Plusieurs études ont été menées ces dernières années sur énormément de types de récupérateurs d’énergie pour produire de l’énergie localement dans les nœuds de capteurs communicants [84] [88] [167].
Il existe cinq types d’énergie récupérables :
• l’énergie vibratoire, mécanique, mouvement,
• l’énergie thermique,
• l’énergie électromagnétique,
• l’énergie solaire, lumière,
• l’énergie biologique.
Ces récupérateurs sont présentés dans le détail en annexe A.4. Chaque récupérateur tiré de la littérature est présenté avec son ordre de grandeur de récupération d’énergie et un tableau comparatif est exposé tableau 8.3 en annexe A.4. Les puissances récupérées sont relativement faibles comparées à la consommation des différentes parties du nœud de capteurs. Le choix du récupérateur (ou des récupérateurs) dépend entièrement de l’appli-cation visée. Il faudra donc prendre garde à bien dimensionner les récupérateurs et chaque partie du nœud de capteurs en fonction de l’énergie disponible, et gérer les scénarios en fonction de celle-ci. Le tableau 8.3 de l’annexe A.4 récapitule les principaux résultats pour les différentes techniques de récupération d’énergie.

Stockage de l’énergie

Le stockage de l’énergie dans un nœud de capteurs communicant est primordial. Il faut que cette source de stockage soit capable de supporter les pics de puissance maximale à fournir au nœud (de l’ordre du milliwatt) et à fournir de l’énergie suffisamment longtemps pour respecter le cahier des charges du nœud en rapport avec l’application. Même lorsque des récupérateurs d’énergie sont utilisés, il faut, dans beaucoup de cas, ajouter une source de stockage tampon afin de permettre au système de fonctionner même lorsqu’aucune récupération d’énergie n’est possible. De plus, les ordres de grandeur des puissances ré-cupérées sont la plupart du temps largement en dessous de la puissance pic consommée. C’est pourquoi une source de stockage intermédiaire est souvent nécessaire.
Le diagramme de Ragone de la figure 1.8 permet d’évaluer les différents moyens de stockage avec leur densité massique d’énergie (Wh/Kg) en fonction de densité massique de puissance que ces moyens de stockage (W/Kg) sont capable de supporter.
Aujourd’hui les moyens de stockage les plus utilisés pour les nœuds de capteurs commu-nicants sont les condensateurs/supercondensateurs et les batteries électrochimiques, telles que le Lithium-Ion (Li-Ion) ou Lithium-Polimère (LiPo). Le diagramme de Ragone figure 1.8 montre que les condensateurs/supercondensateurs ont des très grandes densités mas-siques de puissance avec une très faible densité massique d’énergie. Ils sont donc parfaits pour fournir rapidement beaucoup de puissance mais, en contrepartie, ils ne peuvent pas maintenir cette puissance pendant très longtemps. Les batteries électrochimiques comme les Li-Ion ont une forte densité massique d’énergie mais des faibles densités massiques de puissance. Les LiPo ont une forte densité massique d’énergie (de l’ordre de 250 Wh/kg) et peuvent atteindre aujourd’hui des puissances pic de sortie assez élevées, ce qui permet d’avoir de petites batteries pour des capacités d’énergie et des courants pic élevés. Le problème de ces batteries électrochimique restant le nombre de cycle de recharge.
Module de gestion de l’énergie
Le module de gestion de l’énergie permet de distribuer l’énergie à tous les modules du nœud de capteurs, de convertir la tension d’alimentation provenant du moyen de stockage ou des récupérateurs d’énergie pour les adapter aux tensions de chaque module du nœud mais aussi de recharger le moyen de stockage grâce aux récupérateurs d’énergie quand il y en a.
Une présentation des différents convertisseurs et gestionnaires d’énergie du commerce pour nœuds de capteurs est effectuée en annexe A.5.
Par exemple, Christmann et al. [63] [61] [62] ont développé un gestionnaire d’énergie multi sources de récupérations et de stockages et multi sorties avec un contrôleur asynchrone et sensible à des évènements énergétiques. Ils ont mis en place une architecture d’alimentation à chemin de puissance multiple avec un chemin direct d’alimentation à haut rendement entre les récupérateurs d’énergie et les charges consommantes (figure 1.9). Ce système permet d’optimiser le rendement énergétique entre les récupérateurs, les ca-pacités et batteries et les charges consommantes. Les auteurs ont développé deux types de requêtes d’énergie, les requêtes immédiates et les requêtes opportunistes. Les requêtes immédiates consistent à fournir immédiatement l’énergie provenant des capacités char-gées par les récupérateurs et si l’énergie pour exécuter la tâche n’est pas suffisante alors la batterie fournit le reste de l’énergie. La requête d’énergie opportuniste va permettre, par contre, d’attendre que la capacité soit chargée suffisamment pour l’exécution de la tâche et l’exécute uniquement quand la capacité a atteint le niveau nécessaire. Le gestion-naire d’énergie réussit à obtenir 40% de gain d’efficacité énergétique et une consommation moyenne du contrôleur de 1µA dans la technologie 180nm. D’autres travaux comme le nœud de capteurs PowWow de Sentieys et al. [43] utilisent un FPGA pour s’occuper des modes de consommation du nœud et de la DVFS 12 du microcontrôleur MSP430. Un ges-tionnaire d’énergie LTC3108 peut gérer trois types de récupérateurs d’énergie ainsi que la recharge de différents moyen de stockage de l’énergie.
Historique des réalisations de nœuds de capteurs com-plets
Comme vu précédemment, les nœuds de capteurs sont constitués d’une multitude de composants qu’il faut dimensionner et interconnecter convenablement en fonction des be-soins applicatifs. Dans la littérature et dans le commerce, de nombreuses réalisations ont été faites et les principales vont être présentées dans cette section. Pour chacune d’entre elles, une présentation de leur consommation ainsi que leurs caractéristiques sera résumée dans le tableau 1.1.
Démonstrateurs de laboratoires
Nœuds de taille millimétrique
Dans la littérature, plusieurs nœuds de capteurs ont été conçus pour atteindre des tailles millimétriques en empilant les différentes puces, batterie ultrafine et récupérateurs d’énergie les uns sur les autres et en les reliant par des fils de connexions (par technique de wirebonding) [60] [101] [98]. Dans [60], l’équipe a conçu un nœud de capteurs pour mesurer la pression interne de l’œil dans le cadre de la maladie du glaucome (figure 1.10). Son volume est de 1, 5mm3 et contient le transceiver pour communiquer à courte portée (10cm), l’unité de gestion de l’énergie avec des cellules photovoltaïques (PV), la batterie ultrafine ainsi que le microcontrôleur et le capteur de pression intraoculaire. Le transceiver radio est alimenté par RF au moment de transmettre les données. Ce nœud est capable de consommer en moyenne 5,3nW pour une mesure de la pression interne de l’œil toutes les 15 minutes. Les cellules solaires sont capables de fournir 80,6nW à la batterie en en-soleillement. Le processeur consomme 90nW en mode actif en étant alimenté sous le seuil (Sub-Vt 13) et 71,8pW en mode de repos le tout dans la technologie 180nm.
Dans [101] l’équipe du professeur Sylvester a développé un nœud de capteurs d’un volume de 1mm3 ayant comme principal capteur un imageur de 96× 96 pixels consommant 680nJ par image. La partie numérique comporte deux processeurs ARM cortex M0 dont l’un sert aux calculs avec une mémoire volatile pour le traitement de l’image (cœur de traitement du signal conçu dans une puce en technologie 65nm, alors que l’autre sert au contrôle de l’application et est implémentée avec sa mémoire de rétention pour le programme dans une puce de technologie 180nm. Toutes les couches (imageur et cellules solaires de 0, 54mm2, batterie de 0.6µAh, cœur DSP, cœur de contrôle et communication optique ainsi que les capacités de découplage) sont empilées et reliées par wirebonding (figure 1.10). Le circuit arrive à atteindre des consommations de 40µW en mode actif et 11nW en mode de repos. Dans [98], l’équipe du professeur Sylvester a ensuite développé un nœud de volume 2 × 4 × 4mm3 avec un imageur de résolution supérieure : 160 × 160 pixels (figure 1.10). Ce nœud est capable de détecter en continu des mouvements avec seulement 304nW de consommation et 15nW en mode de repos. Ce système est toujours basé sur un processeur ARM Cortex M0 et possède une cellule solaire de 2, 5mm2 pouvant fournir une charge à la micro batterie jusqu’à 120nA.
Nœuds de taille centimétrique
Plusieurs équipes ont également créé des nœuds de capteurs de tailles centimétriques avec des composants discrets soudés sur PCB 14. PicoCube [59] est un nœud de 1cm3 com-posé de 5 PCBs empilés (figure 1.11). Ce nœud intègre un microcontrôleur MSP430, un capteur de pression de pneu (TPMS 15), un accéléromètre, une radio conçu pour l’applica-tion et consommant 1,35mW, des interrupteurs de puissance (power switchs), une batterie NiMH et super-capacité. Ce système est aussi capable de récupérer l’énergie vibratoire pour alimenter et recharger la batterie. En moyenne PicoCube consomme 6µW pour l’ap-plication de mesure de la pression des pneus. Un microsystème implantable sans fil pour l’enregistrement neuronal multicanaux [138] a été développé par l’équipe de Sodagar. Ce nœud de 1, 4cm × 1, 55cm permet d’enregistrer simultanément sur 64 canaux l’activité neuronale d’une personne (figure 1.11). Ce nœud étant directement implanté sous la boite crânienne, une alimentation par couplage inductif au niveau de la partie réception de la radio a été nécessaire. Ce nœud consomme en moyenne 14,4mW pour un scan des canaux à 62.5kS/s. Pour cela deux processeurs neuronaux (NPU 16) sont utilisés pour échantillonner chacun 32 canaux. Dans [43], l’équipe de Sentieys a développé un nœud de capteur Pow-Wow intégrant comme processeur le MSP430, un FPGA 17 pour l’accélération de tâches de calculs comme les codes correcteurs d’erreurs mais aussi pour les tâches de gestion de la puissance et de la fréquence en appliquant de la gestion dynamique de fréquence et de la tension (DVFS 18) sur le processeur. De plus, le FPGA qui est placé entre le processeur et la radio CC2420 [150], est capable de filtrer les paquets reçus et de réveiller uniquement le processeur quand cela est utile. Il peut aussi modifier dynamiquement la puissance de la radio en fonction des conditions du canal. Toutes ces techniques permettent de réduire considérablement la consommation globale du nœud. Le FPGA consomme de 2.2µW à 30mW suivant le mode de consommation et ce qui est exécuté pendant que le processeur consomme 330µA à 1 MHz et 2,2 V et 1, 1µA dans le mode de veille. Ce nœud est ca-pable aussi de pouvoir gérer différents récupérateurs d’énergie ainsi que différents types de stockage d’énergie.
Nœuds de capteurs commerciaux
Dans le commerce, beaucoup de nœuds de capteurs ont également été développés. Le nœud de Texas Instrument TIDA-00374 [159] intègre un capteur de température/humidité et un système sur puce (SoC 19) CC2650 [156] contenant la radio, le processeur principal et un processeur pour les tâches courantes. La radio contient elle-même un processeur ARM cortex M0 pour gérer la couche MAC (Bluetooth, Zigbee, 6LowPAN, RF4CE). Le processeur principal est un ARM Cortex M3 et le processeur pour les tâches courantes, appelé Sensor Controller, est un processeur avec un jeu d’instructions 16-bit semblable
à celui du MSP430. Ce SoC intègre bien sûr tous les périphériques nécessaires pour des nœuds de capteurs communicants. Ce nœud intègre aussi un power switch pour couper l’alimentation du SoC et du capteur piloté par un timer, le tout alimenté par une pile bouton 3V. Il atteint des consommations de 183nA en mode de veille et 4mA en mode actif pour une durée de vie estimé à 10 ans. Libelium a développé un nœud de capteurs [106] très modulaire pouvant accueillir énormément de types de cartes filles différentes suivant l’application visée. Cette carte principale intègre un microcontrôleur ATmega 1281 d’ATMEL. Elle consomme 15mA en mode actif et 55µA en mode de veille. N’importe quel type de radio (Zigbee, Bluetooth, LoRa, Sigfox, Wifi, 3G, NFC) et différents types de capteurs sont proposés par Libelium (GPS, gaz, détection de mouvement, capteur pour l’eau, acoustique, agriculture, caméra, radiation…) pour les brancher directement sur la carte principale.
Synthèse
Nous avons pu étudier l’architecture d’un nœud de capteurs communicant ainsi que la consommation de différentes réalisations, que ce soit celles du commerce ou de la littéra-ture. La consommation d’un nœud peut varier de quelque nW en mode de veille à plusieurs mW lorsque la radio communique ou que des mesures sont faites sur les capteurs. Lorsque l’application et les contraintes sont parfaitement définies, il est alors possible d’atteindre des nœuds de taille millimétrique et donc d’atteindre des consommations de l’ordre de la centaine de nW en mode actif ce qui permet de récupérer l’énergie dans son environnement pour une autonomie presque perpétuelle. Malheureusement ces nœuds de capteurs sont le plus souvent dédiés à une application pour atteindre des consommations aussi faibles et manquent considérablement de flexibilité. C’est pourquoi des nœuds de taille centimé-trique qui utilisent des composants d’étagère (COTS 20) sont développés pour englober énormément d’applications. Évidement les consommations sont plus importantes mais la modularité du nœud est énorme ce qui est très important dans l’industrie pour développer rapidement des prototypes et pour avoir très peu de modifications du logiciel embarqué. Toutefois, la consommation de chacune des entités du nœud doit continuer à être réduite pour augmenter l’autonomie de ces dispositifs. Différentes techniques de réduction de la consommation ont pu être abordées en étudiant les nœuds de capteurs complets mais seront présentées dans le détail au chapitre 3. Le travail de cette thèse se portant tout par-ticulièrement sur la réduction de la consommation du microcontrôleur, il va être présenté, dans la prochaine section, les architectures de microcontrôleur ainsi que les réalisations de la littérature et du commerce.

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela chatpfe.com propose le téléchargement des modèles complet de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

Publications liées au manuscrit
I État de l’art et modélisation 1
1 Marché actuel de l’IoT, architecture des réseaux de communication, applications et nœuds de capteurs communicants
1.1 Marché actuel et prédictions autour de l’Internet des objets
1.2 Représentation globale des réseaux de communication
1.3 Quelles applications pour les nœuds de capteurs ?
1.4 Synthèse
1.5 Nœuds de capteurs sans fil
1.6 Architecture du nœud de capteurs
1.6.1 Radios
1.6.2 Capteurs
1.6.3 Microcontrôleur
1.6.4 Récupérateurs d’énergie
1.6.5 Stockage de l’énergie
1.6.6 Module de gestion de l’énergie
1.7 Historique des réalisations de nœuds de capteurs complets
1.7.1 Démonstrateurs de laboratoires
1.7.1.1 Nœuds de taille millimétrique
1.7.1.2 Nœuds de taille centimétrique
1.7.2 Nœuds de capteurs commerciaux
1.7.3 Synthèse
2 Microcontrôleurs pour nœuds de capteurs sans fil
2.1 Architecture des microcontrôleurs
2.1.1 Architecture globale d’un microcontrôleur
2.1.2 Cœur de processeur
2.1.3 Mémoires
2.1.3.1 Mémoire Volatile
2.1.3.2 Mémoire Non Volatile
2.1.4 Horloge
2.1.5 Module de sécurité et autres accélérateurs matériels
2.1.6 Unité de gestion de l’énergie et des horloges
2.1.7 Périphériques
2.2 Réalisations de microcontrôleurs
2.2.1 Système sur puce de laboratoires
2.2.2 Système sur puce commerciaux
2.3 Pourquoi réduire la consommation du microcontrôleur et pour quelles applications ?
2.4 Synthèse
3 Perspectives de réduction de la consommation pour le sous système de traitement et de contrôle du nœud
3.1 Augmenter la flexibilité d’un système et réduire sa consommation par des solutions architecturales
3.2 Réduire la consommation d’un système par une gestion intelligente de l’énergie 40
3.3 Augmenter la flexibilité d’un système et réduire sa consommation par la technologie
3.3.1 Polarisation arrière de la technologie UTBB FDSOI
3.3.2 La technologie UTBB FDSOI près du seuil
3.3.3 Élargissement de la largeur de grille de la technologie FDSOI
3.3.4 Co-intégration des différents types de technologie FDSOI
3.4 Avantages de la logique asynchrone
3.5 Synthèse
4 Modélisation de la consommation d’un nœud de capteurs et de son microcontrôleur
4.1 Modèle de consommation d’un nœud de capteurs
4.1.1 Phases applicatives des nœuds de capteurs
4.1.2 Architecture du nœud modélisé
4.1.3 Mises en équation du modèle de consommation
4.1.4 Étude de cas d’un nœud de capteur
4.1.4.1 Scénario de Réception
4.1.4.2 Scénario de Mesure
4.1.5 Synthèse
4.2 Impact de l’utilisation d’un processeur de réveil
4.2.1 Architecture du microcontrôleur simulé
4.2.2 Modes de consommation du microcontrôleur
4.2.3 Spécification du processeur de réveil dans chaque phase applicative
4.3 Simulations de la consommation d’un microcontrôleur dans des scénarios de nœuds de capteurs avec et sans processeur de réveil
4.3.1 Simulations dans les différentes phases applicatives
4.3.2 Simulations dans la phase de rétention
4.3.3 Simulations dans la phase de réception, transmission et mesure
4.3.4 Simulations dans la phase de calcul
4.3.5 Simulations dans des scénarios applicatifs
4.3.5.1 Scénario avec une très faible activité
4.3.5.2 Scénario avec une activité moyenne
4.3.6 Synthèse
II Conception d’un processeur de réveil ultra basse consommation 
5 Spécifications et architecture
5.1 Méthodologie de travail
5.2 Architecture partitionnée du microcontrôleur
5.3 Modèle de programmation et tâches exécutées par la plateforme de réveil
5.3.1 Tâches exécutées par le processeur de réveil
5.3.2 Programmation évènementielle
5.3.3 Exemple de programmation par machine d’état
5.4 Jeu d’instructions et spécifications
5.4.1 Architecture RISC 16 bits
5.4.2 Spécifications
5.4.2.1 Gestions des interruptions
5.4.2.2 Types de données gérées
5.4.2.3 Modes de consommation
5.4.2.4 Reset et boot du système
5.4.2.5 Périphériques de la plateforme de réveil
5.4.2.6 Débogage sur puce
5.4.2.7 Système d’alimentation
5.4.3 Jeu d’instructions
5.4.3.1 Instructions mémoire
5.4.3.2 Instructions arithmétiques et logiques
5.4.3.3 Instructions de branchements
5.4.3.4 Instructions d’appels aux fonctions
5.4.3.5 Instructions spéciales
5.4.3.6 Encodage du jeu d’instructions
5.5 Architecture de la plateforme de réveil
5.5.1 Architecture du processeur
5.5.2 Diagramme de temps d’une interruption et boucle Fetch-DecodeExecute
5.5.3 Gestion des branchements
5.5.4 Gestion de la taille des données, contenu de la mémoire de programme/données et memory map
5.5.5 Débogage sur puce du processeur
6 Microarchitecture de la plateforme de réveil
6.1 Méthode de conception asynchrone
6.1.1 Concepts de base des circuits asynchrones
6.1.1.1 Synchronisation locale entre les modules de contrôle
6.1.1.2 Caractéristiques des opérateurs asynchrones
6.1.2 Circuits asynchrones quasi-insensibles aux délais (QDI)
6.1.2.1 Porte de Muller
6.1.2.2 Exemple de propagation d’évènements dans un pipeline asynchrone et exemple de porte logique en logique QDI
6.1.3 Avantages et inconvénients de la logique asynchrone
6.1.3.1 Pipeline élastique
6.1.3.2 Circuit adapté à des évènements non déterministes
6.1.3.3 Calcul en temps minimum et temps moyen
6.1.3.4 Absence d’horloge
6.1.3.5 Consommation évènementielle et lisse
6.1.3.6 Robustesse des circuits asynchrones et souplesses d’alimentation
6.1.3.7 Augmentation de la surface du circuit
6.1.4 Exemples de description de modules asynchrones en SystemVerilog avec les outils de Tiempo
6.2 Architecture de la mémoire de programme et données
6.2.1 Caractéristiques de la mémoire
6.2.2 Protocole d’accès à la mémoire
6.2.3 Architecture de l’interface mémoire
6.2.4 Architecture des chaines de délai
6.3 Microrchitecture des modules internes
6.3.1 Contrôleur d’interruptions
6.3.2 Décodeur
6.3.3 Unité PC
6.3.4 Banc de registres
6.3.5 Bus de communication
6.3.6 Unité load – store
6.3.7 Unité arithmétique et logique
6.3.8 Unité de branchement
6.3.9 Unité de déplacement
6.3.10 Unité de support aux fonctions
6.3.11 Unité de debug
6.4 Environnement logiciel
6.5 Environnement de conception et simulation
6.5.1 Hiérarchie des modules du circuit pour la simulation mixte asynchronesynchrone
6.5.2 Flot de conception du circuit
6.6 Conclusion
7 Implémentation physique, tests, performances et consommation du processeur de réveil
7.1 Implémentation physique du circuit complet
7.1.1 Architecture globale du circuit et partitionnement des domaines de puissance
7.1.2 Architecture de la macro finale asynchrone
7.1.3 Architecture des détecteurs de fronts
7.1.4 Implémentation physique et résultats en surface
7.2 Test du circuit
7.2.1 Circuit
7.2.2 Carte de test
7.3 Programmes de test et benchmark pour microcontrôleur de nœuds de capteurs communicants
7.3.1 Drivers du circuit
7.3.2 Programmes de test pour l’estimation de la consommation du processeur de réveil
7.3.3 Benchmark pour nœuds de capteurs communicants
7.4 Performances et consommation de la plateforme de réveil et d’un circuit de comparaison
7.4.1 Estimation en performances de la plateforme de réveil
7.4.2 Estimation de la consommation de la plateforme de réveil
7.4.3 Étude du programme généré par le compilateur du WUC
7.4.4 Positionnement vis-à-vis de l’état de l’art
7.4.5 Conclusion
Conclusion générale et perspectives
Références Bibliographiques

Télécharger le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *