SlideShare ist ein Scribd-Unternehmen logo
1 von 77
M1Info-ASE 1
Introduction générale
M1Info-ASE 2
Plan
1. Présentation générale
2. Notions de bases de micro-électronique
Introduction à la technologie CMOS
La « loi de Moore » et ses conséquences
La consommation dans les circuits VLSI
3. Différents types de technologies
Les ASICs (Application Specific Integrated Circuits)
Les circuits FPGA et la logique programmable
4. Les systèmes mono-puce (System on a Chip)
Définition et exemples
Flot de conception d’un systèmes mono-puce
5. Interconnexions pour System on a Chip
Les standard de bus orientés System on a Chip
Les réseau sur puce (Network on a Chip)
M1Info-ASE 3
Systèmes embarqués critiques
Quelques exemples :
Le système doit être correct par conception
Les erreurs/bugs ont un coût extrêmement élevé (ex : Ariane 5)
Automatisation/Formalisation de la conception pour garantir un
minimum d’erreur.
Le coût et le temps de conception sont des critères secondaires.
M1Info-ASE 4
Système embarqués Multimédia
Quelques exemples
Systèmes difficiles à concevoir rapidement !
Marché de +1010 $, produits avec une durée de vie très courte.
Faible coût de production, faible consommation, besoin élevées
en performances.
La notion de « Time to market » est fondamentale !
M1Info-ASE 5
Le Time to market
La durée de conception est un facteur crucial
Revenu
temps
À temps
En retard
Croissance
du marché
Baisse du
marché
Revenu
maximum
Revenu maximum si
arrivée tardive
À temps En retard
M1Info-ASE 6
Quelles compétences pour les S.E ?
Architectures des
machine et systèmes
d’exploitation
Applications &
Algorithmes pour
(ex : multimédia)
Méthodologies
et outils d’aide
à la conception
M1Info-ASE 7
Notions de micro-électronique :
La logique CMOS
M1Info-ASE 8
Qu’est ce que la logique CMOS ?
La majorité des circuits utilisent la technologie CMOS
Transistor MOS = interrupteur contrôlé électriquement
On utilise deux types de transistors MOS : nMOS et pMOS
C
C=0
C=1
B
A
B
A
B
A
C
C=0
C=1
B
A
B
A
B
A
M1Info-ASE 9
0: Introduction Slide 9
Inverseur CMOS
A Y
0 1
1 0
VDD
A=1 Y=0
GND
ON
OFF
A Y
VDD
A=0 Y=1
GND
OFF
ON
n+
p substrate
p+
n well
A
Y
GND VDD
n+ p+
SiO2
n+ diffusion
p+ diffusion
polysilicon
metal1
nMOS transistor pMOS transistor
M1Info-ASE 10
Porte NAND en CMOS
A B Y
0 0 1
0 1 1
1 0 1
1 1 0
A=1
B=1
Y=0
ON
OFF OFF
ON
A=1
B=0
Y=1
ON
ON OFF
OFF
A=1
B=0
Y=1
ON
OFF ON
OFF
A=0
B=0
Y=1
OFF
ON ON
OFF
GND =0
VDD =1
GND =0
VDD =1
GND =0
VDD =1
GND =0
VDD =1
M1Info-ASE 11
Slide 11
Porte NOR en CMOS
A B Y
0 0 1
0 1 0
1 0 0
1 1 0
A
B
Y
A
B
Y
A
B
Y
A
B
Y
M1Info-ASE 12
Types de mémoire
RAM statique (SRAM)
Stockage à l’aide de bascules
Valeur stockée tant que la
mémoire est sous tension
RAM Dynamique (DRAM)
Stockage à l’aide d’un
capacitance
Il faut rafraichir la mémoire
régulièrement car sinon la valeur
stockée est perdue (décharge du
condensateur)
bit bit
word / row select
1
0
0 1
word / row select
bit
C
M1Info-ASE 13
SRAM versus DRAM
SRAM = mémoire rapide de capacité faible à moyenne
Temps d’accès entre 0.5-25ns access time (éventuellement plus
faible quand la mémoire est intégrée dans le composant)
Coût en silicium plus important (6 transistor/bit),
Consommation électrique élevée
DRAM = mémoire lente de grande capacité
Temps d’accès entre 80-250ns
Faible coût en surface (1 transistor/bit),
Consommation électrique relativement faible
M1Info-ASE 14
Organisation d’une DRAM
Row
Decoder
Column Selector / Latch / IO
Row
Address
Column
Address
/RAS
/CAS
DATA
Row Select Line
Bit (data) Line
M1Info-ASE 15
0
0
010
011
Lecture en DRAM
Row
Decoder
Column Selector / Latch / IO
Row
Address
Column
Address
/RAS
/CAS
DATA
M1Info-ASE 16
0: Introduction Slide 16
Dessin de masque
Les transistors et leurs connexion sont définies au
travers d’un dessin de masque.
C’est une « vue de dessus » des couches formant le
circuit sur le silicium.
GND VDD
Y
A
substrate tap well tap
nMOS transistor pMOS transistor
n+
p substrate
p+
n well
A
Y
GND VDD
n+ p+
SiO2
n+ diffusion
p+ diffusion
polysilicon
metal1
nMOS transistor pMOS transistor
Coupe
verticale
Dessin de
masque
M1Info-ASE 17
0: Introduction Slide 17
Dessin de masque
Six niveaux dans ce dessin de masque
En pratique le nombre de couches métal peut-être beaucoup
plus élevé
Metal
Polysilicon
Contact
n+ Diffusion
p+ Diffusion
n well
M1Info-ASE 18
Photolithography
masque
lentille
Circuit
pattern
“wafer”
Lumière
Wafer
circuit
M1Info-ASE 19
Slide 19
Evolution de la taille des transistors
Caractéristiques d’un transistor = fonction de sa taille
Le pas minimum du masque détermine la taille du transistor (et
donc sa vitesse, sa consommation, et sa consommation en
énergie électrique.
On utilise souvent le paramètre f = distance entre la source et le
drain pour un transistor.
Défini par la largeur minimale d’une trace de polysilicon
Evolutions technologiques
Les amélioration de procédés photo lithographique permettent
de diminuer la valeur de f de 30% tous les 2-3 ans !
On dispose donc, de + en + de transistors pour une surface de
silicium donnée (et des transistors de + en + rapides)
M1Info-ASE 20
La “Loi de Moore”
Projection de Gordon Moore (PDG Intel)
Le nombre de transistors dans un circuit double tous les 18 mois
M1Info-ASE 21
Une illustration de la loi de Moore
Le processeur Intel 4004 a été conçu en 9 month par 2 ingénieurs
Dessin de masque réalisé sur une grande feuille de papier
Le P4 a nécessité 500 ingénieurs pendant 4 ans
La feuille de papier aurait eu la taille d’un terrain de football …
4004, 1971
2300 trans.
80486, 1990
1.200.000
trans.
Pentium4, 2001, 42.000.000 trans
[Intel02]
M1Info-ASE 22
Le « design productivity gap »
La productivité des concepteurs n’évolue pas assez vite
On ne sait plus quoi faire des transistors disponibles
10,000
1,000
100
10
1
0.1
0.01
0.001
Transistors
per
Chip
(in
millions)
100,000
10,000
1000
100
10
1
0.1
0.01
Productivité
(K)Transistors
par
Homme-Mois.
Capacité des
circuits integrés
productivité
Gap
M1Info-ASE 23
La consommation électrique des circuits
Pourquoi s’y intéresser ?
Importante pour les dispositifs mobiles
Minimiser la consommation = maximiser l’autonomie
Permet de diminuer la taille de la batterie
Pour fiabiliser les circuits
Éviter les hotspot (points chauds) dans un circuit intégré
Pour réduire le coût des produits
Systèmes d’alimentation
Part important du coût d’un système électronique
Coût de conditionnement
Boîtiers, radiateurs, ventilateurs…
M1Info-ASE 24
Tendance technologiques
M1Info-ASE 25
Consommation en logique CMOS
Circuits intégrés conçus en technologie CMOS
Ces transistors dissipent de l’énergie
Tout le temps (puissance statique)
Quand ils changent d’état (puissance dynamique)
Inverseur en logique CMOS
M1Info-ASE 26
Puissances dynamique et statique
Pstat provient des courants de fuites
Toujours un courant qui traverse les transistors (bloqués ou non)
Pdyn provoquée par les commutations des transistors
On charge/décharge la capacité Cload
La valeur de la puissance dissipée dépend :
De la fréquence de changement d’état (a)
De la capacité équivalente du transistor (Cload)
Des tensions d’alimentation (Vdd) et de seuil (Vth)
De la technologie utilisée (k) et de la température (T)
2
2
1
dd
load
dyn V
C
P a

T
V
k
dd
stat
th
e
V
P


M1Info-ASE 27
Comment réduire la consommation Pdyn
Réduite la taille des transistors
La capacitance (~Cload) des transistors diminue avec leur taille
Par contre la contribution de Pstat augmente quand f diminue
Réduire le taux de commutation (a) des transistors
Encodage/arithmétique spécifique (gray, etc.)
Input gating : gèl des entrées d’un bloc quand il est inutilisé
clock gating : gèl de l’horloge quand un bloc est inactif
Limiter les glitch (régimes transitoires)
Réduire la fréquence (fclk)
À condition de respecte des contraintes de performance !
Réduire la tension Vdd ou augmenter Vth
On a alors un compromis performance/consommation
M1Info-ASE 28
Choix des tensions Vth et Vdd
Réduction de Vdd
Diminue la consommation dynamique (facteur Vdd
2)
Augmente le délai de commutation des transistors.
Un circuit alimenté en 1,4V
fonctionne 2x plus lentement
qu’un circuit en 2,5V, mais
consomme 3x moins
Comment tirer profit de ce
compromis ?
M1Info-ASE 29
Choix des tensions Vth et Vdd
Exemple :
Pour réaliser des traitement vidéo en temps réel (25 images/s)
on utilise processeur P qui doit être cadencé à 600MHz.
Le processeur est alimenté en 2.5V et consomme 10W
En utilisant une mise en œuvre parallèle sur deux processeurs
P1 et P2, il est possible de réduire la cadence à 300Mhz, et
d’utiliser une alimentation en 1.4V.
On consomme alors 2x(10/3)=6.6 W, soit un gain de 33% grâce
à la réduction de Vdd !
Remarque
L’approche atteint vite ses limites, car on ne peut descendre Vdd
au dessous d’un certain seuil
Remarque : dans le même temps on a augmenté le # transistors
du circuit, et donc sa puissance statique !
M1Info-ASE 30
Choix des tensions Vth et Vdd
Réduction de Vth (tension de seuil)
Réduit le délai de commutation (seuil + faible)
Augmente la puissance statique (exponentielle)
Doit être fait conjointement avec Vdd
M1Info-ASE 31
Tendances technologiques
Puissance statique
Puissance dynamique
À l’avenir, faible consommation = peu de transistors,
mais très bien utilisés…
source : ITRS
M1Info-ASE 32
Les technologies de circuits :
ASIC et FPGA
M1Info-ASE 33
Type de circuits
VLSI = Very Large Scale Integrated Circuit
ASIC = Application Specific Integrated Circuit
Circuits VLSI
CMOS
ASIC
Full-Custom
ASIC
Standard-Cell
Gate Arrays Logique
programmable
(FPGA)
Semi-Custom
M1Info-ASE 34
Circuits Full Custom
Mask layout of the Intel
486 microprocessor chip
Le terme « full-custom » signifie que la conception du
masque s’est faite (partiellement) manuellement
Très coûteux en temps de conception
Permet d’optimiser au maximum la
surface et les performances du circuits.
Approche valable seulement pour des
gros volumes de productions.
Micro processeurs Intel, GPU, etc.
Assez peu utilisé dans l’embarqué
M1Info-ASE 35
Circuits Standard Cells
On utilise des cellules (cell) issues d’une librairie
Cellule = fonction logique +/- simple au masque prédéfini
Toutes les cellules ont une hauteur fixe
Elles sont organisées en ligne par un outil de placement
Elles sont interconnectées par un outil de routage
Représentation du circuit au niveau portes logiques
standard cell NAND2
M1Info-ASE 36
Circuits Standard Cells
Rows
Channels
Le routage se fait par des couches de métal
On peut ainsi passer “par dessus” les cellules
Il faut laisser un espace pour entre les lignes de cellules pour
permettre de relier les cellules au couches métal
M1Info-ASE 37
Aspects économiques
Coûts NRE (Non-recurring Engineering)
Conception du masque, mise en place de la chaîne de
production du circuit, validation des 1er prototypes, etc.
Coût constant ne dépendant pas du volume de production
Coût unitaire (Unit Cost)
Coût de production d’une unité une fois la production démarrée
Total Cost
Volume
Custom
Std. Cell
Gate Array
FPGA
M1Info-ASE 38
Aspects économiques
Coût de plus en plus élevés en conception et production
En 2001, moins de 10% des design ASIC avaient des
volumes justifiant l’utilisation d’un technologie 0.13u
Technologie 0.8 0.35 0.18 0.13
NRE: $40k $100k $350k $1,000k
Delay 42 days 49 days 56 days 76 days
Marché $3.5B $6B $12B $18B
Source: DAC’01 panel on embedded programmable logic
M1Info-ASE 39
Logique programmable : les FPGA
Que contient un FPGA ?
Des blocs logiques qui
implémentent des fonctions
combinatoires et/ou séquentielles.
Un réseau d’interconnexion
programmable pour relier les blocs
logiques entre eux.
Des blocs d’entrées/sorties
programmables pour relier le circuit
à l’extérieur.
E/S
E/S
Bloc
logique
matrices
d’interconnexion
E/S
E/S
Adapté de Yong Wang
M1Info-ASE 40
Bloc logique d’un FPGA
Contient une LUT pour réaliser des fonctions logiques
Look Up Table = mémoire tabulée stockant la fonction à réaliser
Contient un Registre pour réaliser la logique séquentielle
Souvent un peu de logique supplémentaire
Ex : mécanismes pour le calcul de retenue (additionneurs)
La tendance est d’avoir des blocs logiques de + en + gros
LUT
Out
Select
D Q
A
B
C
D
Clock
M1Info-ASE 41
Look-Up Tables (LUT)
Une Look-up table à N-entrée peut réaliser n’importe
quelle fonction booléenne à N entrées.
On la remplit à partir de la table de vérité de la fonction
A B C D Z
0 0 0 0 0
0 0 0 1 1
0 0 1 0 1
0 0 1 1 1
0 1 0 0 0
0 1 0 1 1
0 1 1 0 1
0 1 1 1 1
1 0 0 0 0
1 0 0 1 1
1 0 1 0 1
1 0 1 1 1
1 1 0 0 0
1 1 0 1 0
1 1 1 0 0
LUT
A
B
C
D
Z
A
B
C
D
Z
Table de vérité
Réalisation à base de portes
Réalisation à base de LUT
Yong Wang
M1Info-ASE 42
Réalisation matérielle d’une LUT
Exemple: LUT à 3 entrées
Utilise des multiplexeurs
pour sélectionner le résultat
Le contenu de la LUT est
stocké dans la mémoire de
configuration du FPGA
NB : les tailles des LUT des
FPGA récents varient entre
4 et 6 entrées
0/1
0/1
0/1
0/1
0/1
0/1
0/1
0/1
X1
X2
X3
F
Mémoire de
configuration
Yong Wang
M1Info-ASE 43
Configuration d’un FPGA
Yong Wang
Quand configure-t-on le FGPA ?
À chaque mise sous tension du circuit (config. stockée en RAM)
Cela peut prendre jusqu’à plusieurs secondes !
Il faut donc la stocker dans des mémoire non volatiles
ROM, FLASH, etc.
À quoi sert la configuration d’un FPGA :
Définit le contenu des LUT et le mode de fonctionnement des
blocs logiques (par ex, utilisation ou non du registre).
Définit la fonction de routage des matrices d’interconnexions
Définit le mode de fonctionnement des blocs d’E/S (In/out, etc.)
Remarques
Tailles des configurations varient de quelque ko à plusieurs Mo
M1Info-ASE 44
Un FPGA en 2008
Jusqu’à 300 000 bloc logiques dans un FPGA
Bloc logique = Look-up-Table + flip-flop
Blocs Mémoires configurables
18kbits Memory (4096x4,2048x8, etc.), jusqu’à 1,5Mo
Opérateurs multiplieurs embarqués
Jusqu’à 512 multiplieur 18x18 intégrés dans un puce
Processeur embarqués
Jusqu’à 4 PowerPC “en dur” sur le circuit
Soft-Cores : CPU construits à partir de blocs logiques
Liaison série haut débit (jqu’à 10 GBits)
Circuit MAC Ethernet intégré à la puce
Reconfiguration dynamique partielle
Possibilité de reconfigurer une partie du circuit “à chaud”
M1Info-ASE 45
Tendances – FPGA vs Standard Cell
Surcoût matériel de la (re)configurabilité
Seulement entre 3% et 5% de transistors ‘utiles’
Consommation électrique des FPGA
~3 et 10 fois plus importante en fonctionnement
~100 fois plus importante en mode veille
Performances (fclk) des FPGA
~3 et 10 fois plus faibles que pour un ASIC
Mais quel est donc l’intérêt des FPGA ?
1. Le Time to market est bcp plus court que pour les
ASICs
2. Le prix en petit à moyen volume (jusqu’à 104
unités)
M1Info-ASE 46
Tendances – FPGA vs Standard Cell
Le coût NRE des circuits standard cell croît rapidement
Les circuits FPGA s’améliorent très rapidement
densité, rapidité, coût, consommation électrique
Coût total
Volume
Std. Cell
(présent)
FPGA
(présent)
Point de rupture
FPGA
(future)
Std. Cell
(future)
M1Info-ASE 47
Les systèmes mono-puces
(system on a chip)
M1Info-ASE 48
Notion de “System on a Chip” (SoC)
System On A chip = système sur puce
Contient : mémoire, CPU, matériel dédié, etc.
Circuit STM8000 (STMicro)
Décodeur/encodeur
multistandards pour
lecteur/enregistreur DVD
Processeurs, contrôleur Vidéo,
mémoires, CAN, CNA, etc.
Design mixte = partie numérique +
partie analogique
Réseau d’interconnexion
complexe
M1Info-ASE 49
Flot de conception
spécification système
(fonctionnelles)
Génération
du hardware
Placement &
routage
10 klignes
de C/C++
50Klignes
C/C++
500Kligne
pour la
descriptio
n du
circuit
spécifications
logicielles
Compilation
sur les CPUs
du SoC
Chargement,
exécution &
deboguage
Co-
simulation
Simulation
bas niveau
Vérification
&Validation
Partitionnement
logiciel/matériel
Spécification
du hardware
Production
M1Info-ASE 50
Spécification fonctionnelles
 DCT : transformée en cosinus
 IDCT : DCT inverse
 Q : Quantification
 IQ : Quantification inverse
 VLC : Variable Length Coding
zigzag
scan
Q
IDCT
DCT
Motion
Estimation
+
IQ VLC
-
Flux
d’images
Flux
compressé
7%
44%
7%
2%
2%
3%
8%
Informations
de profilage
Encodage MPEG2 en HD à 50 images/secondes
M1Info-ASE 51
Spécification du hardware
coprocesseur
dédié
Vidéo
input
Timer
UART
SRAM2
DRAM
IDE
Système
d’interconnexion
SRAM1
CPU2
Cache
CPU1
Cache
CPU3
(VLIW)
Cache
CPU4
Cache
Exemple :
M1Info-ASE 52
CGRU
DSP
DSP
CPU
Hardware IP
Spécifications logicielles
Used to connect blocs that perform data-flow processing
Use hardware FIFO for buffered communications
Synchronization by data (very simple)
Example : MPEG
zigzag
scan
DCT
IQ
VLC
Compressed
stream
Q
…
void task_idct()
{
}
Tâche IDCT
FIFO
FIFO
Motion
Estimation
Error est.
Tampon[]
FIFO
M1Info-ASE 53
Spécification logicielles
 DCT : transformée en cosinus
 IDCT : DCT inverse
 Q : Quantification
 IQ : Quantification inverse
 VLC : Variable Length Coding
zigzag
scan
Q
IDCT
DCT
Motion
Estimation
+
IQ VLC
(huffman)
-
Flux
d’images
Flux
compressé
44%
7%
2%
3%
8%
Informations
de profilage
Encodage MPEG2 en HD à 50 images/secondes
RGB
toYUV
M1Info-ASE 54
Ou va l’effort de conception ?
Source : IBS 2002
M1Info-ASE 55
Exemple d’outil : SOPCBuilder
Permet de concevoir rapidement un SoC pour FPGA
Famille de processeurs NIOS,
RISC 32 bits qui peut être dérivé en plusieurs configurations
Ensemble de périphériques standards
Timer, UART, DMA, etc. avec pilotes logiciels
« Wizard » pour l’intégration d’accélérateurs matériels
Génère un squelette d’interface matérielle et de pilote
Systèmes d’exploitation temps-réel disponibles
uCLinux, uC-OSII, etc.
Support pour multiprocesseurs, etc.
M1Info-ASE 56
Exemple d’outil : SOPCBuilder
M1Info-ASE 57
Les interconnexions dans les
systèmes mono-puce
M1Info-ASE 58
Rappel : vue Structurelle d’un SoC
Co-processeur
dédié
Pont
CPU1
Cache
Video
input
Timer
UART
CPU2
Cache
SRAM
DRAM CPU3 CPU4
IDE
Système
d’interconnexion
Bus
2
3
M1Info-ASE 59
Rappel : Interconnexion de type bus
Système d’interconnexion à temps partagé
Relier le processeur à la mémoire + périphériques
Exemple : le bus ISA (circa 1980)
Utilisé sur le 8086 (cf ARC2)
On retrouve la même chose dans un SoC
UC
Mémoire
Vidéo
Disquette
Audio
Adresses
Données
M1Info-ASE 60
Notion de composants maîtres/esclaves
Un maître (busmaster) peut initier des transactions
Ex : Lancer une écriture/lecture vers la mémoire ou un périph.
Exemple : processeur, périph. DMA (Direct Memory Access)
Un esclave (slave) peut recevoir des transactions
Répondre à une requête envoyée par un composant busmaster
Exemple : composant mémoire, périphérique sans DMA.
Il faut donc des mécanismes d’arbitrages matériels
Car on peut avoir plusieurs busmaster capables d’accéder à
certains composant esclaves (ex mémoire partagée)
Mécanisme couteux en surface, diminue les performances
M1Info-ASE 61
Les bus pour systèmes sur puce
Caractéristiques spécifiques aux SoC
Presque toutes les transactions sont interne au circuit
Peu de contraintes extérieures (pb de connecteurs, etc.)
Contiennent un nombre parfois élevé de busmaster
Besoins en bande passante et en latence
Les principaux standards industriels
La norme AMBA (essentiellement autour des processeurs ARM)
La norme CoreConnect définie par IBM pour ses PowerPC
La norme STBus, définie par STMicro (usage +/- interne)
La norme Avalon utilisée par Altera (SOPCBuilder)
Remarques
Normes très complexes (400 pages de doc pour CoreConnect)
Compromis complexité/performances possibles
M1Info-ASE 62
Avantage/Inconvénients des bus
 À chaque élément supplémentaire, on ajoute des
parasites au niveau électriques
 La maitrise les délais de propagation de + en + difficile
 Le délai d’arbitrage augmente avec le # de busmaster
 Bande passante partagée entre les unités connectées
 La latence d’accès est quasi nulle après arbitrage.
 Le coût “silicium” d’un bus est très faible.
 Les protocoles sont relativement proches les uns des
autres.
 Les concept sont simples et compris par les concepteurs
M1Info-ASE 63
Autres approches : interconnexion crossbar
Utilisé dans les routeurs réseau haute performances, et
dans les super-ordinateurs
Connexion directe programmable par transistor
Ne passe pas à l’échelle, O(N) en délais, O(N2) pour le silicium
Arbitre
Master I I Slave
I
I
S
S
Source : Phillips
M1Info-ASE 64
Les interconnexions :besoins
Passage à l’échelle
Pour la bande passante/latence  la taille du système
Flexible
Plusieurs configurations, bandes passantes réglables
Offre un connectivité entre chaque paire d’IPs
Compositionnel
Permet l’assemblage de sous-systèmes
Efficace
Coût (en silicium)
Dissipation d’énergie
Pérenne pour les futures technologies (l<45nm)
Bruit, interférences, baisses de courant, « soft errors »
Gestion de plusieurs domaines d’horloge (e.g. GALS)
M1Info-ASE 65
Aujourd’hui
De plus, ces solutions ne sont pas adaptées aux futures
technologie sub-microniques (45nm et moins)
Point à point dédié Bus partagé Réseau cross-bar
Passage à l’échelle
Flexible
Compositionnel
Efficace
Passage à l’échelle
Compositionnel
Passage à l’échelle
Flexible
Efficace
Arbiter
Master I
interface
Emetteur
interface
Récepteur Arbiter
Master I
Master I
I Slave
M I I S
I
I
s
s
Source : Phillips
M1Info-ASE 66
Demain …
Des centaines de blocs IP interconnectés en 2012 ?
Taille des blocs ~ constante, mais leur nombre va augmenter
Des schémas d’interconnexion dynamiques.
Algorithmes dont les comportement dépendent des données
Plus de 100 cycles horloge pour traverser le circuit
Aller-retour = 200 cycles, sans arbitrage
gagner de la BP → augmenter le grain de communication
Les connexions directes ont des taux d’erreur élevés.
Gestion des erreurs par le système d’interconnexion.
M1Info-ASE 67
Source : Phillips
Solution : Networks on Chip (NoC)
Qu’est ce qu’un Network on Chip
Parfois également appelés Micro-networks (micro-réseaux)
Gère les communications entre les blocs du SoC
Le réseau est en fait constitué d’un ensemble de blocs de
“routage” connectés selon un topologie point à point.
Les blocs s’échangent des paquets de données.
Ces éléments de routage peuvent forwarder (ou réémettre) des
paquets de données, et se chargent de les acheminer vers leur
destination.
Une infrastructure de communication, similaire sur
le principe à un réseau informatique, mais intégré
au sein d’un circuit.
M1Info-ASE 68
Processor
Master
Un exemple de réseau sur puce
Nœud de routage
Packet
storage
cross-bar
switch
arbitre
Processor
Master
Global
Memory
Slave
Global I/O
Slave
Global I/O
Slave
Processor
Master
Processor
Master
Processor
Master
Processor
Master
Processor
Master
Processor
Master
Processor
Master
Routing
Node
Routing
Node
Routing
Node
Routing
Node
Routing
Node
Routing
Node
Routing
Node
Routing
Node
Routing
Node
Source : Phillips
M1Info-ASE 69
Coût des interconnexions
Les solutions extrêmes ne sont pas intéressantes pour
des communications globales
Bon compromis = PàP + Multiplexage temporel
Bon taux d’utilisation, pas trop de connexions (fils)
Fréquence élevée & insertion de répétiteurs possible
Congestion
BP partagée
Coût
Souplesse
Interférences
Délais de propagation
Surutilisation de la surface
Point à
point dédié
Temps
partagé
Source : Phillips
M1Info-ASE 70
Bilan …
Trop coûteux
en surface
Performance
trop faibles
Point à point dédié
Bus partagé
Réseau routé
Intéressant, mais
Encore trop coûteux
Probablement la
solution à retenir
Approche hybride
routeurs + bus
Source : Phillips
M1Info-ASE 71
Plan du module ASE
Eléments de base
Circuits synchrones et notion de pipeline
Principes de l’Arithmétique en Virgule Fixe
Le format JPEG
Fonctionnement d’un encodeur JPEG
L’Algorithme de Chen pour le calcul de DCT rapide
Architectures des processeurs
Processeurs RISC pipelinés
Processeurs VLIW
M1Info-ASE 72
Vue Structurelle d’un SoC
Co-processeur
dédié
Pont
CPU1
Cache
Video
input
Timer
UART
CPU2
Cache
SRAM
DRAM CPU3 CPU4
IDE
Système
d’interconnexion
Bus
M1Info-ASE 73
Poubelle
M1Info-ASE 74
Vue Structurelle d’un SoC
coprocesseur
dédié
Vidéo
input
Timer
UART
SRAM2
DRAM
IDE
Système
d’interconnexion
SRAM1
CPU2
Cache
CPU1
Cache
CPU3
(VLIW)
Cache
CPU4
Cache
zigzag
scan
Q
IDCT
DCT
Motion
Estimation
+
IQ VLC
-
Flux
d’images
Flux
compressé
Partitionnement logiciel/matériel = répartir
les tâches de l’application sur les ressources
de calcul du système et allouer les données
aux différents composants mémoire
M1Info-ASE 75
Exemple d’application : MPEG
 DCT : transformée en cosinus
 IDCT : DCT inverse
 Q : Quantification
 IQ : Quantification inverse
 VLC : Variable Length Coding
zigzag
scan
Q
IDCT
DCT
Motion
Estimation
+
IQ VLC
-
Flux
d’images
Flux
compressé
7%
44%
7%
2%
2%
3%
8%
Informations
de profilage
M1Info-ASE 76
Mise en œuvre
application
specific
hardware
Bridge
MCU
ADC
CPU1
Cache
Video
input
Timer
UART
CPU2
Cache
SRAM
DRAM DSP SRAM
IDE
Bus
Bus
zigzag
scan
Motion
Estimation
VLC
DSP DSP
IDCT
DCT
IQ
Q
+
-
Partitionnement logiciel/matériel = répartir les
tâches de l’appli sur les ressources du système
Contrôle
M1Info-ASE 77
Mise en œuvre
application
specific
hardware
Bridge
MCU
ADC
CPU1
Cache
Video
input
Timer
UART
CPU2
Cache
SRAM
DRAM DSP SRAM
IDE
Bus
Bus
zigzag
scan
Motion
Estimation
VLC
DSP DSP
IDCT
DCT
IQ
Q
+
-
Placement des données et Gestion des
communications.
Contrôle

Weitere ähnliche Inhalte

Ähnlich wie exam.ppt

Presentation Stage CPL&Smart Grid
Presentation Stage CPL&Smart GridPresentation Stage CPL&Smart Grid
Presentation Stage CPL&Smart GridCherif Hamidou SY
 
Modlisation et-optimisation-dun-systme-p-20150511154437-782257
Modlisation et-optimisation-dun-systme-p-20150511154437-782257Modlisation et-optimisation-dun-systme-p-20150511154437-782257
Modlisation et-optimisation-dun-systme-p-20150511154437-782257Mohamed RAAIS
 
CH4_Transfo_Mesure(SP).pdf
CH4_Transfo_Mesure(SP).pdfCH4_Transfo_Mesure(SP).pdf
CH4_Transfo_Mesure(SP).pdfChadWood16
 
Crouzet Automation - Millenium3 French version
Crouzet Automation - Millenium3 French versionCrouzet Automation - Millenium3 French version
Crouzet Automation - Millenium3 French versionCrouzet
 
Disjoncteur hager
Disjoncteur hagerDisjoncteur hager
Disjoncteur hagerAmina MALIH
 
cours-gratuit.com--id-12501.pdf
cours-gratuit.com--id-12501.pdfcours-gratuit.com--id-12501.pdf
cours-gratuit.com--id-12501.pdfbenaziza ahmed
 
0199-formation-fibre-optique(1).pdf
0199-formation-fibre-optique(1).pdf0199-formation-fibre-optique(1).pdf
0199-formation-fibre-optique(1).pdfSIRIKIYEO
 
dimensionnement pv - Energies Renouvelables
dimensionnement pv - Energies Renouvelablesdimensionnement pv - Energies Renouvelables
dimensionnement pv - Energies RenouvelablesMounsif Merrouni
 
Diapo zig bee_amin_jan11_final
Diapo zig bee_amin_jan11_finalDiapo zig bee_amin_jan11_final
Diapo zig bee_amin_jan11_finalAmin Ferjani
 
Fpga handout
Fpga handoutFpga handout
Fpga handoutassnad
 
Cours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdfCours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdfHouBou3
 
Rapport Projet ENSMM - programmation sur microcontrôleur
Rapport Projet ENSMM - programmation sur microcontrôleurRapport Projet ENSMM - programmation sur microcontrôleur
Rapport Projet ENSMM - programmation sur microcontrôleurYanis Marchand
 
Catalogue mt nexans
Catalogue mt nexansCatalogue mt nexans
Catalogue mt nexansBen Hichem
 
Modélisation et résolution d’un problème de localisation des nœuds d’accès da...
Modélisation et résolution d’un problème de localisation des nœuds d’accès da...Modélisation et résolution d’un problème de localisation des nœuds d’accès da...
Modélisation et résolution d’un problème de localisation des nœuds d’accès da...fedi zouari
 

Ähnlich wie exam.ppt (20)

Presentation Stage CPL&Smart Grid
Presentation Stage CPL&Smart GridPresentation Stage CPL&Smart Grid
Presentation Stage CPL&Smart Grid
 
Modlisation et-optimisation-dun-systme-p-20150511154437-782257
Modlisation et-optimisation-dun-systme-p-20150511154437-782257Modlisation et-optimisation-dun-systme-p-20150511154437-782257
Modlisation et-optimisation-dun-systme-p-20150511154437-782257
 
CH4_Transfo_Mesure(SP).pdf
CH4_Transfo_Mesure(SP).pdfCH4_Transfo_Mesure(SP).pdf
CH4_Transfo_Mesure(SP).pdf
 
SoC Hamdi -chap4
SoC Hamdi -chap4SoC Hamdi -chap4
SoC Hamdi -chap4
 
Mini projet 3t2i se
Mini projet 3t2i seMini projet 3t2i se
Mini projet 3t2i se
 
Crouzet Automation - Millenium3 French version
Crouzet Automation - Millenium3 French versionCrouzet Automation - Millenium3 French version
Crouzet Automation - Millenium3 French version
 
Disjoncteur hager
Disjoncteur hagerDisjoncteur hager
Disjoncteur hager
 
Tp industriel
Tp industrielTp industriel
Tp industriel
 
cours-gratuit.com--id-12501.pdf
cours-gratuit.com--id-12501.pdfcours-gratuit.com--id-12501.pdf
cours-gratuit.com--id-12501.pdf
 
0199-formation-fibre-optique(1).pdf
0199-formation-fibre-optique(1).pdf0199-formation-fibre-optique(1).pdf
0199-formation-fibre-optique(1).pdf
 
Présentation1
Présentation1Présentation1
Présentation1
 
dimensionnement pv - Energies Renouvelables
dimensionnement pv - Energies Renouvelablesdimensionnement pv - Energies Renouvelables
dimensionnement pv - Energies Renouvelables
 
Diapo zig bee_amin_jan11_final
Diapo zig bee_amin_jan11_finalDiapo zig bee_amin_jan11_final
Diapo zig bee_amin_jan11_final
 
Catalogue innovations 2013
Catalogue innovations 2013Catalogue innovations 2013
Catalogue innovations 2013
 
Fpga handout
Fpga handoutFpga handout
Fpga handout
 
Cours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdfCours Benhabiles TMS320.pdf
Cours Benhabiles TMS320.pdf
 
Rapport Projet ENSMM - programmation sur microcontrôleur
Rapport Projet ENSMM - programmation sur microcontrôleurRapport Projet ENSMM - programmation sur microcontrôleur
Rapport Projet ENSMM - programmation sur microcontrôleur
 
Catalogue mt nexans
Catalogue mt nexansCatalogue mt nexans
Catalogue mt nexans
 
Rapport de sujet BTS 1.0
Rapport de sujet BTS 1.0Rapport de sujet BTS 1.0
Rapport de sujet BTS 1.0
 
Modélisation et résolution d’un problème de localisation des nœuds d’accès da...
Modélisation et résolution d’un problème de localisation des nœuds d’accès da...Modélisation et résolution d’un problème de localisation des nœuds d’accès da...
Modélisation et résolution d’un problème de localisation des nœuds d’accès da...
 

Mehr von wafawafa52

515878259-Node-Group-Synch-Workshop.pptx
515878259-Node-Group-Synch-Workshop.pptx515878259-Node-Group-Synch-Workshop.pptx
515878259-Node-Group-Synch-Workshop.pptxwafawafa52
 
385288768-TD-Training-Modules-Mobilis.pptx
385288768-TD-Training-Modules-Mobilis.pptx385288768-TD-Training-Modules-Mobilis.pptx
385288768-TD-Training-Modules-Mobilis.pptxwafawafa52
 
Ericsson Microwave Products Overview.ppt
Ericsson Microwave Products Overview.pptEricsson Microwave Products Overview.ppt
Ericsson Microwave Products Overview.pptwafawafa52
 
BaseBand-6630-Moshell-Commands .pdf
BaseBand-6630-Moshell-Commands      .pdfBaseBand-6630-Moshell-Commands      .pdf
BaseBand-6630-Moshell-Commands .pdfwafawafa52
 
45555555555-4G-Training .pptx
45555555555-4G-Training            .pptx45555555555-4G-Training            .pptx
45555555555-4G-Training .pptxwafawafa52
 
5-LTE-IP-Troubleshooting .ppt
5-LTE-IP-Troubleshooting            .ppt5-LTE-IP-Troubleshooting            .ppt
5-LTE-IP-Troubleshooting .pptwafawafa52
 
Sharing-Knowledge-OAM-3G-Ericsson .ppt
Sharing-Knowledge-OAM-3G-Ericsson   .pptSharing-Knowledge-OAM-3G-Ericsson   .ppt
Sharing-Knowledge-OAM-3G-Ericsson .pptwafawafa52
 
LTE-BASICS-ppt .ppt
LTE-BASICS-ppt                      .pptLTE-BASICS-ppt                      .ppt
LTE-BASICS-ppt .pptwafawafa52
 
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdfran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdfwafawafa52
 
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdftoaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdfwafawafa52
 
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...wafawafa52
 
FPGA_Logic.pdf
FPGA_Logic.pdfFPGA_Logic.pdf
FPGA_Logic.pdfwafawafa52
 
DWDM-Presentation.pdf
DWDM-Presentation.pdfDWDM-Presentation.pdf
DWDM-Presentation.pdfwafawafa52
 
Verilog HDL Design Examples ( PDFDrive ).pdf
Verilog HDL Design Examples ( PDFDrive ).pdfVerilog HDL Design Examples ( PDFDrive ).pdf
Verilog HDL Design Examples ( PDFDrive ).pdfwafawafa52
 
VHDL summary.pdf
VHDL summary.pdfVHDL summary.pdf
VHDL summary.pdfwafawafa52
 
ROM PAL PLA.ppt
ROM PAL PLA.pptROM PAL PLA.ppt
ROM PAL PLA.pptwafawafa52
 
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptxLecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptxwafawafa52
 
REVISION SYN3.pptx
REVISION SYN3.pptxREVISION SYN3.pptx
REVISION SYN3.pptxwafawafa52
 
INSTRUMENTATION.pptx
INSTRUMENTATION.pptxINSTRUMENTATION.pptx
INSTRUMENTATION.pptxwafawafa52
 
cnacan (2).ppt
cnacan (2).pptcnacan (2).ppt
cnacan (2).pptwafawafa52
 

Mehr von wafawafa52 (20)

515878259-Node-Group-Synch-Workshop.pptx
515878259-Node-Group-Synch-Workshop.pptx515878259-Node-Group-Synch-Workshop.pptx
515878259-Node-Group-Synch-Workshop.pptx
 
385288768-TD-Training-Modules-Mobilis.pptx
385288768-TD-Training-Modules-Mobilis.pptx385288768-TD-Training-Modules-Mobilis.pptx
385288768-TD-Training-Modules-Mobilis.pptx
 
Ericsson Microwave Products Overview.ppt
Ericsson Microwave Products Overview.pptEricsson Microwave Products Overview.ppt
Ericsson Microwave Products Overview.ppt
 
BaseBand-6630-Moshell-Commands .pdf
BaseBand-6630-Moshell-Commands      .pdfBaseBand-6630-Moshell-Commands      .pdf
BaseBand-6630-Moshell-Commands .pdf
 
45555555555-4G-Training .pptx
45555555555-4G-Training            .pptx45555555555-4G-Training            .pptx
45555555555-4G-Training .pptx
 
5-LTE-IP-Troubleshooting .ppt
5-LTE-IP-Troubleshooting            .ppt5-LTE-IP-Troubleshooting            .ppt
5-LTE-IP-Troubleshooting .ppt
 
Sharing-Knowledge-OAM-3G-Ericsson .ppt
Sharing-Knowledge-OAM-3G-Ericsson   .pptSharing-Knowledge-OAM-3G-Ericsson   .ppt
Sharing-Knowledge-OAM-3G-Ericsson .ppt
 
LTE-BASICS-ppt .ppt
LTE-BASICS-ppt                      .pptLTE-BASICS-ppt                      .ppt
LTE-BASICS-ppt .ppt
 
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdfran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
ran-introicbasictroubleshooting3-230122164831-426c58cd.pdf
 
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdftoaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
toaz.info-5g-solution-overview-pr_306866f43cebfb285586e3dd90989b89.pdf
 
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
mop-baseband-integration-xl-project-pa-1docxdocx-pr_299cefaa0fd3e32dd950c7218...
 
FPGA_Logic.pdf
FPGA_Logic.pdfFPGA_Logic.pdf
FPGA_Logic.pdf
 
DWDM-Presentation.pdf
DWDM-Presentation.pdfDWDM-Presentation.pdf
DWDM-Presentation.pdf
 
Verilog HDL Design Examples ( PDFDrive ).pdf
Verilog HDL Design Examples ( PDFDrive ).pdfVerilog HDL Design Examples ( PDFDrive ).pdf
Verilog HDL Design Examples ( PDFDrive ).pdf
 
VHDL summary.pdf
VHDL summary.pdfVHDL summary.pdf
VHDL summary.pdf
 
ROM PAL PLA.ppt
ROM PAL PLA.pptROM PAL PLA.ppt
ROM PAL PLA.ppt
 
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptxLecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
Lecture 16 RC Architecture Types & FPGA Interns Lecturer.pptx
 
REVISION SYN3.pptx
REVISION SYN3.pptxREVISION SYN3.pptx
REVISION SYN3.pptx
 
INSTRUMENTATION.pptx
INSTRUMENTATION.pptxINSTRUMENTATION.pptx
INSTRUMENTATION.pptx
 
cnacan (2).ppt
cnacan (2).pptcnacan (2).ppt
cnacan (2).ppt
 

Kürzlich hochgeladen

Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Ville de Châteauguay
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéInstitut de l'Elevage - Idele
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusInstitut de l'Elevage - Idele
 
firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirstjob4
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesInstitut de l'Elevage - Idele
 
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...Institut de l'Elevage - Idele
 
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...Institut de l'Elevage - Idele
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...Institut de l'Elevage - Idele
 
optimisation logistique MLT_231102_155827.pdf
optimisation logistique  MLT_231102_155827.pdfoptimisation logistique  MLT_231102_155827.pdf
optimisation logistique MLT_231102_155827.pdfSoukainaMounawir
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestionyakinekaidouchi1
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...Institut de l'Elevage - Idele
 
conception d'un batiment r+4 comparative de defferente ariante de plancher
conception d'un  batiment  r+4 comparative de defferente ariante de plancherconception d'un  batiment  r+4 comparative de defferente ariante de plancher
conception d'un batiment r+4 comparative de defferente ariante de planchermansouriahlam
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageInstitut de l'Elevage - Idele
 
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...Institut de l'Elevage - Idele
 

Kürzlich hochgeladen (15)

Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversité
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
 
firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdf
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentes
 
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
 
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
 
optimisation logistique MLT_231102_155827.pdf
optimisation logistique  MLT_231102_155827.pdfoptimisation logistique  MLT_231102_155827.pdf
optimisation logistique MLT_231102_155827.pdf
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestion
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
 
conception d'un batiment r+4 comparative de defferente ariante de plancher
conception d'un  batiment  r+4 comparative de defferente ariante de plancherconception d'un  batiment  r+4 comparative de defferente ariante de plancher
conception d'un batiment r+4 comparative de defferente ariante de plancher
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
 
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
 
JTC 2024 Bâtiment et Photovoltaïque.pdf
JTC 2024  Bâtiment et Photovoltaïque.pdfJTC 2024  Bâtiment et Photovoltaïque.pdf
JTC 2024 Bâtiment et Photovoltaïque.pdf
 

exam.ppt

  • 2. M1Info-ASE 2 Plan 1. Présentation générale 2. Notions de bases de micro-électronique Introduction à la technologie CMOS La « loi de Moore » et ses conséquences La consommation dans les circuits VLSI 3. Différents types de technologies Les ASICs (Application Specific Integrated Circuits) Les circuits FPGA et la logique programmable 4. Les systèmes mono-puce (System on a Chip) Définition et exemples Flot de conception d’un systèmes mono-puce 5. Interconnexions pour System on a Chip Les standard de bus orientés System on a Chip Les réseau sur puce (Network on a Chip)
  • 3. M1Info-ASE 3 Systèmes embarqués critiques Quelques exemples : Le système doit être correct par conception Les erreurs/bugs ont un coût extrêmement élevé (ex : Ariane 5) Automatisation/Formalisation de la conception pour garantir un minimum d’erreur. Le coût et le temps de conception sont des critères secondaires.
  • 4. M1Info-ASE 4 Système embarqués Multimédia Quelques exemples Systèmes difficiles à concevoir rapidement ! Marché de +1010 $, produits avec une durée de vie très courte. Faible coût de production, faible consommation, besoin élevées en performances. La notion de « Time to market » est fondamentale !
  • 5. M1Info-ASE 5 Le Time to market La durée de conception est un facteur crucial Revenu temps À temps En retard Croissance du marché Baisse du marché Revenu maximum Revenu maximum si arrivée tardive À temps En retard
  • 6. M1Info-ASE 6 Quelles compétences pour les S.E ? Architectures des machine et systèmes d’exploitation Applications & Algorithmes pour (ex : multimédia) Méthodologies et outils d’aide à la conception
  • 7. M1Info-ASE 7 Notions de micro-électronique : La logique CMOS
  • 8. M1Info-ASE 8 Qu’est ce que la logique CMOS ? La majorité des circuits utilisent la technologie CMOS Transistor MOS = interrupteur contrôlé électriquement On utilise deux types de transistors MOS : nMOS et pMOS C C=0 C=1 B A B A B A C C=0 C=1 B A B A B A
  • 9. M1Info-ASE 9 0: Introduction Slide 9 Inverseur CMOS A Y 0 1 1 0 VDD A=1 Y=0 GND ON OFF A Y VDD A=0 Y=1 GND OFF ON n+ p substrate p+ n well A Y GND VDD n+ p+ SiO2 n+ diffusion p+ diffusion polysilicon metal1 nMOS transistor pMOS transistor
  • 10. M1Info-ASE 10 Porte NAND en CMOS A B Y 0 0 1 0 1 1 1 0 1 1 1 0 A=1 B=1 Y=0 ON OFF OFF ON A=1 B=0 Y=1 ON ON OFF OFF A=1 B=0 Y=1 ON OFF ON OFF A=0 B=0 Y=1 OFF ON ON OFF GND =0 VDD =1 GND =0 VDD =1 GND =0 VDD =1 GND =0 VDD =1
  • 11. M1Info-ASE 11 Slide 11 Porte NOR en CMOS A B Y 0 0 1 0 1 0 1 0 0 1 1 0 A B Y A B Y A B Y A B Y
  • 12. M1Info-ASE 12 Types de mémoire RAM statique (SRAM) Stockage à l’aide de bascules Valeur stockée tant que la mémoire est sous tension RAM Dynamique (DRAM) Stockage à l’aide d’un capacitance Il faut rafraichir la mémoire régulièrement car sinon la valeur stockée est perdue (décharge du condensateur) bit bit word / row select 1 0 0 1 word / row select bit C
  • 13. M1Info-ASE 13 SRAM versus DRAM SRAM = mémoire rapide de capacité faible à moyenne Temps d’accès entre 0.5-25ns access time (éventuellement plus faible quand la mémoire est intégrée dans le composant) Coût en silicium plus important (6 transistor/bit), Consommation électrique élevée DRAM = mémoire lente de grande capacité Temps d’accès entre 80-250ns Faible coût en surface (1 transistor/bit), Consommation électrique relativement faible
  • 14. M1Info-ASE 14 Organisation d’une DRAM Row Decoder Column Selector / Latch / IO Row Address Column Address /RAS /CAS DATA Row Select Line Bit (data) Line
  • 15. M1Info-ASE 15 0 0 010 011 Lecture en DRAM Row Decoder Column Selector / Latch / IO Row Address Column Address /RAS /CAS DATA
  • 16. M1Info-ASE 16 0: Introduction Slide 16 Dessin de masque Les transistors et leurs connexion sont définies au travers d’un dessin de masque. C’est une « vue de dessus » des couches formant le circuit sur le silicium. GND VDD Y A substrate tap well tap nMOS transistor pMOS transistor n+ p substrate p+ n well A Y GND VDD n+ p+ SiO2 n+ diffusion p+ diffusion polysilicon metal1 nMOS transistor pMOS transistor Coupe verticale Dessin de masque
  • 17. M1Info-ASE 17 0: Introduction Slide 17 Dessin de masque Six niveaux dans ce dessin de masque En pratique le nombre de couches métal peut-être beaucoup plus élevé Metal Polysilicon Contact n+ Diffusion p+ Diffusion n well
  • 19. M1Info-ASE 19 Slide 19 Evolution de la taille des transistors Caractéristiques d’un transistor = fonction de sa taille Le pas minimum du masque détermine la taille du transistor (et donc sa vitesse, sa consommation, et sa consommation en énergie électrique. On utilise souvent le paramètre f = distance entre la source et le drain pour un transistor. Défini par la largeur minimale d’une trace de polysilicon Evolutions technologiques Les amélioration de procédés photo lithographique permettent de diminuer la valeur de f de 30% tous les 2-3 ans ! On dispose donc, de + en + de transistors pour une surface de silicium donnée (et des transistors de + en + rapides)
  • 20. M1Info-ASE 20 La “Loi de Moore” Projection de Gordon Moore (PDG Intel) Le nombre de transistors dans un circuit double tous les 18 mois
  • 21. M1Info-ASE 21 Une illustration de la loi de Moore Le processeur Intel 4004 a été conçu en 9 month par 2 ingénieurs Dessin de masque réalisé sur une grande feuille de papier Le P4 a nécessité 500 ingénieurs pendant 4 ans La feuille de papier aurait eu la taille d’un terrain de football … 4004, 1971 2300 trans. 80486, 1990 1.200.000 trans. Pentium4, 2001, 42.000.000 trans [Intel02]
  • 22. M1Info-ASE 22 Le « design productivity gap » La productivité des concepteurs n’évolue pas assez vite On ne sait plus quoi faire des transistors disponibles 10,000 1,000 100 10 1 0.1 0.01 0.001 Transistors per Chip (in millions) 100,000 10,000 1000 100 10 1 0.1 0.01 Productivité (K)Transistors par Homme-Mois. Capacité des circuits integrés productivité Gap
  • 23. M1Info-ASE 23 La consommation électrique des circuits Pourquoi s’y intéresser ? Importante pour les dispositifs mobiles Minimiser la consommation = maximiser l’autonomie Permet de diminuer la taille de la batterie Pour fiabiliser les circuits Éviter les hotspot (points chauds) dans un circuit intégré Pour réduire le coût des produits Systèmes d’alimentation Part important du coût d’un système électronique Coût de conditionnement Boîtiers, radiateurs, ventilateurs…
  • 25. M1Info-ASE 25 Consommation en logique CMOS Circuits intégrés conçus en technologie CMOS Ces transistors dissipent de l’énergie Tout le temps (puissance statique) Quand ils changent d’état (puissance dynamique) Inverseur en logique CMOS
  • 26. M1Info-ASE 26 Puissances dynamique et statique Pstat provient des courants de fuites Toujours un courant qui traverse les transistors (bloqués ou non) Pdyn provoquée par les commutations des transistors On charge/décharge la capacité Cload La valeur de la puissance dissipée dépend : De la fréquence de changement d’état (a) De la capacité équivalente du transistor (Cload) Des tensions d’alimentation (Vdd) et de seuil (Vth) De la technologie utilisée (k) et de la température (T) 2 2 1 dd load dyn V C P a  T V k dd stat th e V P  
  • 27. M1Info-ASE 27 Comment réduire la consommation Pdyn Réduite la taille des transistors La capacitance (~Cload) des transistors diminue avec leur taille Par contre la contribution de Pstat augmente quand f diminue Réduire le taux de commutation (a) des transistors Encodage/arithmétique spécifique (gray, etc.) Input gating : gèl des entrées d’un bloc quand il est inutilisé clock gating : gèl de l’horloge quand un bloc est inactif Limiter les glitch (régimes transitoires) Réduire la fréquence (fclk) À condition de respecte des contraintes de performance ! Réduire la tension Vdd ou augmenter Vth On a alors un compromis performance/consommation
  • 28. M1Info-ASE 28 Choix des tensions Vth et Vdd Réduction de Vdd Diminue la consommation dynamique (facteur Vdd 2) Augmente le délai de commutation des transistors. Un circuit alimenté en 1,4V fonctionne 2x plus lentement qu’un circuit en 2,5V, mais consomme 3x moins Comment tirer profit de ce compromis ?
  • 29. M1Info-ASE 29 Choix des tensions Vth et Vdd Exemple : Pour réaliser des traitement vidéo en temps réel (25 images/s) on utilise processeur P qui doit être cadencé à 600MHz. Le processeur est alimenté en 2.5V et consomme 10W En utilisant une mise en œuvre parallèle sur deux processeurs P1 et P2, il est possible de réduire la cadence à 300Mhz, et d’utiliser une alimentation en 1.4V. On consomme alors 2x(10/3)=6.6 W, soit un gain de 33% grâce à la réduction de Vdd ! Remarque L’approche atteint vite ses limites, car on ne peut descendre Vdd au dessous d’un certain seuil Remarque : dans le même temps on a augmenté le # transistors du circuit, et donc sa puissance statique !
  • 30. M1Info-ASE 30 Choix des tensions Vth et Vdd Réduction de Vth (tension de seuil) Réduit le délai de commutation (seuil + faible) Augmente la puissance statique (exponentielle) Doit être fait conjointement avec Vdd
  • 31. M1Info-ASE 31 Tendances technologiques Puissance statique Puissance dynamique À l’avenir, faible consommation = peu de transistors, mais très bien utilisés… source : ITRS
  • 32. M1Info-ASE 32 Les technologies de circuits : ASIC et FPGA
  • 33. M1Info-ASE 33 Type de circuits VLSI = Very Large Scale Integrated Circuit ASIC = Application Specific Integrated Circuit Circuits VLSI CMOS ASIC Full-Custom ASIC Standard-Cell Gate Arrays Logique programmable (FPGA) Semi-Custom
  • 34. M1Info-ASE 34 Circuits Full Custom Mask layout of the Intel 486 microprocessor chip Le terme « full-custom » signifie que la conception du masque s’est faite (partiellement) manuellement Très coûteux en temps de conception Permet d’optimiser au maximum la surface et les performances du circuits. Approche valable seulement pour des gros volumes de productions. Micro processeurs Intel, GPU, etc. Assez peu utilisé dans l’embarqué
  • 35. M1Info-ASE 35 Circuits Standard Cells On utilise des cellules (cell) issues d’une librairie Cellule = fonction logique +/- simple au masque prédéfini Toutes les cellules ont une hauteur fixe Elles sont organisées en ligne par un outil de placement Elles sont interconnectées par un outil de routage Représentation du circuit au niveau portes logiques standard cell NAND2
  • 36. M1Info-ASE 36 Circuits Standard Cells Rows Channels Le routage se fait par des couches de métal On peut ainsi passer “par dessus” les cellules Il faut laisser un espace pour entre les lignes de cellules pour permettre de relier les cellules au couches métal
  • 37. M1Info-ASE 37 Aspects économiques Coûts NRE (Non-recurring Engineering) Conception du masque, mise en place de la chaîne de production du circuit, validation des 1er prototypes, etc. Coût constant ne dépendant pas du volume de production Coût unitaire (Unit Cost) Coût de production d’une unité une fois la production démarrée Total Cost Volume Custom Std. Cell Gate Array FPGA
  • 38. M1Info-ASE 38 Aspects économiques Coût de plus en plus élevés en conception et production En 2001, moins de 10% des design ASIC avaient des volumes justifiant l’utilisation d’un technologie 0.13u Technologie 0.8 0.35 0.18 0.13 NRE: $40k $100k $350k $1,000k Delay 42 days 49 days 56 days 76 days Marché $3.5B $6B $12B $18B Source: DAC’01 panel on embedded programmable logic
  • 39. M1Info-ASE 39 Logique programmable : les FPGA Que contient un FPGA ? Des blocs logiques qui implémentent des fonctions combinatoires et/ou séquentielles. Un réseau d’interconnexion programmable pour relier les blocs logiques entre eux. Des blocs d’entrées/sorties programmables pour relier le circuit à l’extérieur. E/S E/S Bloc logique matrices d’interconnexion E/S E/S Adapté de Yong Wang
  • 40. M1Info-ASE 40 Bloc logique d’un FPGA Contient une LUT pour réaliser des fonctions logiques Look Up Table = mémoire tabulée stockant la fonction à réaliser Contient un Registre pour réaliser la logique séquentielle Souvent un peu de logique supplémentaire Ex : mécanismes pour le calcul de retenue (additionneurs) La tendance est d’avoir des blocs logiques de + en + gros LUT Out Select D Q A B C D Clock
  • 41. M1Info-ASE 41 Look-Up Tables (LUT) Une Look-up table à N-entrée peut réaliser n’importe quelle fonction booléenne à N entrées. On la remplit à partir de la table de vérité de la fonction A B C D Z 0 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 0 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 0 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 LUT A B C D Z A B C D Z Table de vérité Réalisation à base de portes Réalisation à base de LUT Yong Wang
  • 42. M1Info-ASE 42 Réalisation matérielle d’une LUT Exemple: LUT à 3 entrées Utilise des multiplexeurs pour sélectionner le résultat Le contenu de la LUT est stocké dans la mémoire de configuration du FPGA NB : les tailles des LUT des FPGA récents varient entre 4 et 6 entrées 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 X1 X2 X3 F Mémoire de configuration Yong Wang
  • 43. M1Info-ASE 43 Configuration d’un FPGA Yong Wang Quand configure-t-on le FGPA ? À chaque mise sous tension du circuit (config. stockée en RAM) Cela peut prendre jusqu’à plusieurs secondes ! Il faut donc la stocker dans des mémoire non volatiles ROM, FLASH, etc. À quoi sert la configuration d’un FPGA : Définit le contenu des LUT et le mode de fonctionnement des blocs logiques (par ex, utilisation ou non du registre). Définit la fonction de routage des matrices d’interconnexions Définit le mode de fonctionnement des blocs d’E/S (In/out, etc.) Remarques Tailles des configurations varient de quelque ko à plusieurs Mo
  • 44. M1Info-ASE 44 Un FPGA en 2008 Jusqu’à 300 000 bloc logiques dans un FPGA Bloc logique = Look-up-Table + flip-flop Blocs Mémoires configurables 18kbits Memory (4096x4,2048x8, etc.), jusqu’à 1,5Mo Opérateurs multiplieurs embarqués Jusqu’à 512 multiplieur 18x18 intégrés dans un puce Processeur embarqués Jusqu’à 4 PowerPC “en dur” sur le circuit Soft-Cores : CPU construits à partir de blocs logiques Liaison série haut débit (jqu’à 10 GBits) Circuit MAC Ethernet intégré à la puce Reconfiguration dynamique partielle Possibilité de reconfigurer une partie du circuit “à chaud”
  • 45. M1Info-ASE 45 Tendances – FPGA vs Standard Cell Surcoût matériel de la (re)configurabilité Seulement entre 3% et 5% de transistors ‘utiles’ Consommation électrique des FPGA ~3 et 10 fois plus importante en fonctionnement ~100 fois plus importante en mode veille Performances (fclk) des FPGA ~3 et 10 fois plus faibles que pour un ASIC Mais quel est donc l’intérêt des FPGA ? 1. Le Time to market est bcp plus court que pour les ASICs 2. Le prix en petit à moyen volume (jusqu’à 104 unités)
  • 46. M1Info-ASE 46 Tendances – FPGA vs Standard Cell Le coût NRE des circuits standard cell croît rapidement Les circuits FPGA s’améliorent très rapidement densité, rapidité, coût, consommation électrique Coût total Volume Std. Cell (présent) FPGA (présent) Point de rupture FPGA (future) Std. Cell (future)
  • 47. M1Info-ASE 47 Les systèmes mono-puces (system on a chip)
  • 48. M1Info-ASE 48 Notion de “System on a Chip” (SoC) System On A chip = système sur puce Contient : mémoire, CPU, matériel dédié, etc. Circuit STM8000 (STMicro) Décodeur/encodeur multistandards pour lecteur/enregistreur DVD Processeurs, contrôleur Vidéo, mémoires, CAN, CNA, etc. Design mixte = partie numérique + partie analogique Réseau d’interconnexion complexe
  • 49. M1Info-ASE 49 Flot de conception spécification système (fonctionnelles) Génération du hardware Placement & routage 10 klignes de C/C++ 50Klignes C/C++ 500Kligne pour la descriptio n du circuit spécifications logicielles Compilation sur les CPUs du SoC Chargement, exécution & deboguage Co- simulation Simulation bas niveau Vérification &Validation Partitionnement logiciel/matériel Spécification du hardware Production
  • 50. M1Info-ASE 50 Spécification fonctionnelles  DCT : transformée en cosinus  IDCT : DCT inverse  Q : Quantification  IQ : Quantification inverse  VLC : Variable Length Coding zigzag scan Q IDCT DCT Motion Estimation + IQ VLC - Flux d’images Flux compressé 7% 44% 7% 2% 2% 3% 8% Informations de profilage Encodage MPEG2 en HD à 50 images/secondes
  • 51. M1Info-ASE 51 Spécification du hardware coprocesseur dédié Vidéo input Timer UART SRAM2 DRAM IDE Système d’interconnexion SRAM1 CPU2 Cache CPU1 Cache CPU3 (VLIW) Cache CPU4 Cache Exemple :
  • 52. M1Info-ASE 52 CGRU DSP DSP CPU Hardware IP Spécifications logicielles Used to connect blocs that perform data-flow processing Use hardware FIFO for buffered communications Synchronization by data (very simple) Example : MPEG zigzag scan DCT IQ VLC Compressed stream Q … void task_idct() { } Tâche IDCT FIFO FIFO Motion Estimation Error est. Tampon[] FIFO
  • 53. M1Info-ASE 53 Spécification logicielles  DCT : transformée en cosinus  IDCT : DCT inverse  Q : Quantification  IQ : Quantification inverse  VLC : Variable Length Coding zigzag scan Q IDCT DCT Motion Estimation + IQ VLC (huffman) - Flux d’images Flux compressé 44% 7% 2% 3% 8% Informations de profilage Encodage MPEG2 en HD à 50 images/secondes RGB toYUV
  • 54. M1Info-ASE 54 Ou va l’effort de conception ? Source : IBS 2002
  • 55. M1Info-ASE 55 Exemple d’outil : SOPCBuilder Permet de concevoir rapidement un SoC pour FPGA Famille de processeurs NIOS, RISC 32 bits qui peut être dérivé en plusieurs configurations Ensemble de périphériques standards Timer, UART, DMA, etc. avec pilotes logiciels « Wizard » pour l’intégration d’accélérateurs matériels Génère un squelette d’interface matérielle et de pilote Systèmes d’exploitation temps-réel disponibles uCLinux, uC-OSII, etc. Support pour multiprocesseurs, etc.
  • 57. M1Info-ASE 57 Les interconnexions dans les systèmes mono-puce
  • 58. M1Info-ASE 58 Rappel : vue Structurelle d’un SoC Co-processeur dédié Pont CPU1 Cache Video input Timer UART CPU2 Cache SRAM DRAM CPU3 CPU4 IDE Système d’interconnexion Bus 2 3
  • 59. M1Info-ASE 59 Rappel : Interconnexion de type bus Système d’interconnexion à temps partagé Relier le processeur à la mémoire + périphériques Exemple : le bus ISA (circa 1980) Utilisé sur le 8086 (cf ARC2) On retrouve la même chose dans un SoC UC Mémoire Vidéo Disquette Audio Adresses Données
  • 60. M1Info-ASE 60 Notion de composants maîtres/esclaves Un maître (busmaster) peut initier des transactions Ex : Lancer une écriture/lecture vers la mémoire ou un périph. Exemple : processeur, périph. DMA (Direct Memory Access) Un esclave (slave) peut recevoir des transactions Répondre à une requête envoyée par un composant busmaster Exemple : composant mémoire, périphérique sans DMA. Il faut donc des mécanismes d’arbitrages matériels Car on peut avoir plusieurs busmaster capables d’accéder à certains composant esclaves (ex mémoire partagée) Mécanisme couteux en surface, diminue les performances
  • 61. M1Info-ASE 61 Les bus pour systèmes sur puce Caractéristiques spécifiques aux SoC Presque toutes les transactions sont interne au circuit Peu de contraintes extérieures (pb de connecteurs, etc.) Contiennent un nombre parfois élevé de busmaster Besoins en bande passante et en latence Les principaux standards industriels La norme AMBA (essentiellement autour des processeurs ARM) La norme CoreConnect définie par IBM pour ses PowerPC La norme STBus, définie par STMicro (usage +/- interne) La norme Avalon utilisée par Altera (SOPCBuilder) Remarques Normes très complexes (400 pages de doc pour CoreConnect) Compromis complexité/performances possibles
  • 62. M1Info-ASE 62 Avantage/Inconvénients des bus  À chaque élément supplémentaire, on ajoute des parasites au niveau électriques  La maitrise les délais de propagation de + en + difficile  Le délai d’arbitrage augmente avec le # de busmaster  Bande passante partagée entre les unités connectées  La latence d’accès est quasi nulle après arbitrage.  Le coût “silicium” d’un bus est très faible.  Les protocoles sont relativement proches les uns des autres.  Les concept sont simples et compris par les concepteurs
  • 63. M1Info-ASE 63 Autres approches : interconnexion crossbar Utilisé dans les routeurs réseau haute performances, et dans les super-ordinateurs Connexion directe programmable par transistor Ne passe pas à l’échelle, O(N) en délais, O(N2) pour le silicium Arbitre Master I I Slave I I S S Source : Phillips
  • 64. M1Info-ASE 64 Les interconnexions :besoins Passage à l’échelle Pour la bande passante/latence  la taille du système Flexible Plusieurs configurations, bandes passantes réglables Offre un connectivité entre chaque paire d’IPs Compositionnel Permet l’assemblage de sous-systèmes Efficace Coût (en silicium) Dissipation d’énergie Pérenne pour les futures technologies (l<45nm) Bruit, interférences, baisses de courant, « soft errors » Gestion de plusieurs domaines d’horloge (e.g. GALS)
  • 65. M1Info-ASE 65 Aujourd’hui De plus, ces solutions ne sont pas adaptées aux futures technologie sub-microniques (45nm et moins) Point à point dédié Bus partagé Réseau cross-bar Passage à l’échelle Flexible Compositionnel Efficace Passage à l’échelle Compositionnel Passage à l’échelle Flexible Efficace Arbiter Master I interface Emetteur interface Récepteur Arbiter Master I Master I I Slave M I I S I I s s Source : Phillips
  • 66. M1Info-ASE 66 Demain … Des centaines de blocs IP interconnectés en 2012 ? Taille des blocs ~ constante, mais leur nombre va augmenter Des schémas d’interconnexion dynamiques. Algorithmes dont les comportement dépendent des données Plus de 100 cycles horloge pour traverser le circuit Aller-retour = 200 cycles, sans arbitrage gagner de la BP → augmenter le grain de communication Les connexions directes ont des taux d’erreur élevés. Gestion des erreurs par le système d’interconnexion.
  • 67. M1Info-ASE 67 Source : Phillips Solution : Networks on Chip (NoC) Qu’est ce qu’un Network on Chip Parfois également appelés Micro-networks (micro-réseaux) Gère les communications entre les blocs du SoC Le réseau est en fait constitué d’un ensemble de blocs de “routage” connectés selon un topologie point à point. Les blocs s’échangent des paquets de données. Ces éléments de routage peuvent forwarder (ou réémettre) des paquets de données, et se chargent de les acheminer vers leur destination. Une infrastructure de communication, similaire sur le principe à un réseau informatique, mais intégré au sein d’un circuit.
  • 68. M1Info-ASE 68 Processor Master Un exemple de réseau sur puce Nœud de routage Packet storage cross-bar switch arbitre Processor Master Global Memory Slave Global I/O Slave Global I/O Slave Processor Master Processor Master Processor Master Processor Master Processor Master Processor Master Processor Master Routing Node Routing Node Routing Node Routing Node Routing Node Routing Node Routing Node Routing Node Routing Node Source : Phillips
  • 69. M1Info-ASE 69 Coût des interconnexions Les solutions extrêmes ne sont pas intéressantes pour des communications globales Bon compromis = PàP + Multiplexage temporel Bon taux d’utilisation, pas trop de connexions (fils) Fréquence élevée & insertion de répétiteurs possible Congestion BP partagée Coût Souplesse Interférences Délais de propagation Surutilisation de la surface Point à point dédié Temps partagé Source : Phillips
  • 70. M1Info-ASE 70 Bilan … Trop coûteux en surface Performance trop faibles Point à point dédié Bus partagé Réseau routé Intéressant, mais Encore trop coûteux Probablement la solution à retenir Approche hybride routeurs + bus Source : Phillips
  • 71. M1Info-ASE 71 Plan du module ASE Eléments de base Circuits synchrones et notion de pipeline Principes de l’Arithmétique en Virgule Fixe Le format JPEG Fonctionnement d’un encodeur JPEG L’Algorithme de Chen pour le calcul de DCT rapide Architectures des processeurs Processeurs RISC pipelinés Processeurs VLIW
  • 72. M1Info-ASE 72 Vue Structurelle d’un SoC Co-processeur dédié Pont CPU1 Cache Video input Timer UART CPU2 Cache SRAM DRAM CPU3 CPU4 IDE Système d’interconnexion Bus
  • 74. M1Info-ASE 74 Vue Structurelle d’un SoC coprocesseur dédié Vidéo input Timer UART SRAM2 DRAM IDE Système d’interconnexion SRAM1 CPU2 Cache CPU1 Cache CPU3 (VLIW) Cache CPU4 Cache zigzag scan Q IDCT DCT Motion Estimation + IQ VLC - Flux d’images Flux compressé Partitionnement logiciel/matériel = répartir les tâches de l’application sur les ressources de calcul du système et allouer les données aux différents composants mémoire
  • 75. M1Info-ASE 75 Exemple d’application : MPEG  DCT : transformée en cosinus  IDCT : DCT inverse  Q : Quantification  IQ : Quantification inverse  VLC : Variable Length Coding zigzag scan Q IDCT DCT Motion Estimation + IQ VLC - Flux d’images Flux compressé 7% 44% 7% 2% 2% 3% 8% Informations de profilage
  • 76. M1Info-ASE 76 Mise en œuvre application specific hardware Bridge MCU ADC CPU1 Cache Video input Timer UART CPU2 Cache SRAM DRAM DSP SRAM IDE Bus Bus zigzag scan Motion Estimation VLC DSP DSP IDCT DCT IQ Q + - Partitionnement logiciel/matériel = répartir les tâches de l’appli sur les ressources du système Contrôle
  • 77. M1Info-ASE 77 Mise en œuvre application specific hardware Bridge MCU ADC CPU1 Cache Video input Timer UART CPU2 Cache SRAM DRAM DSP SRAM IDE Bus Bus zigzag scan Motion Estimation VLC DSP DSP IDCT DCT IQ Q + - Placement des données et Gestion des communications. Contrôle