Title: Mod
1Ecole darchitecture Mars 2005
- Modélisation et optimisation de la Consommation
dans - les architectures embarquées
- C. Belleudy
Laboratoire I3S, UNSA-CNRS 2000, route des
lucioles Les Algorithmes - bât. Euclide B, 06903
Sophia Antipolis -France
2PLAN
- Généralités sur la consommation électrique des
circuits numériques - Estimation et optimisation de la consommation des
ASICs et des FPGAs - Estimation et Optimisation de la consommation des
processeurs et des mémoires
3PLAN
- Généralités sur la consommation électrique des
circuits numériques - La consommation ?
- Les sources de dissipation
- Optimisation
- Estimation et optimisation de la consommation des
ASICs et des FPGAs - Estimation et Optimisation de la consommation des
processeurs et des mémoires
4Evolution de la technologie
W
année
W
année
Prévisions ITRS 2003
année
5Quelques chiffres ?
Bo02
- carte mère Intel D865GvHz
- Minimum loading 190 W (aucune application
sexécute), - Maximum loading 286 W (heavy gaming
application).
6Quelques chiffres ? Le packaging
Ti98
Souce P. Maurine - AS-LP
W
Boîtier Céramique 4 fois plus cher que le
boîtier plastique (Plt2W/cm2).
Refroidissement 1/puce/watt au dessus de 40 W.
(Source INTEL).
7Quelques chiffres ? Les batteries
Batteries au lithium 1992 90 Wh/kg, 2000
140 à 160 Wh/kg . 2007 de 190 à
200 Wh/kg. Source CEA
Piles à combustibles ?
8Température dans le circuit Sil04
Température de la jonction de 85C -gt 125C
Fmax diminue de 14 Le circuit se dégrade
exponentiellement à la température de la jonction.
9La consommation des circuits ?
Diversité et complexité accrues des applications
Audio, vidéo, téléphonie, bureautique,
messagerie Autre milieu médical ...
...
10Les sources de dissipation Puissance et Energie
P Pstatique Pcommutation
V
dd
PMOS
V
e
V
s
NMOS
Puissance de repos
Due aux commutations en sortie de la porte CMOS
11Puissance dynamique
Pcommutation Pcourt_circuit Pdynamique
CL capacité de charge (loading charge)
Pcourt_circuit changement détat les deux
transistors NMOS et PMOS sont conducteurs
simultanément, 10 à 15 de Ptotale. Par
transition (0-gt1) Pdynamique Cl.Vdd2.F
12Puissance statique
CMOS interrupteur imparfait
Courants inverses de diodes (jonction)
Subtreshold current (I2) Transistor PMOS laisse
passer le courant, Transistor NMOS ouvert,
Vdrain Valim, Vsubstrat 0V ? Courant de
fuite.
Pstatique Isub. Vdd Idiodes.Vdd
13Puissance statique courant statique Isub
Isub
VT tension de seuil (Threshold Voltage)
Courant de fuites attention circuit mémoire,
W/L, VTH, T ?
Cas idéal VTH/Vdd lt 0.3 Bo02
Isub (W/L) e(-VTH/T)
14Influence de VT sur Pstatique
T. Sakurai, ISSCC2003
Ileakage 0.01 µA/µm pour une techno de 130
nm Ileakage 3 µA/µm pour une techno de 45 nm
15Puissance statique, Puissance dynamique
Source P. Maurine - LIRMM - AS-LP
16Du coté des batteries
- Choix dune batterie adaptée Wh/Kg ,
- Le temps de décharge de la batterie à courant
constant
Lénergie totale C fournie par une batterie
idéale est C In .Tl (loi de Peukert) n
constante propre à la batterie (cas idéal
n1), Tl temps de décharge en heure, I
courant de décharge.
A Typical Discharge Profile (Li/MnO2DL2/3A Cells)
Ge01
17Du coté des batteries
Modèle électrochimique trop complexe, Modèles
basés sur des circuits électriques ?
Maîtriser E, Pmoyen, Ppic (Le packaging est
déterminé par rapport à Ppic/cm2).
Pmoyen constant Ma99
18A quel niveau doit-on intervenir ?
SOURCE MEDEA conférence/octobre 2002
19Comment réduire la consommation ?
- Couper la tension dalimentation
- Exemple modes de repos (idle, sleep) des
processeurs (LParm, StrongArm, Arm7, 9, 11,
Crusoé, Xscale, Pentium M, PowerPC) -
- Baisser la tension dalimentation
- (voltage scaling)
- T K. CL.Vdd/(Vdd-VTH)2
- Lorsquon baisse le tension
- dalimentation, F doit être recalculée
- gt on parle de couple (V,F)
20Comment réduire la consommation ?
- Baisser la fréquence du circuit
- Ppic et Pmoyen diminuent, E reste inchangée gt
permet de limiter la dissipation thermique et de
maîtriser le pic de puissance (Ppic détermine le
prix du packaging). - Réduction du nombre de commutations niveau
porte, processeur, bus et mémoire. - Taille des transistors Permet de diminuer la
capacité de charge équivalente.
21Comment réduire la consommation ?
- Plusieurs VT Influence de VTH
1- Dual Treshold CMOS (DTCMOS) 2xVTH VTH bas
sur le chemin critique, VTH haut hors chemin
critique. 2 - Multiple Threshold CMOS (MTCMOS)
Ca04 VTH bas fonctionnement normal, VTH haut
en mode repos.
VTH
22Comment réduire la consommation ?
- Plusieurs VTH In01 3 - Variable Treshold
CMOS Transistor (VTCMOS)
Sub1 VTH haut Sub0 VTH bas
Transistor off VGS 0V, Transistor on VGS
Vdd.
gt ABB (Adaptative Body Biaising)
23La consommation dans un SOC
Ordonnancement
Bibliothèques
Architecture du SOC
Application
Contrôle Flots de données
Ensemble de Tâches
Contraintes - Temps - Consommation - Surface
24La consommation ?
25PLAN
- Généralités sur la consommation électrique des
circuits numériques - Estimation et optimisation de la consommation des
circuits logiques (ASIC/FPGA) - Estimation de la consommation des ASICs
- Optimisation de la consommation des ASICs
- Cas particulier des FPGAs
- Estimation et Optimisation de la consommation des
processeurs et des mémoires
26Estimation niveau logique principe
- P Pstatique Pdynamique
- Pstatique Vdd.Si (Istatiquei)
- Istatiquei N.Kdesign.Îleak
- Avec
- N nombre de transistors,
- Kdesign représente les caractéristiques
- du circuit,
- Îleak dépendant de la technologie,
- de VTH.
Circuit N Kdesign
D Latch 10/bit 1.4
D FlipFlop 22/bit 2.0
Mpx 2-gt1 2/bit/entrée 1.9
1 cell 6T-RAM 6/bit 1.2
Porte logique 2/entrée 11
27Estimation niveau logique principe
ai Nombre de transitions 0-gt1 de la porte i
pendant le cycle dhorloge j. Pi puissance
dissipée lors dune commutation de sortie par la
porte i.
Pclock consommation sans activité en sortie de
la bascule, PQ consommation due à la
commutation de sortie, ai nombre de commutation
de sortie.
28Estimation niveau logique Méthode statistique
Calcul de la consommation à partir de lactivité
gt Déterminer toutes les transitions gt
Processeurs actuels 500Mtransistor/cm2 gt Temps
de calcul ?? 1 - Méthode statistique
P1 P2 Pn
Simulateur
Vecteurs de test représentatifs
Pmoyen
Sappuie sur les simulateurs logiques du commerce
(Cadence, SPICE, .). 2 - Méthode probabiliste
(SequenceDesign, BuildGates-Cadence, .)
Analyseur
Extraction de Propriétés
Vecteurs de test
Pmoyen
29Estimation niveau logique modèle probabiliste
- Modèle probabiliste a est remplacé par la
probabilité de transition notée P0-gt1. - P0-gt1 P0(out0).P1(out1) P0(1-P0)
- Si les N entrées dune porte ont la même
probabilité de transition alors
Exemple P0-gt1 P0.P1 1/2.1/21/4 Notons
PAP(A1) et P(A0)1-PA P0-gt1 (1-PA)PA gt
Glitchs non pris en compte
A OUT
O 1
1 0
30Estimation niveau logique les Glitchs ?
ns
31Estimation niveau logique cas des FSM
Calcul des probabilités de transition
Calcul des probabilités des états et de la
probabilité totale de transitions Pi,j
PQ1 P1,2PS1 P3,4PS3 PQ2 P2,3PS 3
32Optimisation ? Dynamic Power Management (DPM)
- Vdd
- Power Supply Shutdown on coupe lalimentation
des parties du circuit qui ne sont pas utilisées, - Voltage Scaling on abaisse la tension
dalimentation (gt F diminue) hors chemin
critique. - Clock gating principe
- Larbre dhorloge 30 Pcrête d un processeur
- Pbasc a .(PQ Pclock)
T gt TCLK TAND Tlatch
gt Réduit aussi le nombre de commutations
inutiles.
33Clock gating pour les unités de contrôle
Avec Fa Si Sj (Si.Cj) avec Cj condition pour
rester dans Si
- Gain en puissance variant de 10 à 30,
- Augmentation en surface de 9 à 38.
34Clock gating pour les unités de contrôle
- Le gain en consommation dépend de la qualité du
partitionnement (ILP, Algorithme génétique) - puissance -30, vitesse 12,
- surface de silicium 28 sur la FSM, 8
sur le circuit total.
35Clock gating
- Clock gating pour les unités fonctionnelles
- Principe on se sert des contrôles de sortie pour
désactiver les registres dentrées.
- Implantée dans les microprocesseurs haute
performance. - Puissance -10 sur la puissance, peu
daugmentation de la surface de silicium.
- Clock gating commandé par linstruction
36Autres Optimisations Influence du codage
- Compteur 9,5 mW/Mhz par transition 0-gt1.
- Compteur binaire naturel 4 transitions en
moyenne (2 montantes, 2 descendantes) - Pmoyen 2x9,5 mW/Mhz 8xPclock
- Compteur Binaire réfléchi
- Pmoyen ½ 9,5 mW/Mhz 8xPclock
- Exemple dapplication compteur de programme
dun processeur - Application aux unités de contrôle
Chemin le plus probable coder avec un nombre
minimum de transitions (distance de Hamming).
37Autres optimisations pré calcul
- Principe éviter le passage par une fonction
coûteuse lorsque le résultat peut-être pré
calculé.
Exemple comparateur AgtB Si les deux MSB sont
différents alors le résultat peut-être déterminé
sans soustraire A et B.
38Autres optimisations parallélisation,
pipeline(décodage de viterbi 16 bits)Be98
Pref Cref.Vref2.Fref 14.7 mW Cref 31 pF,
Fref1/40 ns, Vref 5V
Ppipeline (1.15).Cref. (0.58.Vref2).
(Fref) 5.7 mW
Pparallèle (2.15).Cref. (0.58.Vref2).
(0.5.Fref) 5.3 mW
39Parallélisation, pipeline, Pstatique ?
Techno 65 nm Pdyn/Pstatique 1 Pref
PdynPstatique 2 . P Pparallèle 0,36. P
1,98.P.(0,58) P.(0,36 1.98.0.58) 1,508.P
Ppipeline 0,39. P 1,1.P .(0,58) P.(0,39
1,1.0,58) 1,028. P.
40La Consommation des FPGAs
PFPGA/PASIC 100 à 300 ? Xilinx4000 gt
1000nW/MHz/porte ASIC gt 20-30nW/Mhz/porte
SOURCE ramirtha-EEC2890-Winter 2004
41La consommation des FPGAs
Exemple de schéma dun bloc Logic
Architecture dun FPGA type ISLAND
- Pdyn Pdyncell Pdynhorloge Pdyninterconnect
- Pstatique SallcellIleakcell
Sallroutingswitch Iswitch Sall
ramcellIleakramcell
42Réduction de la consommation des FPGAs
- Consommation des blocs logiques méthodes
identiques aux ASICs ? , - Consommation dans le réseau dhorloge
- - Clock gating gt cellule dentrée
- - Clock gating par bloc ?
- Mode basse consommation 100µA, (800ns pour
passer en mode basse consommation, 200 µs pour
retourner en mode run source FPGA Actel). - Deux Vdds Blocs logics avec
- soit VddH, soit VddL
- soit choix par programmation.
2 ns
43PLAN
- Généralités sur la consommation électrique des
circuits numériques - Estimation et optimisation de la consommation des
circuits logiques (ASIC/FPGA) - Estimation et Optimisation de la consommation des
processeurs et des mémoires - Estimation de la consommation du processeur et du
système mémoire - Réduction de la consommation du processeur
- Réduction de la consommation du système mémoire
44Processeur et mémoire (système monoprocesseur)
mp
E Eprocesseur Ebus E mémoires Emémoires
Emémoires internes (cache, scratchpad)
Emémoires externes
45Consommation logicielle
- E Si Ei Ni Si,j Oi,j Mi,j Sk Ek Ti98
- Avec Ei énergie propre à linstruction i,
- Ni nombre dinstruction de type i,
- Oi,j overhead entre les deux instructions de
type i,j (changement de chemin de donnée) - Ek énergie due aux défauts de cache, et aux
ruptures de pipeline.
46Consommation logicielle Instruction Level Power
Analysis
Ni, Mi,j, Ek ?
Programme asm ou C
Intégration du parallélisme
Ii, Ii,j
Calcul de E et Ppic
VESTIM-LP Gu01
Ii, Ii,j Mettre 150 à 200 (E(200.Ei)gtgt
Erebouclage) fois la même instruction i (ou la
paire dinstruction i,j) dans une boucle.
Effectuer ces mesures sans puis avec commutation
de données. Ces mesures peuvent être effectuées
par classe dinstructions.
47Consommation logicielle Fonctional Level Power
Analysis
1- Analyse fonctionnelle de larchitecture gt
paramètres architecturaux significatifs pour la
consommation et définition du modèle de E et P. 2
Mesures caractéristiques Exemple SoftExplorer
(N. Julien Lester AS-LP)
- ? taux de parallélisme,
- ? taux d utilisation des unités de traitement
- ? taux d accès en mémoire externe
- ? taux de défaut de cache
- ? taux d utilisation du DMA
- PSR taux de rupture de pipeline
Exemple TI TMS320C6201
Itotal f(mode mémoire, F, ? , ? , ?)
48Architecture du système mémoire et consommation
Temps daccés aux données
Mémoires locales Mémoires cache flexibles
mais consommatrice, Mémoires Scratch_pad SRAM
localisée sur laquelle on mappe les variables les
plus fréquemment accédées, Mémoire externe ou
principale DRAM, MRAM, Flash ...
49Architecture du système mémoire et consommation
Mémoire Principale
L2 Cache (SRAM)
Processeur
L1 Cache (SRAM)
1 cycle, Temps daccès 3 ns, 0. 565 nJ
5 à 10 cycles Temps daccès 20 ns, 5. 83 nJ
20 à 50 cycles temps daccès 75 ns, 100 mW
Cellule SRAM 6Trs Cellule DRAM 2 Trs
0
Scratch Pad Mem
P-1
P
Mémoire externe
Processeur
1 cycle
Espace mémoire adressable
Cache de données
N-1
50Architecture du système mémoire scratch-pad
Calcul de lhistogramme dune image Char
Image512512 Int Histo256 For
(i0ilt512i) For (j0jlt512 j) level
Imageij HistolevelHistolevel1
Espace mémoire adressable
Configuration 1 - Cache 2K cache misses dues
aux conflits dadresse entre Image et Histo.
Optimisation difficile car ladresse de Histo est
dépendant de la valeur du pixel. Configuration 2
cache 1K-Scratchpad 1K Histo est placé dans
le scratchpad.
51Consommation des SRAM (cache, scrachtpad)
Ecache F(Line size, associativity, cache size,
word size, techno) Estimation CACTI CA
52Consommation des DRAM
- SDRAM ESDRAM ESTBY EREFRESH EREAD EWRITE
- Typiquemment le refresh intervient toute les 64
ms. - Benchmarks SPEC95
Read/write Transaction
RDRAM (Rambus DRAM)Le00
Active (300mW)
6000ns
capacité 64 Mbits répartie en 4 bancs
6ns
Power down (3mW)
Standby (180mW)
60ns
Nap (30mW)
53Consommation des DRAM Mémoire multi_bancs
Processor Cache
16
16
16
16
Chip 1
Chip 4
Chip 3
Chip 2
54Consommation de la hiérarchie mémoire
- Ememorysystem Ecaches Escratchpad Emain
memory -
- Ecaches Sn Ecache i n nombre de caches
(données instructions) - Ecache i Sm Ehit Sp Emiss Sl Enoaccess
- Emain memory Sk Eaccess Sj Enoaccess
- ( si différents modes )
- Pml k i durée dexécution de lapplication
55Réduction de la consommation transformation de
code
- E Si Ei Ni Si,j Oi,j Mi,j Sk Ek
- Ei
- Utiliser des formats adaptés à léchelle de
numération souhaitée - Exemple type int , 18.2 sur P que pour
char ou short . - Favoriser lutilisation des opérations
consommant moins dénergie. - Exemple A2 gt AA.
- Oi,j Réordonner les instructions après
ordonnancement - Principe Réordonner les instructions afin de
réduire les commutations entre deux instructions
consécutives. - Exemple pour le processeur Fujitsu DSP
- 1. LDI Séquences 1,2,3 gt 87.3 mA
- 2. MOV2 2,1,3 gt 71.4 mA gain de 22
- 3. ADD
56Réduction de la consommation transformation de
code
- Ek Réduction du nombre de rupture de pipeline
- Basé sur les probabilités de passage dans les
séquences dinstructions. - Exemple
- IF ()
- Then lt Prob0.3
- seq instr 1
- Else lt Prob 0.7
- seq instr 2
- END IF
- Pour le pentium 4, taille du pipeline 20
- Ei, Ek Réduction du nombre daccés mémoire et
de défaut de cache - Modifications algorithmiques favoriser
lutilisation des registres. - Modifications architecturales,
- Combinaison des deux.
Beq seq instr1 Seq instr 2 Jump END IF Seq instr
1 END IF
Bne seq instr2 Seq instr 1 Jump END IF Seq instr
2 END IF
57Réduction de la consommation transformation de
code
Loop Interchange
for(j0jltNj) for(i0iltNi)
Aji Aji 1
for(i0iltNi) for(j0jltNj)
Aji Aji 1
Hypothèse les données sont stockées par ligne,
Aji et Aji1 sont à des adresses
consécutives.
Loop Fusion
for(i0iltNi) BiAi 1 for(i0iltN
i) CiAi 3
for(i0iltNi) BiAi 1 CiAi
3
Cette transformation réduit le nombre de défauts
de cache. Si A peut_être affectée à un registre
gt une seule lecture mémoire.
Loop Unrolling
for(i0iltNi) BiAi Ai1
Bi1Ai1 Ai2
for(i0iltNi) BiAi Ai1
Si Ai1 peut_être affectée à un registre gt une
seule lecture mémoire. Pb Augmente la taille du
code (cache dinstruction).
58Réduction de la consommation transformation de
code
Multiplication de matrice
for(j0jltNjT) for(k0kltN kT) / un
block de taille T / for(i0iltNi)
for(jjjlt min(jT-1,N-1)j)
for(kkklt min(kT-1,N-1)k)
Cij Cij Aik Bki
for(i0iltNi) for(j0jltN j)
for(k0kltN k) Cij Cij
Aik Bki
Loop Tiling Transformation
A, B, C ne rentrent pas dans le cache gt
décomposition par bloc dont la taille rentre dans
le cache (Tile size). gt Autre solution
modification du calcul dadresse associé à un
code de gray
Tile 1 A00, A01, A10, A11, Tile
2 A02, A03, A12, A13,
Tile 2
Tile 1
Tile 3
Tile 4
59Réduction de la consommation Architecture du
système mémoire
- Système embarqué Architecture mémoire adaptée
à lapplication afin de diminuer le nombre de
défaut de cache degré dassociativité, niveau
de cache, taille de ces différents niveaux de
cache gt dépend de lapplication ?
60Réduction de la consommation DVFS, ABB, modes
repos
- Pour les processeurs DVFS (Xscale, Transmetta,
StrongArm, Lparm ) on adapte la vitesse de
fonctionnement en fonction des contraintes
temporelles (problème dordonnancement). - Modes repos idle, sleep
Processeur StrongArm (59 Mhz, 0.8 V) -gt (206
Mhz, 1.5 V)
- ABB (Adaptative Body Biaising) VTH variable
61Quelques chiffres
Echelle de V,F P(V,F) Modes repos (Pénalités)
StrongArm SA110 0.8V,59Mhz 1.5V,206Mhz _ 400mW Idle 160mW (10 µs) Sleep 50mW (160 ms)
LParm (base ARM8) 1.1V,10Mhz) (3.3V,100Mhz) 1.8 mW 220 mW Idle 500µW (1 cycle)
PXA255(Xscale) 1V,200Mhz 1.3V,400Mhz 0.9 W 1.5 W Pidle(F,V) 45 à 939 mW Sleep (P45µA)
Arm1176 (130µm) De 330 Mhz à 550 Mhz 0.8mW/Mhz avec cache 0.6 mW sans cache _
Transmetta 0.8V, 300Mhz 1.3V,1GHz _ _
FPGA-Actel Flt400Mhz 1000nW/MHz/porte stby 100µA (800ns,200µs)
62E processeur DVFS ou mode repos ?
F1,V1
WCET (Worst Case Execution Time)
Tâche1
Processeur inactif
E Etâche1,F1,V1 Einactif
DVFS
Modes repos
E Etâche1,F1,V1 Etransitionrepos Emode
repos E gt Etâche1,F1,V1(gtE) lt E Ppic
inchangé, Prepos gt rechargement de la batterie ?
E Etâche1,F2,V2 EtransitionDVS E lt
Etâche1,F1,V1 lt E E et Ppic réduit.
63DVFS ou modes repos
Recherche des différentes vitesses de
fonctionnement du ou des processeurs.
Echéance
Mode repos
T1 (V,F)
PE1
T6 (V,F)
T3 (V3,F3)
Exploitation des modes repos lorsque F nest plus
disponible. gt Et la mémoire ????
F CPU (Mhz) ECPU Emem Etotal
50 1.04 37.71 38.75
200 1.58 9.51 11.09
600 3.63 3.25 6.88
1000 7.88 2.02 9.9
Exemple décodeur MPEG (Processeur intel
XSCALE) Le00
P en mW, E en mJ
64E processeur Emémoire DVFS ou mode repos ?
Modes repos
DVFS
T1
T3
T2
T1
T3
Eproc Etâche1,F2,V2 EtransitionDVS Sans
cache Emem Pmactive . (T3-T1) Avec cache -
sans défaut de cache Emem Pmstby . (T3 -
T1) Avec cache - Avec défaut de cache Emem
Pmstby . T.F1/F2 Pmactive . T
Eproc Etâche1,F1,V1 Etransition Emode
repos Emem Pmactive . (T2-T1) Pmstby .
(T3 -T2) Emem Pmstby . (T3 - T1) Emem
Pmactive.T Pmstby.T Pmstby.(T3
T2)
65DVFS Gestion des modes repos du système mémoire
(RDRAM) Le00
F CPU (Mhz) ECPU Emem Etotal
50 1.04 37.71 38.75
200 1.58 9.51 11.09
600 3.63 3.25 6.88
1000 7.88 2.02 9.9
P en mW, E en mJ
Exploitation des modes STBY, NAP, PDN
Exemple décodeur MPEG (Processeur intel XSCALE)
F CPU (Mhz) P CPU P mem ECPU Emem Etotal
50 16.5 31.5 1.04 1.98 3.02
200 98.5 35.6 1.58 0.57 2.15
600 639 43.5 3.63 0.25 3.88
1000 2169 50.1 7.88 0.18 8.06
66Ordonnancement basse consommation (monoprocesseur)
- Considérons un ensemble de tâches définies par
- Ci (Worst Case Execution Time WCET) pire
temps dexécution dune tâche i, - AETi temps effectif dexécution dune tâche i,
- Ai Date dactivation dune tâche i,
- Ti Période dune tâche i Echéance dune tâche
i (Di). - Principe de la politique RM (Rate Monotonic)
Gru02 Priorité à la tâche qui a la plus
petite période. - (à priorité fixe) Pour N tâches
67Ordonnancement RM-LP hors ligne
- Recherche dun facteur de ralentissement global
- gt Rechercher S Fref/F facteur de
ralentissement (Sgt1).
On cherche un facteur de ralentissement CiCiS
tel que
68Ordonnancement RM-LP hors ligne
Exemple
Ordonnancement RM
Tâche WCET Période
T1 1 3
T2 1 4
Hyperpériode
P
t
Choix de Emin (E Eproc Emem) Parmi EDVFS et
Emoderepos
Hyperpériode
P
t
Modes repos
69Ordonnancement RM-LP hors ligne
Solution ?
P
t
- Recherche dun facteur de ralentissement local
- Si il reste du temps, recherche dun facteur de
ralentissement local.
P
t
70Ordonnancement en ligne
- Principe redistributions des gains
- Lorquune tâche termine, on calcule la différence
entre le WCET et le AET et on redistribue le
temps gagné soit - à la tâche qui débute son exécution,
- à toutes les tâches en attente.
Tâche WCET Période Exécution 1
T1 1 3 0.5
T2 1 4 1
71Ordonnancement CC-RM SH03
Tâche WCET Période Exécution1 Execution2 Execution3 Exécution4
T1 1 3 0.5 0.5 0.5 0.5
T2 1 4 1 0.5 1
Dj deadline
En ligne gt EDF ... Modes repos ?? Prédiction
? Coût de lordonnancement en ligne Power-aware
???
72DVFS et ABB Je04
- Modélisation de Pleakage (V) de façon à valider
le gain attendu P Pdynamique(Vdd,F)
Pleakage (Vdd) à Vth constant. - Gestion du DVFS et du ABB (Adaptive Body
Biaising) - P Pdynamique(Vdd,F) Pleakage (Vdd,Vth)
- avec Vth Vth1 K1. Vdd K2.Vbs
- Pleakage Vdd. (K3. eK4Vdd.eK5Vbs)
Vbs.Ij. - Exemple processeur crusoe 70 µm
- Vdd1V, Vbs 0V gt E 93.5µJ,
- Vdd0.85, Vbs 0V gt E 73.8µJ,
- Vdd1V, Vbs -0.66V gt E 50.6µJ.
- Politique dordonnancement ?
73Réduction de la consommation Autres mémoires
- Mémoire 1T-SRAM (proposée par MoSys Mo)
- Cellule de base un transistor et une capacité
(MOS). - Une petite taille de cellule (1/3-1/4 dune
cellule SRAM) - Facilité de leur intégration
- de très grandes vitesses, 220Mhz pour une
technologie 0.25 µm, plus de 300 Mhz pour une
technologie 0.18 µm. Ces mémoires surpassent les
mémoires DRAM en terme de densité ? - Mémoire MRAM (proposée par Cypress)
- Capacité actuellement 2 Mo par chip, en 2006,
32Mo. - Forte consommation en écriture, faible
consommation en lecture, - Quelques chiffres Documentation cypress
- 32Kx8, Read and write access 70 ns, active
power 495 mW, standby mode 825 µW.
74Autres mémoires
- Victim Buffer Zh04 mémorise les lignes
récemment expulsées du cache. - Frequent Value Va04 les données du cache sont
divisées en deux catégories FV pour Frequent
value et NFV pour Non frequent value .
Les FVs sont stockées sous un format encodé dans
un petit bloc tandis que les NFVs occupent un
bloc plus large sous un format non encodé.
75Conclusion
- Evolution des techniques dordonnancement hors
ligne et en ligne afin de réduire la consommation
processeur système mémoire en tenant compte du
DVFS/ABB et des modes repos du processeur et des
mémoires, - Impact de lallocation mémoire ?
- Gestion du RTOS complexe gt réalisation de
certains services en HW. - Systèmes Multiprocesseurs ?
- NOC (Network On Chip) ?
76Conclusion ITRS 2004
année 03 04 05 06 07 08 09 12 15 18
SOC Dynamic power reduction 0 0.1 0.1 0.2 0.2 0.2 0.2 6 4.7 8.1
SOC Static power reduction 0.37 1.4 2.4 3.4 5.1 6.4 8.7 18.8 44.4 232
Manufacturable solutions exist. Manufacturable
solutions are known. Manufacturable solutions are
not known.
77Bibliographie
- Ac03 A. Acquaviva, T. Simunic, L. benini,
LP-ECOS An energy efficient RTOS , HP
Lanoratories, April 2003. - Be98 Luca Benini, Giovanni De Micheli ,
Dynamic Power Management, Luca Benini, Giovanni
De Micheli, Kluwer Academic Plublishers,1998. - Be00 L. Benini, A. Bogliolo, G. De Micheli, A
survey of design technique for system Level
dynamic power Management , IEEE transactions on
VLSi Systems, vol. 8, No. 3, Juin 2000, pp.
299-316. - Bo02 Bokar, www.intel.com.
- Ca04, B.H. Calhoun, F.A. Honoré, A. P.
Chandrakasan, A Leakage Reduction Methodology
for distributed MTCMOS , proceeding of IEEE
Joiurnal of Solid-state circuits, vol.39, no.5,
may 2004. - Ch02 P. H.Chou, J. Liu, D. Li, N. Bagherzadeh,
IMPACCT Methodology and tools for Power-Aware
Embedded Systems , Design Automation for
Embedded Systems, Kluwer Academic Plublishers,
pp.205-232, 2002. - Da99 P. dave, G. Lakshminarayana, N. Jha,
COSYN Hardware-Software Co-Synthesis of
heterogeneous distributed Embedded Systems, IEEE
Transactions on VLSI systems, Vol. 7, No. 1, mars
1999. - Do94 M. Doyle, J. Newman, J. Reimers, A quick
method for measuring the capacity versus the
discharge rate for a dual Lithium-ion insertion
cell undergoing cycling , Journal of pwoer
sources, Vol. 52, No. 2, décembre 1994, pp.
211-216. - Ge01 Jun fei Geng, Battery Modeling a Longer
Lifetime, (duke University). - Gr02 F. Gruian, Energy centric Scheduling for
Real Time Systems , PhD thesis Lund Institute of
Technology, 2002.
78Bibliographie
- Gu01 Guitton-Ouhamou Patricia, Belleudy
Cécile, Auguin Michel, Power consumption Model
for the DSP OAK Processor, proceedings of 11th
IFIP International Conference on Very Large Scale
Integration-System-On Chip 2001, December 3-5
2001, Montpellier, France, pp73-78. - Gu03 P. Guitton-Ouhamou, K. Ben Chehida, C.
Belleudy, M. Auguin, Automatical architecture
exploration Energy optimisations of a codesign
tool for embedded HW/SW systems, first Northeast
Workshop on Circuits and Systems (NEWCAS'2003),
sponsored by IEEE June 17 - 20, 2003, in
Montréal, Canada. - FEL03 Xiaobo Fan, Carla Ellis, and Alvin
Lebeck. Interaction of power-aware memory systems
and processor voltage scaling. In Proceedings of
the Workshop on Power-Aware Computer Systems
PACS'03, December 2003. - In01 T. Inukai, T. Hiramoto, T. sakurai,
VTCMOS in Seris Connected circuits ,
Proceedinf of ISPLED 2001. - Je04 R. Jejurikan, C. Pereira, R. Gupta,
Leakage Aware Dynamic Voltage Scaling For
Real-Time Embedded Systems , Proceeding of
Design Automation Conference 2004. - Ki04 W.Kim, J.Kim, S.L Min Preemption-awware
dynamic voltage scaling in hard real time
systems , ISLPED 2004. - Le00 X. Fan, C. Ellis, A. Lebeck, The
synergy between Power-Aware Ssystems and
Processor Voltage Scaling , Proceedings of the
International Symposium on Low-Power Electronics
and Design ISLPED'01, August 2001. - Lu01 Jiong Luo, Niraj K. Jha "Battery-Aware
Static Scheduling for Distributed Real-Time
Embedded Systems", in proceedings of 38th
Design Automation Conference 2001 p. 444 June
18-22, 2001 Las Vegas. - Lu02 J. Luo and N. K. Jha, Static and dynamic
variable voltage scheduling algorithms for
real-time heterogeneous distributed embedded
systems, Int. Conf. on VLSI Design, Jan. 2002.
79Bibliographie
- Ma99 Thomas Martin and Daniel Seiwiorek,
"Non-Ideal Battery Behavior and Its Impact on
Power Performance Trade-offs in Wearable
Computing," Proceedings of the 1999 International
Symposium on Wearable Computers, San Francisco,
October 18-19, 1999 pp. 101-106. - Ti98 V.Tiwari, Reducing power in High
performance microprocessors, Design Automation
Conference , 1998, pp. 732-737 - Va04 Chuanjun Zhang, Jun Yang and Frank Vahid,
Low static power frequent value data caches
Date 2004. - Wu03 Dong Wu and Bashir M. Al-Hashimi, Petru
Eles, "Scheduling and Mapping of Conditional Task
Graphs for the Synthesis of Low Power Embedded
Systems", in proceedings of Design Automation
Test in Europe 2003 Munich, Germany, March 3-7,
2003, p.90-95. - Zh03 D. Zhu, R. Melhem, and B. Childers
"Scheduling with Dynamic Voltage/Speed Adjustment
Using Slack Reclamation in Multi-Processor
Real-Time Systems", IEEE Trans. on Parallel
Distributed Systems, vol. 14, no. 7, pp. 686 -
700, 2003. - Zh04 Chuanjun zhang, Frank Vahid, Using a
victim buffer in application-specific memory
hiearachy, DATE 2004. - AS-LP http//lester.univ-ubs.fr8080/julien/AS
20conso/AS20conso2.htm - Ca CACTI http//www.ece.ubc.ca/stevew/cacti.h
tml - Mo Mosys low power design dont forget about
the memory, http//www.mosys.com