présentée
DEVANT L'ÉCOLENORMALE SUPÉRIEURE DELYON
pour obtenir
LE GRADE DE DOCTEUR
ÉCOLE DOCTORALE : MathIF
PAR
Niolas Fournel
ESTIMATION ET OPTIMISATION DE
PERFORMANCES TEMPORELLES ET
ÉNERGÉTIQUES POUR LA CONCEPTION
DE LOGICIELS EMBARQUÉS
Soutenue le : 23 Novembre 2007 devant la Commission d'Examen
Jury
Pr BrunoAllard, INSAde Lyon, examinateur
Pr DanielEtiemble, université Paris sud, rapporteur
Pr Paul Feautrier, ENS deLyon, direteur
DrAntoine Fraboulet, INSA deLyon, o-enadrant
DR-CNRSJean-Mihel Muller,LIP/ENS de Lyon, examinateur
L'évolution de la tehnologie permet aux onepteurs d'intégrer dans les systèmes embar-
qués de plusen plus de puissanede alulet de fontionnalités.Cette roissanede puissane
s'aompagne malheureusement d'unehaussedel'énergieonsomméepar l'appareilquelateh-
nologie des batterie est inapable de ompenser. Les méanismes matériels mis en plae pour
ontenir ette onsommation dans le but de limiter le poids des batteries ne susent plus et
néessite l'intervention du logiiel pour les ontrler. Pour aider la oneption du logiiel an
qu'il tirele meilleuravantaged'unpoint de vueénergétiquedesapaités de laplateforme ma-
térielle, ledéveloppeur doitavoirdes retourssur laonsommation életrique dusystème. Nous
proposons danses travaux, une méthodologie permettant une aratérisation simpleet rapide
d'unsystèmematérielomplet.Laalibrationdeemodèleutilisedesmesuresphysiquessimples
surlematérielpour lerendrefailement adaptableà denouveaux systèmes.Nousproposons de
même un outil de simulation qui permet une exploitation de ette modélisation en remontant
desinformations de onsommation au niveau du ode soure de l'appliation analysée, tout en
prenant en hargeledésynhronisation entrele logiieletertainsévénements matériels.
Currenttehnologytrendallowshardwaredesignerstoembedmoreandmoreomputational
powerand features.Thistrendunfortunately omeswithan energyonsumption growth whih
battery tehnology fails to takle. Hardware adaptations for energy onsumption redutionare
limited and need a software ontrol. To help software design in order to optimize hardware
apabilities of a platform, developers need feed-bak about system energy onsumption. We
propose a methodology allowing a fast and simple haraterization of a omplete platform.
Model alibration is based on real platform physial measures. This allows the model to be
easily adaptable to new systems.We also propose a software simulation tool allowing an easy
and fast usage of the previous haraterization and a fast identiation of the most energy
hungry partof the softwarebyprovidinga soureode annotation. Thisbak-annotation fairly
reports peripheralsonsumption bytakinginto aount peripheralsasynhronousevents.
Jeremerieenpremierlieumesdeuxdireteursdethèse,PaulFeautrieretAntoineFraboulet
pourleur diretion élairée sanslaquellees travaux ne seraient pasdevenus e qu'ilssont.
Je tiens à remerier plus partiulièrement mes parents et ma famille pour leur soutien in-
faillibleau ours detoutes esannées.
Et pour nir, j'envoie un grandmeri à l'ensemble de mes amisque je ne pourrai pasiter
ii,maisqui sereonnaîtront.
1 Introdution 1
2 État de l'art 5
2.1 Généralitéssurlaonsommation . . . 5
2.1.1 Strutured'uniruit intégré numérique . . . 5
2.1.2 Quid delaonsommation életrique desiruits . . . 6
2.1.3 Pourquoi utilise-t-ondesmodèles . . . 9
2.2 Caratérisation dela onsommationéletrique . . . 9
2.2.1 Critères delassiation . . . 10
2.2.2 Classiation . . . 13
2.3 Exploitation desmodèles deonsommation. . . 18
2.3.1 Simulation deproesseur. . . 19
2.3.2 Simulation deplateformes omplètes . . . 20
3 Caratérisation de la onsommation életrique d'un système omplet 23 3.1 Caratéristiques prinipalesdu modèleproposé . . . 23
3.1.1 Un modèlede onsommationde plateforme omplète . . . 24
3.1.2 Un modèleorienté logiiel . . . 25
3.2 Calibration dumodèle . . . 27
3.2.1 Une alibrationpar mesures . . . 27
3.2.2 Montage demesure . . . 28
3.2.3 Constrution debenhmark . . . 29
3.2.4 Quantiation de l'erreur inhérente aumontage. . . 33
3.2.5 Le modèlerésultant . . . 34
3.3 Expérimentations surplateformesréelles . . . 35
3.3.1 Un premierexemple omplet surl'ARM . . . 35
3.3.2 Un modèleappliable surun largepanel de plateformes . . . 54
3.4 Validationdu modèle . . . 55
3.4.1 Méthodologiede validationde lapréision . . . 56
3.4.2 Appliationsde test . . . 56
3.4.3 Résultats . . . 57
4 Mise en ÷uvre du modèle par simulation 59 4.1 Environnement de développement lassique . . . 59
4.2 Instrumentation du modèlede onsommation életrique . . . 61
4.2.1 Simulation delaplateforme omplète . . . 62
4.2.2 Analysede trae d'exéution . . . 63
4.2.3 Trae d'exéution . . . 65
4.3 Exemplesd'implantation desoutilsde simulation . . . 69
4.3.2 Compromis desimulations . . . 70
4.4 Exploitation desrésultats . . . 72
4.4.1 Traes linéaires . . . 73
4.4.2 Informations globales. . . 73
4.4.3 Annotationdu odesoure . . . 73
4.4.4 Exemple . . . 74
4.5 Deux manièresde ompterl'énergie despériphériques. . . 77
4.5.1 La méthode standard. . . 77
4.5.2 Une modélisationsimple desommuniations . . . 80
4.5.3 Une annotationdu ode soure modiée . . . 80
4.5.4 Un omparatifde résultat . . . 84
4.6 Bilande etteinstrumentation . . . 85
5 Appliations 87 5.1 Comparaison/Évaluation de programmes . . . 87
5.1.1 Évaluationd'algorithmesde ryptographie . . . 87
5.1.2 Évaluationd'algorithme deramasse-miettes . . . 93
5.2 Exploitation desniveaux mémoires . . . 93
5.2.1 Miseen évidene del'impat . . . 93
5.2.2 Modélisationduproblème . . . 99
5.3 Coneption d'appliations ommuniantes pour les réseauxde apteurs . . . 102
6 Limites et extensions 111 6.1 Mémoirevirtuelle . . . 111
6.1.1 Fontionnement de laMMU . . . 111
6.1.2 Problème . . . 113
6.1.3 Cequi marhe . . . 114
6.1.4 Alternatives . . . 114
6.2 Traçage de lamémoire . . . 114
6.2.1 Motivation . . . 115
6.2.2 Réalisation . . . 115
6.3 Extension aumulti-÷ur . . . 116
6.3.1 Tendane atuelle. . . 116
6.3.2 Comment le faire . . . 116
7 Conlusion 119
Bibliographie 121
2.1 Struturedessystèmes embarqués . . . 6
2.2 Laporte élémentaire,l'inverseur . . . 7
2.3 Consommation dynamique:hargede laapaitéde sortie. . . 7
2.4 Consommation dynamique:ourant de ourt-iruit . . . 8
2.5 Consommation statique:ourant de fuite . . . 8
2.6 Utilisationd'unmodèle deonsommation . . . 9
2.7 Niveaude granularité. . . 10
2.8 Calibration par simulation . . . 11
2.9 Calibration par mesures . . . 12
3.1 Exemple abstraitde plateforme . . . 24
3.2 Niveaud'abstration du modèleproposé . . . 28
3.3 Exemple deahe assoiatifpar ensemble . . . 31
3.4 ARMIntegratorCM922T-XA10. . . 36
3.5 Arhiteture del'ARM CM922TXA10 . . . 37
3.6 Consommation générée par Linuxsurl'IntegratorCM922T . . . 39
3.7 Représentation shématique du montagede mesures . . . 41
3.8 Signaux éhantillonnés à2,5 GHz . . . 42
3.9 Signaux éhantillonnés à1,25 GHz . . . 43
3.10 Resultats d'aquisition . . . 44
3.11 Système utilisé pour les mesures. . . 45
3.12 Montage demesure enours d'utilisation. . . 46
3.13 Inuenede lafréquene . . . 51
3.14 Variationde l'énergielors d'unhangement defréquene defontionnement . . . 52
3.15 Le WSN430 . . . 54
3.16 Arhiteture duwsn430 . . . 54
3.17 Courbes umulatives de laonsommation(simulation et mesures) . . . 58
4.1 Chaînede developpement standard . . . 60
4.2 Chaînede dévelopement étendue . . . 62
4.3 Génération de traed'exéution . . . 66
4.4 Strutured'informations :instrution. . . 67
4.5 Strutured'informations :défautahe/MMU . . . 67
4.6 Strutured'informations :aès mémoire/bus . . . 68
4.7 Strutured'informations :périphérique . . . 68
4.8 Code soure del'appliation d'exemple . . . 74
4.9 Exemple detrae d'exéution . . . 75
4.10 Exemple deprol d'annotation deode soure . . . 76
4.11 Visualisationdu odesoure annotéave KCahegrind (vue1) . . . 77
4.12 Visualisationdu odesoure annotéave KCahegrind (vue1) . . . 78
4.14 Évenements asynhrones . . . 79
4.15 Strutured'informations :périphérique . . . 81
4.16 Prise en harge del'asynhronisme . . . 82
4.17 Graphe d'appel . . . 84
4.18 Répartition del'énergie (standard) . . . 85
4.19 Répartition del'énergie (reorrélée) . . . 85
5.1 Fontionsoûteuses del'appliation MPEG2. . . 94
5.2 Annotationdu odesoure de rgb__24_rgb_420() . . . 95
5.3 Code soure annotéde memset() . . . 98
5.4 Code soure dupiloteen attente ative . . . 104
5.5 Code soure dupiloteutilisant les interruptions . . . 104
5.6 Comparaison de laonsommation des pilotes 1 et 2 pour l'envoi d'unpaquet en fontion desataille . . . 105
5.7 Trae linéaire del'envoid'unpaquet (pilote 1). . . 106
5.8 Trae linéaire del'envoid'unpaquet (pilote 2). . . 107
5.9 Énergieonsommée pour unenvoidepaquetenfontion desataille (version1et 3du pilote) . . . 108
5.10 Trae linéaire del'envoid'unpaquet (pilote 3). . . 108
5.11 Énergie par otet pour les troispilotes . . . 109
6.1 Tradutiond'adresse par laMMU dux86 . . . 112
Introdution
Dans les systèmes életroniques numériques atuels, latendane est à l'aroissement de la
puissanedealul.Cetaroissementestmalheureusement aompagnéd'uneaugmentation de
laonsommationéletrique.Mêmesil'évolutiondelatehnologieesdernièresannéespermettait
de limiter e besoin d'énergie en réduisant la taille destransistors qui omposent essystèmes,
la plae ainsi gagnée est réutilisée pour ajouter des fontionnalités. Cette situation n'est mal-
heureusement plusvraie aujourd'hui, puisque l'augmentation des ourantsde fuite ompensent
deplusenpluslesgainsenonsommationéletriquedeladiminutiondelatailledestransistors.
Leontrleetlarédutiondeetteonsommationestdonunepréoupationmajeurequee
soitdanslesgrossystèmes(ordinateursdebureau,serveurs,...)oudanslessystèmesembarqués
(téléphones portables, assistantspersonnels,...).
En eet,dansle premieras, laraison qui pousseà réduireladissipation d'énergie desma-
hinesestdouble,leoûtetlaabilité.Parexempledanslesfermesdeserveurs,oudesentaines
demahines tournent 24hsur24,larédutionneserait-equede10%delaonsommationindi-
viduelledesmahines entraîneraitdéjà unegrosseéonomie. L'installation életriquenéessaire
pour le bon fontionnement est extrêmement oûteuse : une diminution de la onsommation
permetdon de sous dimensionner un peu les installation, et d'enréduire leoût. De plus une
éonomieenfontionnementestaussiréalisée.Laseondepartiedugainestliéeàladissipation
de la haleur. La température est le pire ennemi des très hautes disponibilités attendues pour
es systèmes. La rédution de la onsommation d'énergie életrique se traduit le plus souvent
par undiminution de latempérature dusystème.
Les dispositifs mis en plae dans les bâtiments pour dissiper la haleur produite par les
serveursen fontionnement, deslimatiseurs,dépensentquasiment autant d'énergiequelesser-
veurs, pénalisant ainsi le oût de l'installation etde fontionnement. Ces dispositifs sont aussi
des soures de problèmes de abilité, ar toute avarie sur la limatisation peut entraîner de
gravesréperutionssurlefontionnement desmahines.Le gaindanse ontextevientdon de
larédutiondireteetindirete duoûtetl'amélioration delaabilité.Ce quiestdéritii est
aussivraipour dessystèmes ommeles mahines de bureau,maisà plus petiteéhelle.
Pouresgrossystèmes,laproblématiquedediminutiondelaonsommationvisedonàfaire
réduirel'investissementetlesfrais defontionnement etd'entretien duparinformatique.Pour
des systèmes embarqués, portables plus partiulièrement, l'intérêt de réduire la onsommation
estbien diérent.
Cette seonde préoupation est liée au fait que es matériels sont alimentés par batterie.
Malheureusement la tehnologie utilisée pour fabriquer les batteries a une évolution beauoup
pluslentequeelledes iruitséletroniques. La onséquenede esévolutions estquelaapa-
ité volumique des batteries ne roît pas aussi viteque la onsommation des systèmes qu'elles
alimentent.Labatteriereprésentealors uneressoureénergétiquepartiulièrement limitée.Lors
de la oneption des systèmes de ette atégorie, un soin tout partiulier est don porté pour
limiterlaonsommation. Latendane atuellevaverslaminiaturisation dessystèmesportables
(téléphones portable pesant moins d'une entaine de grammes). Cette tendane ontraint très
fortement les fabriants lors de la oneption pour le hoix entre autonomie et poids de la
batterie.
Depuis de longues années, les onepteurs de proesseurs intègrent des méanismes et des
tehnologiespourréduireladissipationd'énergie,etnotammentladissipationdehaleurpourles
proesseursd'ordinateursdebureauetdeserveurs.La température devenaitunfrein important
danslaourseauxmégahertzs,oniteraparexemplel'éhedupentium4inapabled'atteindre
lafréquenede6GHzenraisondetempératurestropimportantes.Laoneptiondeessystèmes
s'est don mis à tenir de plus en plus ompte de la dissipation par un meilleur étalement des
zonessensibles. Depuisquelquesannées, onnote unpassage àdestehnologies quine sont plus
autonomes,maisquinéessiteunpilotagedelapartdulogiiel.Cegenredetehnologie,omme
l'adaptation de la tension d'alimentation et de la fréquene de fontionnement du proesseur
(DynamiVoltageandFrequenySalingDVFS)permetdesgainsenonsommationdrastiques
en diminuant les performanes dusystème lorsque l'on n'en apas besoin. Un mauvais pilotage
peutdonentraînerunegèneàl'utilisation.C'estlaraisonpourlaquelleonenrelègueleontrle
au logiiel, beauoup mieux plaé pour répondre à es exigenes. Le matériel ne peut se baser
que sur des informations omportementales ontenues dans le passé du logiiel, alors que le
logiiel le système d'exploitation peut avoir des informations sur les besoins futurs de des
appliations. Pour ne iter qu'un exemple de telles tehnologies, on peut prendre l'exemple
d'Intel qui intègre depuis quelquesannées du DVFS danssa gamme de proesseurs embarqués
(StrongARM,XSale)etquifaitlamême hosedepuisplusréemmentsurdesproesseursplus
puissant ave satehnologieSpeedStep.
Dans la suite de e manusrit, nous nous intéresserons plus partiulièrement au as des
systèmes embarqués qui représentent une ible bien plus intéressante, d'une part pare que la
ontraintequereprésentelaapaitédesbatteriesesttrèsimportante,etd'autrepartarilssont
leplus souvent dédiés àune appliation. Laphase d'optimisationest souvent plus importante.
Lelogiielestlepointgénérantl'ativitématérielle:ilestdonaussiimportantdel'optimiser
pourqu'iltireun meilleurparti dumatérielenréduisantette ativitéetentirantavantagedes
solutionsmatériellesmisesàdispositionparlesonepteurs.Oniteraàeteetlestehnologies
DVFS,maisaussilesdiérentsniveaux demémoires, ommelamémoireentrale, lesmémoires
non-volatiles, ouenore desmémoiresde travail (srathpadmemory).
Laoneptiondulogiielpouressystèmesdoitdonêtreassistéepardesoutilsd'évaluation
de l'eaité énergétique simple et rapide. De plus, pour suivre la adene de prodution de
nouveauxsystèmesdansledomainedel'embarqué,lesoutilsdoiventêtre susammentexibles
etadaptables pour ne néessiterque peu de hangements pour être utilisablessur de nouvelles
plateformes.
L'exploitation eae de es méanismes est déliate et néessite de nombreuses étapes
d'optimisations.
Pourquelelogiielsoitlemieuxadaptéetdonlemieuxoptimiséentermedeonsommation
énergétique,ildoitl'êtresurlaplateformedénitive.Lesoutilsdontnousparlonsprennentdon
savoir une fois le matériel omplètement onçu etproduit. Il est fort peu probable d'avoir des
informations partiulièrement détaillées sur la struture interne du matériel à ette étape, ar
les équipes qui onçoivent le matériel etelles qui travaillent sur le logiiel sont généralement
diérentes. Il n'est pasnonplus envisageablede prévoirdesinstrumentations très poussées qui
rendraient l'outil très diile à adapteretnéessiteraient des ompétenesspéiques.
Nous allons don présenter ii une proposition basée sur une méthode solidequi part d'ex-
périmentations bas niveau pour en arriver à des appliations reétant des as d'utilisation de
etteproposition. Laméthodes'appuieenpremier lieusuruneidentiation etunearatérisa-
tiondesélémentslesplussigniatifs delaonsommation d'unsystèmeembarqué omplet. Ces
expérimentationspermettent de xerune méthodologie de mesuresetde donnerunaperçudes
pointsprépondérants de la onsommation, mais ausside eux qui setrouvent masqués dansla
globalité.
L'étape suivante de la méthode nous amène à mettre en plae une aratérisation de la
onsommation quis'appliquerait le mieuxà e ontexte,en s'inspirant destravauxpassésdans
ledomaine.
L'instrumentation d'une tellearatérisationpour l'automatisation de sonutilisation prend
plae logiquement dans lasuite de es travaux. Cetteinstrumentation se veutelle aussi leplus
exible etadaptable possible pour en failiterl'utilisation surde nouveaux systèmes.
Pour nir, l'appliation de es outils sur des exemples simples mais mettant en évidene
l'utilisation etlarihesse desretoursonlut lavalidationde ette méthode.
La suite de e manusrits'organise autourde inqhapitres dont voii leontenu :
Dansunpremiertemps,nousprésenteronsdanslehapitre2unpanoramadestravauxan-
térieurss'intéressantàlaaratérisationetàlavalorisationdelaonsommationd'énergie
danslessystèmes életroniquesnumériques.
Le hapitre 3 dérit la modélisation de la onsommation proposée au ours de es tra-
vauxautermedesexpérimentationsprésentéesplushaut.Cehapitredonnelesdétailsdu
raisonnement poursuivilors de laréation de e modèle, etprésenteensuite les résultats
des expérimentations réalisées sur deux plateformes de gamme de performanes très dif-
férentes permettant de valider que l'ensemble desaratéristiques de la proposition sont
bienrespetées.
L'instrumentation de ette aratérisation est disutée dans le hapitre 4. Cette instru-
mentationrenforelesaratéristiquesdumodèledanssaonstrution,toutenorantdes
retours de haut niveau sur l'appliation en ours d'analyse, par exemple par une rétro-
annotationde ode soure.
Lehapitre5donnedesexemplesd'utilisationdesoutilsintroduitsauparavant.Cesexemples
sontdesexpérimentations réaliséesauoursdestravauxdérits danse manusritetsont
proposés ii pour montrer la diversité des utilisations possibles et pour évaluer ertaines
hypothèses ouramment mises en avant dans les proposition se voulant eae en terme
deonsommation énergétique.
Pour nir, lehapitre 6 montre les limitesdes travaux eetués à l'heurede la rédation
de e manusrit et présente des extensions possible des outils mises en avant dans les
hapitres préédents. Ce hapitre donne don un aperçu des perspetives envisageables
pour les travauxprésentésdanslereste du manusrit.
État de l'art
Le hapitre qui suit présente plus en détailla question de laonsommation életrique dans
les systèmes életroniquesnumériques en dérivant lastruture de tels systèmes et les ompo-
santes de ette onsommation. Le but et l'utilisation de la aratérisation de l'énergie dissipée
permettent demieuxappréhender lesmotivationsdestravauxantérieurssurlesujet.Nouspro-
posons ensuite une lassiation de es travaux au regard de deux ritères : la granularité du
modèleetsaalibration. Pour nir, nousproposonsunaperçudesdiversesmanièresd'exploiter
les informationsde onsommation proposées danslalittérature.
2.1 Généralités sur la onsommation
Pour mieuxomprendreleontextedanslequelsont proposéslesmodèlesde onsommation
életrique de la littérature, il est tout d'abord néessaire de omprendre e qu'ils modélisent.
C'est pourquoi nousdonnonsun rapideaperçude lastruture dessystèmes embarquésetnous
verrons ensuite quelles sont les soures de onsommation dans es systèmes. Pour nir, nous
verronsennquelssontlesusagesetlesintérêtsdesmodèlesdeonsommationsdanseontexte.
2.1.1 Struture d'un iruit intégré numérique
Les systèmes tels que les ordinateurs ou les systèmes embarqués ommuniants (téléphone
portableou autre)peuventêtrevuspar leurs utilisateursnauxommedesboîtesnoirespossé-
dantun ertainnombre d'interfaespermettant desinterations ave l'utilisateurou l'extérieur
ommeun éranou unlavier.
Cetteboîtenoireestomposéed'unertainnombred'unitésdontlesfontionssontlairement
dénies. On retrouve le plus souvent une unité de alul, un proesseur (CPU), des mémoires
volatilesounon(SDRAM,Flash...). Cesomposantssontlesprinipauxélémentspermettantà
unsystèmeditinformatiqued'eetuerdesaluls. Àotédeela,on retrouvedesélémentsqui
servent soit à interagir ave l'extérieur (Port Série/UART, ...) soit à assister l'unité de alul
dans ertaines tâhes (aélérateurs, ...). Cette déomposition est représentée par la ouhe
supérieurede lagure2.1.
Il faut ependant être onsient quee genrede omposant est àson tourdéomposable en
un ertain nombre d'unités. La gure 2.1 donne un exemple non-exhaustif de e qu'est la dé-
CPU Co−proc Cache
MMU
ALU ITC
Mem CPU UART
Systeme
Coeur
Add.
Coeur
Decal. Decod.
Reg. UAL
Add.
Et
Ou
Soustr.
Fig. 2.1 Struturedessystèmes embarqués
ompositiond'unproesseurlassique.Onvoitqu'unpremierétagededéompositionomprend
desahes(deniveau 1),desunités degestionmémoire (MemoryManagmentUnit MMU)ou
enore deso-proesseurs. La partie prinipale à e niveau est nommé le÷ur (ore). Ce ÷ur
ontient à sontourdesregistres etuneunité arithmétiqueetlogique (ALU).
On peut enore subdiviser de manière réursive es éléments jusqu'à atteindre la brique
élémentaire de toutsystèmeéletronique numérique,le transistor.
La oneption de tels systèmes se déroule en deuxphases. La première, elle où l'ensemble
deshoix de oneption sont faits est une méthode desendante, on regarde lesystème de plus
en plusen détailpour endénir les unités,puis leurs ontenus. Pour laseonde phase, laréali-
sation,les onepteursutilisent uneméthodepartant desouhes lesplusbassespour remonter
progressivementjusqu'auxouheslesplushautesenassemblantlesbloslesuns ave lesautres
àhaqueouhe. Onnommeraesdiversesouhes,niveau d'abstrationou niveau de granula-
rité dans e qui suit. En eet,hoisir une des ouhesde lagure 2.1 pour dérire un système
onsiste àhoisirla granularitédesblos quileompose.
2.1.2 Quid de la onsommation életrique des iruits
Pouromprendreequiauselaonsommationd'unsystèmeéletronique numérique,ilfaut
seplaer au niveau destransistors, leniveau leplus basde l'éhelle d'abstration[60 ℄.
Ces transistors sont assemblés en portes réalisant des fontions logiquesélémentaires. Pour
illustrersimplementles ausesdelaonsommation, laportelogiquelaplusélémentaire, l'inver-
seur, est ouramment utilisé aril ne omporte quedeux transistors.La gure2.2 en ore une
illustration.
Le fontionnement de l'inverseur est extrêmement simple. En eet, lorsque l'entrée A est
à 0, niveau de tension
V cc, le transistor P-MOS est fermé, et le N-MOS est ouvert, on a don
la sortie reliée à
V dd niveau de tension orrespondant à un 1 logique. Pour l'entrée inverse (1
B A
N-MOS P-MOS
V dd
V cc
Fig.2.2 La porte élémentaire, l'inverseur
Lefontionnementd'unetelleportegénèredeuxtypesdistintsdeonsommation.Lepremier
type est dépendant de l'ativité générée sur la (ou les) entrée(s) de la porte : on l'appelle
onsommation dynamique.Le seondtype esten revanhe omplètement indépendant de toute
espèed'ativité :il s'agitde laonsommation statique.
La premièrepartie delaonsommation, laonsommation dynamiqueestà sontourissuede
deuxsoures prinipales:les ourantsde ourt iruitetde hargede laapaitéde sortie. En
eet,lasortie delaportelogiquepeutêtrevuommeuneapaitéàhargerpourfairehanger
le niveau logique de lasortie du 0 vers le1 logique. Dans leas du passage du 1 au 0, onvide
laapaité. Cettehargesefait don depuis
V dd etestreprésentéesurlagure 2.3.
B A
C V dd
V cc
Fig.2.3 Consommation dynamique :harge delaapaitéde sortie
Conernant l'énergie néessaire pour eetuer ette harge de apaité de sortie, elle est
modélisée par laformule(2.1).
E = 1
2 CV dd 2 (2.1)
La seonde partie de la onsommation dynamique s'explique par le fait que les deux tran-
sistors (N-MOS et P-MOS) sont passants simultanément lors d'un hangement de l'état de la
sortie. Ainsisur l'exemple de l'inverseur, unsimple passage de0 à 1 ou de1 à 0 setraduit par
unourt-iruit brefentre
V cc etV dd.Ceourt-iruit seproduitlorsque latensiondu signalen
entréeest autourde latensionde seuilnotée
V th.
Lemodèledonnantlapuissanedissipéependanteourt-iruitestdonnéparlaformule2.2.
Onvoit quela puissaneest dépendante dutemps de transition dusignal
τ
etd'uneonstantetehnologique
K
.B A
≈ V th
V dd
V cc
Fig.2.4 Consommation dynamique :ourant deourt-iruit
P short_cut = K.(V dd − 2V th ) 3 .τ
(2.2)
Pournir,ladernièreomposantedelaonsommationd'unsystèmeéletroniquenumérique,
est sa onsommation statique. En eet, en l'absene de transition desentrées, l'état des sortie
est stable. Cependant, dans ette situation, un transistor (N-MOS ou P-MOS) est passant et
l'autre est bloquant. Dans ette situation, un ourant appelé ourant de fuite traverse tout de
même le transistorqui est à l'étatnon passant.Dans leas de l'inverseur, ave une entrée à0,
letransistor P-MOSest traversé par etype de ourant (gure2.5).
0 1
B A
V dd
V cc
Fig. 2.5 Consommation statique:ourant de fuite
La puissane statiqueestalors modélisé parl'équation 2.3.
P static = V dd × I leak (2.3)
Les trois types de onsommations présentés préédemment pour l'inverseur sont générali-
sables pour l'ensemble des portes logiques, voire même pour des blos de taille supérieure. Il
s'agit don des mêmes omposantes de base pour la onsommation des iruits intégrés numé-
2.1.3 Pourquoi utilise-t-on des modèles
Dans eontexte, plusieurssituations diérentesjustient del'utilisation d'unmodélisation
de onsommation.
Dans un premier temps, lors de la oneption de système, laseule information de onsom-
mation disponible passe par l'utilisation de modèles. Dans e genre de situation, le modèle est
utilisé pour validerleshoixde oneptionsans avoir àréalisereetivement les iruits,e qui
oûteheretallongelourdement leyledeoneption.La modélisationpermetdondegagner
du tempset diminue le nombrede iruits ratés.
Avedessystèmesdeplusenplusgrosetdondeplusenplusomplexesàsimuler,plusieurs
modèles sont proposés pour diminuer la omplexité de la modélisation. L'argument est ii de
diminuer le temps néessaire pour obtenir les résultats de simulation, en diminuant le temps
orrespondant àl'utilisation de e modèle.
Pour nir, un dernier ontexte justie l'utilisation de modèles. En eet, même si le maté-
riel est disponible, il est de toute manière fastidieux de mener des ampagnes de mesures de
onsommation pour jugerde l'eaité de laoneptiondulogiiel quitourne surlesystème.
Dans l'ensemble de es ontextes, l'utilisation est relativement onstante. Pour mettre en
÷uvre un modèle donné, on fait appel à la simulation. La gure 2.6 dérit le proessus de
l'utilisation d'unmodèle dearatérisation de laonsommation.
CPU Co−proc Cache
MMU
ALU ITC
Mem CPU UART
Systeme
Coeur
Add.
Coeur
Decal. Decod.
Reg. UAL
Add.
Et
Ou
Soustr.
Niveau d’utilisation
Niveau du modele Estimation des parametres
Calcul de la consommation
Fig. 2.6 Utilisationd'unmodèle deonsommation
On peut noter que l'utilisation d'un modèle de onsommation se déompose don en deux
phases distintes. La première est l'estimation des paramètres du modèle. En eet, omme le
niveau auquel on souhaite avoir des informations est plus haut que elui du modèle hoisi, on
a reours à une phase de simulation quisert à estimer le omportement de l'inter-ouhe pour
évaluer es paramètres. La seonde étape estdon d'attribuer à haque paramètre son oûtet
ainside remonter lesinformations de onsommationagrégées.
2.2 Caratérisation de la onsommation életrique
De nombreux travaux se sont déjà intéressés à la aratérisation de la onsommation éle-
présentons d'abord les ritères retenus pour leur lassiation et ensuite nous proposerons un
aperçud'unertainnombre de es travaux.
2.2.1 Critères de lassiation
Pourorganiserlesmodèlesde onsommation,onhoisitiideuxritèresquisontinhérentsà
leuronstrution.Eneet,lorsdelaoneptiond'unmodèle,deuxprinipauxhoixsontàfaire.
Le premieronerne leniveau d'abstration dumodèle, et leseondorrespond àlaalibration
desoûts danslemodèle.
Niveau de granularité,niveau d'abstration
Le premierritèreorrespond àlanotionmiseen avantpréédemment lorsdeladesription
de la struture d'un système, la notion de granularité. Ce ritère dénit la taille des éléments
utilisésommebriquesde basepour laonstrution dumodèle etles paramètres possiblespour
leur aratérisation.
Les modèlesde onsommation peuvent don êtrelassés par niveau d'abstration, allant du
niveau le plus bas, le niveau transistor, au niveau le plus haut, le niveau système. Dans ette
fourhette,onregroupe lesontributions suivanttrois(ou quatre)prinipaux groupesdeniveau
degranularité:leniveauiruit/porte, leniveauarhitetural,etleniveau système/instrution.
La gure2.7donne unaperçude e déoupage.
Niveau transistor Niveau systeme
Granularite
Niveau architectural
CPU Co−proc Cache
MMU
ALU ITC
Mem CPU UART
Systeme
Coeur
Add.
Coeur
Decal. Decod.
Reg. UAL
Add.
Et
Ou
Soustr.
Fig. 2.7Niveau de granularité
Ainsi dansla lassela plus haute, les modèles plaés auniveau système etinstrution, une
attentionpartiulière estportéeàaratériser laonsommationéletriquedesinstrutions.Par-
foisetteonsommationestuniquement représentéepar unetableontenantlesonsommations
desdiérentes instrutions de l'unitéde alul, parfoisleoûtde lalogique estpris en ompte.
Par exemple par la prise en ompte de la onsommation inter-instrutions ou enore parfois
même leoûtde lalogique dedonnées estmodélisé.
Au niveau inférieur, la lasse des modèles de niveau arhitetural, le système est divisé en
blosavant d'être modélisé. Le déoupage se faitla plupart dutemps de lamême manière que
elui présenté à la setion 2.1.1. En eet, aratériser un système blo fontionnel par blo
pourquoides modèles omplètement diérents peuvent être hoisis pour haque blo, ave des
paramètres les mieuxadaptés aublo.
Pour nir, au niveau le plus bas, les modèles de niveau iruit et porte aratérisent la
onsommation àun graintrès n,elui du transistorou delaporte.
Données de alibration
Unefoisquelehoixduniveaudegranularitéestfaitetdoneluidesparamètresaussi,vient
l'heure d'obtenir des données quantitatives permettant de alibrer les oûts de es paramètres
pourestimer au mieux laonsommation.
Ii enore,on peutdistinguer troisas. Ces troisas sont laalibrationpar simulation, par
mesures,etles modèles analytiques. Deuxde esas, les deuxpremiers, sont desalibrations à
proprement parler,alorsquedansletroisième as,iln'yabesoin quededonnéestrèsgénérales.
Dansletroisièmeas,eluidesmodèlesanalytiques,auunedonnéeniauuntraitementn'est
réellementnéessairearlesmodèlesanalytiquessontleplussouventbaséssurlesloisphysiques
etlesdesriptionsarhiteturalespourprédirelaonsommationéletrique.Cegenredeméthode
estleplussouventutilisé surdesunitésbas-niveau àstruturerégulière.Parexemple,ontrouve
ungrandnombredemodèlesdeonsommationdeaheutilisantetteméthode.Ilestependant
assez diile de modéliser des struturesmoins régulières ave des paramètres aussi généraux,
e qui aboutit àune mauvaisepréision despréditions.
La seondeméthode onsisteàobtenir desdonnéesdealibrationparsimulation. Ave ette
méthode,on onstruitlemodèlegrâeàunproessusallant dubasverslehaut,enutilisantdes
modèles de granularité inférieureommeillustré par lagure2.8.
CPU Co−proc Cache
MMU
ALU ITC
Mem CPU UART
Systeme
Coeur
Add.
Coeur
Decal. Decod.
Reg. UAL
Add.
Et
Ou
Soustr.
Utilisation par simulation
Construction Modele
Fig. 2.8 Calibration par simulation
Ce proessuspeutêtrerépété niveaupar niveau. Àhaque étape,les paramètres du niveau
inférieur doivent être estiméspar simulation pour rassembler les données néessaires.Cettedé-
marhe requiert don une ertaine onnaissane de l'arhiteture du matériel. On remarquera
qu'auuneplateformematériellen'est néessaireii,puisquetoutequiestnéessaireserésume
à des informations d'arhiteture du matériel modélisé. Ce genre de proessus est utilisable
pendant la oneption des iruits an d'estimer la onsommation résultante et ainsi tester la
viabilité de la solution avant la prodution. En résumé, lorsqu'on estime le oût d'un para-
mètre,onsimuleequisepasse endessouspourensuiteagrégerlesonsommationsauxouhes
Une dernièreméthode seposeommealternative auxsolutions analytiques,ou utilisant des
simulations de l'arhiteture sous-jaente. Cette méthode s'appuie sur des mesures physiques.
En eet, on peut tout aussi bien onstruire un modèle de onsommation en réupérant les
données quantitatives diretement sur le matériel. Ce genre de solution impose bien sûr qu'il
soit disponible, ontrairement aux préédentes solutions. Comme le montre la gure 2.9, le
proessusde alibrationpar mesuresest l'opposédeelui utilisant lasimulation. Eneet,dans
ette situation, desmesures de onsommation sont eetuées àun niveau qui estgénéralement
supérieur à elui du modèle résultant. Il en résulte don une phase d'extration qui vise à
extrairedeesmesuresglobaleslesinformationsintéressantes.Laproédureiiestdonbiende
générer une ativité qui ontient le paramètre àun niveau supérieurpour extrairedes mesures
une estimation du oût de e paramètre. Les modèles obtenus par e genre de tehnique sont
souvent moinsomplexes puisqu'il est très diile d'obtenir desdonnées de grain très n ave
desmesures,maispeuvent trèsbienêtre misen ÷uvrelorsqu'onneonnaît riende lastruture
ne dumatériel sous-jaent.
CPU Co−proc Cache
MMU
ALU ITC
Mem CPU UART
Systeme
Coeur
Add.
Coeur
Decal. Decod.
Reg. UAL
Add.
Et
Ou
Soustr.
Construction
Utilisation par simulation
Modele
Fig. 2.9 Calibrationpar mesures
Lessolutionsdemontagespourlesmesuresphysiquesontunspetredeomplexitétrèslarge:
elavadusimpleampèremètre aumontageomplexe permettantunerésolution temporelletrès
grande.
La solution la plus simple est proposée par Tiwari et al. dans [75℄. Elle onsiste en un
ampèremètre onneté sur l'entrée d'alimentation du proesseur. Cette méthode a l'avantage
d'être très simple à implanter et d'utiliser du matériel bon marhé. Le gros désavantage de
ette solution est ependant la perte d'information. Pare qu'il a une très mauvaise résolution
temporelle, l'ampèremètre nepermetd'obtenir quedesvaleursmoyennes.
RusselletJaome proposentunesolutionpourrésoudreeproblèmedans[63 ℄.Leursolution
pour aquérir lesdonnées estd'utiliser un osillosopenumérique ouplé àune résistane plaée
ensériesurl'alimentation dusystème.L'osillosopehoisipoure genredemesureestbiensûr
un matérielde hauteperformane(dans leur asun LeroyLC534) pour safréquene d'éhan-
tillonnage élevéeetsamémoire.Lalimited'untelmontageestalors donnéeparlaperformane
de l'osillosope.
Larésistaneplaéeensériedel'alimentation danslemontagepréédentonstituesontalon
d'Ahille. En eet, ette résistane interfèresur l'alimentation du systèmeen ours de mesure,
arplus leourant utilisé par lesystèmeest grand, plusla hutede tensiondue à larésistane
est importante. Pour limiter ette inuene, Nikolaidos et Laopoulos [56℄ proposent d'utiliser
d'éhantillonnage élevé de l'osillosopeà l'absene d'interférene dumiroir de ourant.
Pournir,Changetal.,dans[12 ℄,proposentunmontagedonnantlaonsommationéletrique
yle par yle. Ce montage est basé sur la harge et déharge de ondensateurs. En eet, le
montageest plaéen sériesurl'alimentation életrique.Le prinipeest dehargerune apaité
à haque yle pendant que la seonde se déharge en alimentant le système. L'information
surlaonsommation estensuite obtenue enéhantillonnant simplement deuxfois par yle. Le
montageestpour elaomposédeonvertisseursanalogiquesnumériqueetdemémoirestatique
rapide(FastStatiRandomAessed MemoryFastSRAM).Lesonvertisseurséhantillonnent
la tension aux bornes des ondensateurs et remplissent la mémoire. Les données sont ensuite
diretement utilisées depuislamémoire statique pour traitement.
2.2.2 Classiation
Les deux ritères de lassiation proposés ne sont pasomplètement orthogonaux puisque
toutes les ombinaisons nesont paspossiblesvoire pertinentes.
Eneet,lesmodèlesanalytiquesnepermettentdeiblerquedesunitésdebasniveauàause
de laomplexité de leurproessusde fabriation.Nousnedétaillerons plusette méthodedans
la suite de e manusrit, puisque nous nous intéressons à des modèles de beauoup plus haut
niveau.
La onstrution de modèle par simulation est rarement utiliséepour desaratérisations de
trèshautniveau.Iloûteextrêmementher,entermedetemps,deonstruireunmodèledehaut
niveau pour un nouveau matériel, saufbiensûr dansle asoù une grandepart de réutilisation
estpossible pour ette onstrution.
Pour nir, on ne trouve quepeu de modèles de bas niveau basés surdes mesures.En eet,
plusleniveau dumodèlerésultantestbas, plusildevient diile d'obtenirdesinformations de
onsommation par mesures.Soit on reste à un niveau raisonnable pour faire desmesures et la
phase d'extration desinformations estomplexe etpeu préise, soit on eetue desmesures à
desniveaux plusbas, par exemple surdu matériel instrumenté, etalors lematérielpermettant
de lesréaliser estonéreux etmanipulable uniquement par desinitiés.
Après uneprésentation rapide d'uneextension lassiquedemodèleanalytiqueà unsystème
omplet,nousproposeronsdesexemplesdearatérisationd'énergieproposésdanslalittérature.
Ces propositions sont organisées selonleurs lasses de niveauxd'abstration.
Un modèlede onsommation analytique lassique.
Comme nousavons pule voirau 2.1.2, laonsommation d'uniruit intégré numérique est
répartie entre trois prinipales soures de onsommation. Une est statique alors que les deux
autres sont dynamiques, 'est à dire dépendantes des entrées. Dans les tehnologies utilisées
jusqu'àprésent,larépartitions'organisedefaçonqueles onsommationsstatiqueetdynamique
de ourt-iruit sont négligeablesdevant laonsommationde hargede laapaitéde sortie.
Le modèle proposé par l'équation (2.1) pour aratériser la onsommation d'un inverseur
lors d'unpassage au niveau logique 1de la sortieest généraliséà une unité de taille arbitraire.
Cette généralisation est dérite par la formule (2.4). Elle est régulièrement utilisée dans des
modèles de niveau arhitetural pour modéliser un blo ou une pue omplète. La apaité de
sortienotée
C
préédemment estremplaéepar uneapaitétotalenomméeC m représentantla
apaitééquivalente dublo omplet.Un termesupplémentaire apparaît(f α
),etermetraduit
le fait que l'ensemble des portes du blo ne basulent pas en même temps, mais seulement
une portion. Cependant, ette situation se reproduit à haque front d'horloge. Ainsi
f
est lafréquened'horlogedefontionnement dubloet
α
représentelaproportion moyenne deportesqui ommutent de0 vers1 àhaque frontd'horloge.
P = 1
2 C m V dd 2 f α
(2.4)Cegenredemodèlenepeutservirqu'àtitreindiatifenl'absenedeplusd'informations.En
eet,lesparamètres
α
etC m sont diilesàestimer etlesvaleursobtenuesparde telsmodèles
sont uniquement des valeursmoyennes.
Niveau transistor et porte.
La aratérisation qui permet d'atteindre le niveau de détails des onsommations est assu-
rément la modélisation au niveau des transistors. On retrouve des outils omme SPICE [69℄,
HSPICE [32 ℄ ou enore Star-sim [38℄ (dérivé de SPICE) qui utilisent des modèles onstruits à
partirdesloisphysiques.Lesoutilsdesynthèsedeiruitsproposentdemêmedesfontionnalités
d'estimation de onsommation pour les iruits en ours de oneption, omme PowerMill [19 ℄
de Synopsys ou QuikPower [18 ℄ de Mentor Graphis. Tous es outils utilisent les desriptions
bas-niveau des iruits (VHDL, Verilog). Le prinipal désavantage de e genre de aratérisa-
tionest sonénorme omplexité,l'estimation de laonsommation d'unopérateur deomplexité
moyenne (additionneur) peut prendre plusieurs heures en utilisant SPICE. Cette omplexité
empêhe don lasimulationde grossystèmes etd'ungrand nombred'événements.
Une amélioration proposéepour diminuereténorme handiapàlasimulation estdeplaer
lemodèleauniveau supérieur,lesportes.La briquede basen'est alorsplusletransistormaisla
portelogique.OntrouvedessimulateurstelsqueMynoh[59℄quimettenten÷uvredesmodèles
de niveau porte, les performanes gagnées (à l'utilisation) sont éloquentes, un ratio de 450 par
rapportà l'utilisation d'unmodèletransistor (type SPICE).
Les modèles (et outils de simulations assoiés à es modèles) présentés ii néessitent tous
des informations détaillées sur la struture du matériel iblé (desription HDL ou équivalent).
Cesmodèlessontplutt destinésàêtreutilisésauxétapesdeoneptiondesiruits,avant leur
prodution.La desriptiondétailléedu iruitest alors disponible.
Niveau arhitetural
La partiularité de ette atégorie de modèles est, nous l'avons vu plus haut, qu'ils sont
entrés sur le blo fontionnel. La onsommation énergétique du système estalors estimée par
unepréditiondesonsommations detouslesblosquileonstitue.Pourela,haqueblopeut
avoir son propre modèle, adapté à la logique interne. Il existe des modèles arhiteturaux qui
aratérisent deséléments degrains ns àdessystèmesplus omplexes.Ontrouve par exemple
desmodèlespourlesahes[80,35℄,pourlesunitésdegestionmémoire[43 ℄,pourlesbus[40 ,83 ℄
...Nousnousfoaliseronspluspartiulièrement surlamodélisationde systèmesserapprohant
leplus desystèmes omplets.
Le premiermodèlede niveau arhitetural quenousallonsprésenter aétéproposépar Chen
et al. [15, 14, 13℄. Le système modélisé dans e travail est un système omplet omprenant
onnetés àde la mémoire par un bus. La granularité hoisiepar lesauteurs est assez ne,ar
les blos hoisis sont les registres, l'unité arithmétique etlogique (Arithmeti and Logial Unit
ALU), l'unité de multipliation-aumulation (Multiply and ACumulate MAC). De plus,
ettedéomposition,proposéeparlesauteurs,esthiérarhiqueetestappliableàl'ensembledes
éléments de la ible. En e qui onernent l'eaité du modèle, les auteurs le veulent le plus
préispossible:'est pourquoiils déident detenir ompte de laommutation de lalogique de
donnéeetdelalogiquedeontrleprovoquéesparlesinstrutions.Lesblossontalorsregroupés
en deux familles : les blos dépendants et indépendants des valeurs. Dans la première famille,
laonsommation énergétique du blo varie en fontion desentrées alors quee n'est pas leas
dans laseonde famille. Les modèles utilisés pour les blos sont basés sur des tables nommées
LUT (Look-Up Table) remplies grâe au modèle généralisé présenté au 2.2.2. Les estimations
résultantes d'untel modèlesont préises à environ9%des valeursréelles.
LietHenkel[47 ℄ onstruisentunmodèleàunniveau d'abstrationlégèrementplushaut.En
eet,laatégoriede systèmeviséeparleur modèleestaussiunsystèmeompletomprenant un
proesseur, de la mémoire et même desblos de logique dédiée représentant les périphériques.
Dans e modèle, le proesseur est onsidéré omme un blo fontionnel. Les autres blos, au
même niveau d'abstration, sont don la mémoire entrale, les ahes et le matériel spéique
(périphériques).Lesmodèlesutiliséspourhaqueblosontpurementanalytiques,baséssurdon-
nées arhiteturales et tehniques trouvées dansla doumentation desomposants(nombre de
lignesetdeolonnespourlamémoire)ouenoredesdonnéesomportementalesdel'appliation
(nombre dedéfauts de ahe,...).
Kim et al. [37℄ étendent un simulateur préis au yle près pour qu'il fournisse des infor-
mations de onsommation. Le modèle qu'ilproposent pour ela estde niveau arhitetural. Le
système visé par les auteurs est uniquement un proesseur. La partiularité prinipale de leur
modèle est son aspet réursif. En eet, tout le système est divisé en blos omme dans tout
modèle de niveau arhitetural : ils sont appelés blos miro-arhiteturaux. L'aspet réursif
vient du fait que haque blo peut être à son tour sub-divisé en sous-blos. Chaque blo (ou
sous-blo) est modélisé grâe à trois prinipales omposantes : la harge de la apaité d'en-
trée,laommutation delalogiqueinterne dueauxentrées etennlapuissanestatiquedue au
ourant de fuite. L'ensemble des données de onsommation sont alors stokées dans destables
(LUT) pré-alulées, mais les auteurs proposent ausside remplaer les tables par des modèles
analytiques.
Watth [9℄est, luiaussi,un modèlede onsommationintégré dansunsimulateur de proes-
seurpréis auyleprès, SimpleSalar [10 ℄.L'extension desauteurs traqueles aèsauxunités
fontionnelles pour prédire laonsommationénergétiquedu proesseur.Lesauteurs regroupent
lesunités fontionnelles en quatrelassesmodéliséesde manières diérentes. Ces quatrelasses
sont : les strutures régulières (mémoire ahe), la mémoire adressée par le ontenu (Content
Addressed Memory CAM), la logique omplexe et enn les arbres d'horloge. La lasse des
struturesen veteursreprésentepar exemple lastruturedesahes. LesCAMsont desstru-
ture ommunément utilisés dans les TLB (Translation Look-aside Buer) ou enore dans les
tampons d'éritures. La logique omplexe est fréquemment présente dans les unités arithmé-
tiques et logiques ou les unités ottantes. Enn, les arbres d'horloge sont les strutures qui
distribuentlesignald'horlogesurl'ensembled'uniruit.Chaquelassereprésentedelalogique
ayantunomportementbienspéique,quiestdonmodéliséparunmodèleanalytiqueavedes
paramètres adaptés à ette spéiité. Pour avoir une idée desperformanes atteignables dans
ette lasse de modèle, les auteurs annonent un fateur de 1000 par rapport à une simulation
au niveau iruit touten onservant une erreur relativement orretede 10%.
aussibasésurSimpleSalar. Il simuledon l'exéutionde haque instrutiondanshaque étage
du pipeline du proesseur. À partir de es informations, seulement les blos réellement ativés
sont évalués dans le modèle arhitetural proposé par les auteurs. Le simulateur utilise un si-
mulateur deahe,desmodèles analytiques etdestables(LUT)pourprédirelaonsommation.
Les paramètres utiliséspour es modèles sont les valeursd'entrées et desinformations de om-
portement (défauts de ahe, ...). Le modèlerésultant à une préision d'environ 15%d'erreur.
Cependant, e hireest donné en rapport àdes préditionsobtenus ave une modélisation de
niveautransistor.
Des travauxquis'orientent plusversl'explorationarhiteturaleproposent dessolutions qui
repondent à une bonne partie des objetifs que nous avons xés. Par exemple, les travaux de
AbrilGaria[26 ℄proposentunesolutiondemodèledeplateformeomplèteutilisantpourhaque
blo arhitetural lemode de fontionnement pour modéliser la onsommation. Cette solution
est basée surdes modèles de type analytiques qui implique une onnaissane de l'arhiteture
de haun des blos.
Pouronlure,lesmodèlesdeniveauarhiteturalsontonçusetutiliséspourleurplusgrande
exibilité. Enfait, lebut prinipal de laplupart dees modèles estlaréutilisation de partie de
modèles entre diérents systèmes ibles. En eet, il n'est alors pasutile de reréer un modèle
omplet pour une nouvelle arhiteture, mais simplement d'ajouter, retirer ou enore modier
desblosfontionnelsaumodèleexistant.Lebutestaussid'êtremoinsomplexequelesmodèles
duniveau inférieur(niveau iruitetporte),toutenrestant pluspréisquelesmodèlesde plus
haut niveau.À eniveau,touslestransistorsouportesne sontpasmodélisés(etdon simulés).
Lemodèleoûtedonmoinsherentempsàl'utilisation,maisiltientenomptedesspéiités
de la logique des diérents blos fontionnels du système en utilisant des modèles diérents
pour aratériser leur onsommation. Certains de es modèles sont failement adaptables à
nosobjetifspour lamodélisationd'unsystème ompletpuisqu'on peutles étendre pour qu'ils
prennentenomptetoutelaplateforme,leproesseur,lesmémoiresetlespériphériques.Lesdeux
premiers exemples répondent à e genre de ontraintes. On notera qu'auun exemple présenté
ii n'est basésurdesmesures.
Niveau instrution et système
Le modèle de Tiwari et al. [75, 76℄ pour l'estimation de la onsommation életrique d'un
proesseur(x86) utilise desmesures physiquessurun système. Lesmesuressont réalisées grâe
aumontageampèremétriquedéritenndesetion2.2.1.Puisqueetoutilmoyennelesvaleurs,
auunemesurediretenepeutêtre eetuée.Laméthodeproposéepar lesauteurspourobtenir
desinformations deonsommation surles instrutions exéutées surleproesseurest deplaer
l'instrutiondansunebouledontlatailleestorretementhoisie.Cettebouleestexéutéesuf-
samment longtempspourquelaonsommation duproesseursestabilisesurlaonsommation
del'instrutionenoursd'évaluation.Lavaleurduourantmoyenestalorslusurl'ampèremètre.
La puissanemoyenne dissipée par l'instrutionest alorsobtenu en multipliant lavaleurpréé-
dentepar la tensiond'alimentation. L'ensemble des onsommations obtenues de ette manière
pour toutes les instrutions forment don une table. Cependant la somme des onsommations
des instrutions d'un programme n'estime pasdèlement la onsommation du logiiel omplet
arelane reètepaslaonsommation dueàlaommutation delalogique duproesseurentre
haque instrution. Les auteurs proposent alors de tenir ompte de ette onsommation en a-
ratérisant les onsommations inter-instrution. La proédure utilisée pour ette phase est la
même quelapréédente pour haque paired'instrutionsenlesexéutantalternativement,sauf
deuxinstrutionsen question.Dansette approhe,lesoûts inter-instrutions sont dononsi-
dérésommesymétriques,pluspréisément lesoûtsinter-instrutions représentent lamoyenne
des oûts de haque sens. Le point le plus diile de ette tehnique est la omplexité de la
onstrution des tables. Si on onsidère un jeu d'instrutions de taille
n
,la table desoûts debaseest de taille
n
,maisla tabledesoûts inter-instrutions est enn 2.D'unpoint devue pré-
isiondel'estimation delaonsommation, lesauteursatteignentune préisionde l'ordrede3%
desvaleursmesurées.
Pour palierlaomplexité dumodèle, prinipalement auniveau delatailledestables,Lee et
al. [44 ℄ ont proposé uneamélioration pour lamodélisationd'un DSP.Leurproposition onsiste
àregrouperles inter-instrutionsen lasses.Laomplexitédeette tabletombealors largement
endessousde
n 2.Lapréisionenestparontrelégèrementmoinsbonne,maisresterelativement raisonnable ave environ10% d'erreur.
Steinke et al. [70 ℄ proposent quant à eux un travail de modélisation de la onsommation
életriqued'unproesseurbeauoupplusadaptéetutilisédansles systèmesembarqués, l'ARM
7 (ou plutt le ÷ur ARM7TDMI). Leur travail s'appuie lui sur des mesures physiques ave
un ampèremètre. L'extration des informations à partir des données des mesures utilise des
régressions linéaires. Cela permet aux auteurs d'explorer plus de paramètres que simplement
l'instrution, par exemple le numéro de registre, lavaleur du registre,la valeur immédiate, ....
Par tous esparamètres, ils étudient prinipalement l'inuene du nombrede bits à1 dans les
valeurs.La priseen ompte detels paramètres permetdegagnerlégèrement surlapréision,et
de tomberà2%d'erreur.
Ledéfautprinipaldesméthodespréédentesestl'utilisationd'unoutildemesurepossédant
unegammedefréqueneétroiteneproposantquedesvaleursmoyennesdepuissane.Lespisde
onsommations sont don perdus dans es onditions. Russell et Jaome, dans [63 ℄, proposent
une solution qui possède une résolution temporelle bien meilleure par l'utilisation d'un osil-
losope numérique. Grâe à ette amélioration de la résolution temporelle, les estimations se
veulent pluspréises.En eet,danslesmesuresfaitespar Tiwariet al. oulesautres travaux,la
onsommation de l'instrution évaluée est mesurée par sonexéution dansune boule. Cepen-
dant,la onsommation de laboule (saut ettest) estaussi omprise dansles mesures. Elle est
négligéearn'apparaissant qu'unefoissurungrand nombred'exéutions del'instrution(ou de
l'inter-instrution). Russell et Jaome proposent de proter de ette amélioration de montage
pour mesurer la onsommation du orps de boule uniquement par l'utilisation d'un signal de
délenhement (trigger). Ii enore l'extration des informations des données de mesures est
faite grâe à une méthode statistique appelée modèle du paramètre onstant. Les paramètres
retenus pour lemodèlenalserésument simplement autype d'instrution.Lesauteurs ontmis
àl'épreuveleurmodèlesurunproesseurInteli960iblantlessystèmesembarqués.Lapréision
atteintepar e modèle estd'environ8% d'erreur.
Lee et al. [45℄ proposent une autre solution pour se débarrasser de l'inexatitude des me-
sures utilisant les statistiques. Leur tehnique est aussi de alibrer le modèle sur un matériel
existant, plus partiulièrement un proesseur (CPU), grâe à un montage de mesures simple.
Elleviseàonstruire unmodèledeonsommationlui-aussientrésurlesinstrutionsexéutées.
La nouveauté de leur approhe est l'utilisation d'analyse par régression multivariable. Cette
méthode permet d'extraire failement les paramètres intéressants pour le modèle. Si elle est
appliquée orretement, ette méthode permet de onstruire un modèle de onsommation en
onnaissant enoremoinsd'informations surlastrutureinterne.Lesestimationsdeonsomma-
tionde leur modèlepour unARM7TDMI sont environ à2.5% d'erreuren moyenne desvaleurs
mesurées. Ave seulement des informations limitées sur l'arhiteture sous-jaente, les auteurs
prédirelaonsommationàhaqueinstant,equiestrendupossibleparl'utilisation del'analyse
par régression.
Dans ette lasse de niveau de granularité, on peut aussiplaer desmodèles dont le niveau
d'abstration est situé enore au dessus des instrutions. La maro-modélisation de Muttreja
et al. [54 ℄ appartient à ette atégorie. En eet, les onsommations des appliations sont alors
modélisées en utilisant des paramètres de très haut niveau tels que les tailles des variables.
Pour onnaîtreles paramètres qui sont réellement inuentssur laonsommation, une phase de
alibrationautomatisée estmise enplae par lesauteurs. Cettephase reposesurune reherhe
automatisée des paramètres et une simulation au yle près. La séletion des paramètres est
alors faite par l'utilisationde régressionsymboliquesur esrésultats.
L'analyse de onsommation életrique au niveau fontionnel que l'on retrouve dansSoftex-
plorer [64℄ faitaussi partie de estravaux. La onsommationd'un proesseur yest aratérisée
grâeàdesparamètres arhiteturaux(blos)etdesparamètres algorithmiques.Lebutd'untel
modèle estalors de réduire laomplexité dumodèleà saonstrution etàsonutilisation ense
plaçant à unniveau supérieurauxinstrutions.
Les modèles présentés ii sontentrés surl'estimation de laonsommationd'unproesseur.
Nous nous intéressons à estimer ette onsommation, mais aussi de elle générée par le reste
du système. Les modèles de niveau instrution ne nous le permettent pas tel quel. On pourra
remarquerquedanse genredetravaux,laalibrationpar mesuresestlargement répandue. Un
ertainnombredepropriétés desmodèles proposésiisontàretenir,telquelafaibleomplexité
de l'utilisation dumodèle pour une estimation orientée logiiel.
Pour onlure, les méthodes utilisant la simulation et les modèles analytiques sont plus
souvent orientées vers les premières phases de la oneption de iruit VLSI. À l'inverse, les
méthodes s'appuyant sur les mesures ont besoin de peu d'informations sur la struture bas
niveau des omposants : elles se rapprohent don plus des attentes de la simulation orientée
logiielle. On remarquera aussi que la grande majorité des modèles sont plus partiulièrement
onstruits pour une ible donnée. Seuls quelques rares exemples envisagent d'être adaptés sur
dessystèmes diérentsommepar exemple Mutterja et al. ave leur maro-modélisation.
2.3 Exploitation des modèles de onsommation.
Nous allons maintenant proposer un aperçu de e qui existe en matière d'utilisation des
modèles de onsommation. Nous avons présenté au 2.1.3 la meilleure méthode pour utiliser e
genre de modèle, qui est de l'intégrer dans un outil de simulation en harge de systématiser
l'évaluationdesparamètres and'obtenir lesinformations deonsommationpar lebiaisdu(ou
des)modèle(s).Il estependantnotable queertainstravauxs'abstraient deettesimulationen
basant leur modèlesurdesparamètres detrès haut niveau [?℄ou algorithmiques [64℄.
Nous ne détaillerons ii queles outils ayant pour but la simulation logiielle, qui sont plus
adaptéspoureetuerdesprolsd'appliation.Parmi essimulateurs, onpeutrépertorierdeux
grandesfamilles. Lafamille dessimulateurs nevisant quel'unité dealul(proesseur),voirela
2.3.1 Simulation de proesseur
Dans ette famille de simulateurs, l'objetif poursuiviest pluspartiulièrement l'évaluation
algorithmique:'estlaasdeSimplePower[79 ℄présentéplushaut.Leurtâhe estdon deom-
parerlaonsommationdediversesimplantationsd'unmêmelogiiel.Onapourelauniquement
besoinde laonsommation engendrée surleproesseuretdanslamémoire.
Un bon exemple de e genre de simulation est la méthode mise en plae par Tiwari et al.
[76 ℄.Dansette méthode,il n'yapassimulation omportementale àproprement parler puisque
les informationsnéessaires sont obtenuesà l'aided'appliations d'analysede performanes ex-
ternes.Pourobtenirlesinformationsdeonsommation,leuroutildéoupel'appliation(binaire)
en blos de bases dont il évalue laonsommation grâe auxtables desonsommations de base
des instrutions et des inter-instrutions. Lessur-oûts de onsommation dûs auxahes etla
pondération des blos de bases suivant le hemin d'exéution sont ensuite alulés grâe aux
informations d'analyse de performanes. On n'obtient alors que des estimations de la onsom-
mationglobalesur l'exéutiondu logiiel.
Un autreexemple très représentatif de ette famille de simulateur est JouleTrak [1 ℄. Dans
etteproposition,Sinhaetal.mettentenplaeunoutiltrèslargementdisponibleparl'utilisation
d'une interfae internet. Ce simulateur est basé sur des modèles analytiques, e qui est rare à
un niveau aussi haut d'abstration du matériel. L'idée diretrie est d'éliminer la alibration
desinstrutions néessairedanslapréédente proposition. Pour ela,ils basent leur modèlesur
des paramètres très généraux, tension d'alimentation, fréquene. Un autre fait marquant est
queetoutil possède aussiunmodèlede laonsommationstatique.Cettedernièremodélisation
est introduite pour permettre une prise en harge des apaités d'adaptation de tension et de
fréquene de leur plateforme, un Intel StrongARM SA1100. Le modèle utilisé permet à l'outil
d'évaluation de s'abstraire detoute onnaissane du jeud'instrution aril ne requiert quedes
statistiques sur l'exéution alors obtenues grâe à un simulateur/debogueur dudit proesseur.
Enore unefois,seule laonsommation globale estaessible par e genrede méanisme.
Watth [9℄ présenté pour son modèle préédemment rentre dans ette famille. Comme ex-
pliqué plus haut, il utilise un simulateur de proesseur (SimpleSalar) simulant le pipeline du
proesseur.Cesimulateuraétéétendupourévaluerlaonsommationdesblosfontionnelati-
véspourhaque yle.Le plusintéressantii estl'ensembledesmétriques queretourne Watth
surlelogiiel évalué.Il proposebien évidement les métriques deonsommations, lespuissanes
moyennes et maximum et l'énergie onsommée par l'intégralité du logiiel évalué. Il remonte
aussi une information de performane : le nombre de yle de l'exéution de l'appliation. Il
ajoute à es métriques une métrique nommée produit énergie-retard. Cette métrique est une
métriquemixte de performanetemporelleet énergétiquepermettant de pénaliser lessolutions
quisontpeuoûteuseentermed'énergie,maisquisontlentesetellequiàl'inversesonttrèsra-
pidemaistrèsonsommatrie enénergiedansunephased'optimisationonjointeonsommation
énergétique/performane. Cettemétriquea étéintroduite par Gonzalez etHorowitz[27 ℄.
Un autre objetif estparfoisannonépar lesauteurs de simulateurs deette famille. Enef-
fet,ertains arguent qu'ilsvisent l'explorationde solutions arhiteturalespour lesproesseurs.
Ainsi, XTREM de Contreras et al. [17℄ propose e genre de possibilitétout en gardant lapos-
sibilité d'évaluer lelogiiel. Ce simulateur estune extension de Watth [9℄ pour l'adapter à un
Intel XSale. Comme dans le as de Watth, les modèles de blos fontionnels (UAL, ahes,
mémoire, horloge, et) sont analytiques et utilisent des paramètres tehnologiques et arhite-
turaux. Cependant il est remarquable que les modèles sont alibrés à partir d'informations de
très basniveau, à savoir les desriptions du iruit au niveau transistor. Ces informations ont
proesseur. Les informations renvoyées par XTREM sont omposées des métriques de onsom-
mationetdesmétriquesdeperformanes.XEEMU[31 ℄,unautresimulateurdeproesseurXsale
propose une amélioration du modèle de simulation en augmentant la simulation mémoire. Ce
genrede travauxmontrebien quel'inuenede lamémoire surles performanes temporelleset
énergétique est importante. D'un point de vue métrique, e derniertravail est identique à son
prédéesseur.
2.3.2 Simulation de plateformes omplètes
Laseondefamilleorrespondàdessimulateursquivisentplutt l'évaluationénergétiquede
systèmeslogiiels plusomplexesenintégrant laonsommation del'ensembledespériphériques
du systèmematériel,omme lessystèmes d'exploitation.
SoftWatt,proposéparGurumurthietal.dans[28℄,estparfaitementreprésentatifdeegenre
d'approhe.Pourrépondreàegenred'intérêts,ilsmodélisentunsystèmeontenantproesseur,
mémoires etun disque dur ommeseul périphérique. Le modèle est de niveau arhitetural, et
l'évaluationdelaonsommationdesblosfontionnels estprise enhargepar desmodèlesana-
lytiques. Ce simulateur est omposé de deux phases distintes. La première utilise un outil de
simulationSimOS[62℄,enhargedesimulerlematériel.Lemodèledeonsommationestensuite
évalué dans une seonde phase. Cet outil de simulation vise des systèmes haute performane
(MIPS R10K) etpermet d'exéuter un système d'exploitation (IRIX) surlequel s'exéute une
mahine virtuelle Java (Java VitualMahine JVM).Les métriques obtenuesde ette évalua-
tion sont très prohesde elles proposés par Watth,à savoir unepuissane moyenne, l'énergie
onsommée etl'indiateur duproduit énergie-retard.
Tan et al. [72℄ proposent un outil similaire ayant pour ible le développement de systèmes
embarquésintégrant unsystèmed'exploitation.Cetoutil,EMSIM,simuleunmatérielintégrant
un proesseur de type Intel StrongARM, proesseur d'une famille largement employée dans
les systèmes embarqués. Le modèle utilisé pour estimer la onsommation est dérivé de elui
proposépar Simuniet al. [66℄ augmenté pour l'estimationde onsommation despériphériques
grâe à desmesures proposées par Flinnet al. [21℄. Cesimulateur permet uneestimation de la
onsommationdeprogramme,proessusdansunsystèmed'exploitation(Linux). Ilrenvoiealors
une métrique de onsommation ramenée aux fontions pour haque proessus. Le simulateur
est hautement dépendant du systèmed'exploitation simulé, arilinterepte les appels système
ommelaréationdeproessuspourmettreenplaedesstruturesdesuividelaonsommation.
D'autre travaux s'intéressent à des systèmes embarqués plus petits où la onsommation
énergétique est une question partiulièrement importante, les n÷ de réseaux de apteurs sans
l. Dans ette atégorie, on retrouve TOSSIM [46℄ instrumenté ave une aratérisation éner-
gétique utilisant des mesures de benhmarks, PowerTOSSIM [65℄. TOSSIM est un simulateur
fontionnelqui utiliseunmodèledesimulation nes'appuyant passurl'exéution dubinairesur
le matériel. Il remplae la partie d'abstration de matériel du système d'exploitation TinyOS
par desbibliothèques quipermettent d'exéuterle logiielsurla mahine de développement. Il
ne simuledon pasle matérielen détail. PowerTOSSIM estlimitépar e modèlede simulation
etsonutilisation estrestreinte à unsystème d'exploitationpréis(TinyOS).
Les travaux de Landsiedel et al. [39℄ sont plus préis de e point de vue, ar ils proposent
une extension d'unautre simulateur de n÷ud de réseau de apteurs, AVRORA [74℄. Cette ex-
tension,AEON,utilise aussiunearatérisationpar mesuresphysiquesdelaonsommationsur
le matériel. AVRORA simule un n÷ud intégrant un miro-ontrleur AVR,un mia2. Il s'agit
estimations de AEON par rapport à elles de PowerTOSSIM est annoné à 15%. Ces deux
derniers travauxportent plusd'attention à laonsommation despériphériques, plus partiuliè-
rement auxinterfaes sans lqui sont des grosontributeurs danslaonsommation globale de
es plateformes. Onvoit apparaître d'autres représentations de la onsommation ii, des trae
linéaires de onsommation pour les divers périphériques. Ce genre de simulateur est d'ailleurs
utilisé pourdestravaux d'évaluationde protoolede ouhe MAC ommeB-MAC [58℄
On voit bien que toutes familles onfondues, ertains simulateurs sont plus orientés vers
l'évaluation algorithmique et l'optimisation logiielle par exemple pour orir des informations
à une phase de ompilation. À l'opposé d'autres simulateurs sont beauoup plus orientés vers
l'évaluationdesystèmelogiielomplet,systèmed'exploitationparexemple.Cesderniersportent
plus d'attention que les premiers aux périphériques. Les premiers proposent des métriques de
haut niveau, alors que les seonds prennent en ompte l'évolution de la onsommation dans
les périphériques. Cependant auunemétriquemixant les deuxinformationsn'est proposée. De
plus, il estregrettable que l'ensembledessimulateurs orant desmétriques pour l'optimisation
logiielle perdent les informations d'évolution de la onsommation au ours de l'exéution du