Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
1
Introduction générale
M1Info-ASE
2
Plan Présentation générale Notions de bases de micro-électronique
Introduction à la technologie CMOS La « loi de Moore » et ses conséquences La consommation dans les circuits VLSI Différents types de technologies Les ASICs (Application Specific Integrated Circuits) Les circuits FPGA et la logique programmable Les systèmes mono-puce (System on a Chip) Définition et exemples Flot de conception d’un systèmes mono-puce 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. (compat elect, perf, consommation) M1Info-ASE
4
Système embarqués Multimédia
Quelques exemples Systèmes difficiles à concevoir rapidement ! Marché de $, 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 ! (compat elect, perf, consommation) M1Info-ASE
5
Le Time to market La durée de conception est un facteur crucial
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 M1Info-ASE
9
Inverseur CMOS A Y 1 0: Introduction Slide 9 M1Info-ASE
10
Porte NAND en CMOS A B Y 1 M1Info-ASE VDD =1 VDD =1 GND =0 GND =0
1 GND =0 GND =0 VDD =1 VDD =1 GND =0 GND =0 M1Info-ASE
11
Porte NOR en CMOS A B Y 1 Slide 11 M1Info-ASE
12
Types de mémoire RAM statique (SRAM) RAM Dynamique (DRAM)
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) word / row select 1 1 bit bit word / row select C bit M1Info-ASE
13
SRAM versus DRAM SRAM = mémoire rapide de capacité faible à moyenne
Temps d’accès entre ns 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 ns Faible coût en surface (1 transistor/bit), Consommation électrique relativement faible M1Info-ASE
14
Organisation d’une DRAM
Row Select Line Row Decoder Bit (data) Line Column Selector / Latch / IO /RAS Row Address Column Address /CAS DATA M1Info-ASE
15
Column Selector / Latch / IO
Lecture en DRAM Row Decoder Column Selector / Latch / IO /RAS Row Address 011 Column Address 010 /CAS DATA M1Info-ASE
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. Coupe verticale Dessin de masque 0: Introduction Slide 16 M1Info-ASE
17
Dessin de masque Six niveaux dans ce dessin de masque
En pratique le nombre de couches métal peut-être beaucoup plus élevé 0: Introduction Slide 17 M1Info-ASE
18
Photolithography circuit Wafer Lumière masque lentille Circuit pattern
M1Info-ASE
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) Slide 19 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 … Pentium4, 2001, trans 80486, 1990 trans. 4004, 1971 2300 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 1000 (K)Transistors par Productivité Homme-Mois. 1981 1983 1985 1987 1989 1991 1993 1995 1997 1999 2001 2003 2005 2007 2009 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) 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 Vdd2) 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 source : ITRS Puissance dynamique À l’avenir, faible consommation = peu de transistors, mais très bien utilisés… 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 Semi-Custom ASIC Full-Custom ASIC Standard-Cell Gate Arrays Logique programmable (FPGA) M1Info-ASE
34
Circuits Full Custom 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é Full Custom: * Designers can control the shape of all mask patterns. * Designers can specify the design up to the level of individual transistors. Mask layout of the Intel 486 microprocessor chip M1Info-ASE 34
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 standard cell NAND2 Représentation du circuit au niveau portes logiques M1Info-ASE
36
Circuits Standard Cells
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 Custom Std. Cell Gate Array FPGA Volume M1Info-ASE
38
Source: DAC’01 panel on embedded programmable logic
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
Adapté de Yong Wang 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 Bloc logique matrices d’interconnexion 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 Select Out A B C D LUT D Q Clock M1Info-ASE
41
Look-Up Tables (LUT) Yong Wang 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 LUT A B C D Z Réalisation à base de LUT A B Z C D Réalisation à base de portes Table de vérité M1Info-ASE
42
Réalisation matérielle d’une LUT
Yong Wang 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 X1 X2 0/1 0/1 0/1 0/1 F 0/1 0/1 0/1 Mémoire de configuration 0/1 X3 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 ? Le Time to market est bcp plus court que pour les ASICs 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 FPGA (future) Std. Cell (future) FPGA (présent) Coût total Std. Cell (présent) Point de rupture Volume 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 M1Info-ASE spécification système (fonctionnelles)
Partitionnement logiciel/matériel 10 klignes de C/C++ 50Klignes C/C++ 500Kligne pour la description du circuit Spécification du hardware Co-simulation spécifications logicielles Simulation bas niveau Génération du hardware Compilation sur les CPUs du SoC Placement & routage Vérification &Validation Chargement, exécution & deboguage Production M1Info-ASE
50
Spécification fonctionnelles
Encodage MPEG2 en HD à 50 images/secondes zigzag scan Q IDCT DCT Motion Estimation + IQ VLC - Flux d’images Flux compressé 7% 44% 2% 3% 8% Informations de profilage DCT : transformée en cosinus IDCT : DCT inverse Q : Quantification IQ : Quantification inverse VLC : Variable Length Coding M1Info-ASE
51
Spécification du hardware
Exemple : coprocesseur dédié Vidéo input Timer UART SRAM2 DRAM IDE Système d’interconnexion SRAM1 CPU2 Cache CPU1 CPU3 (VLIW) CPU4 M1Info-ASE
52
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 Hardware IP CPU DSP FIFO Q DCT IQ FIFO FIFO Compressed stream CGRU VLC Tampon[] DSP Error est. zigzag scan … void task_idct() { } Tâche IDCT Motion Estimation M1Info-ASE
53
Spécification logicielles
Encodage MPEG2 en HD à 50 images/secondes DCT RGB toYUV zigzag scan - Q 3% Flux d’images IQ 2% VLC (huffman) 8% Informations de profilage IDCT 7% Flux compressé + DCT : transformée en cosinus IDCT : DCT inverse Q : Quantification IQ : Quantification inverse VLC : Variable Length Coding 44% Motion Estimation 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
Timer UART IDE 2 DRAM CPU3 CPU4 Bus Video input Pont Système d’interconnexion 3 CPU1 Cache SRAM Co-processeur dédié Cache CPU2 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 Adresses UC Vidéo Audio Mémoire Disquette 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 I S Master I I Slave I Arbitre 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 s Emetteur I interface Master I Arbiter Master I M I I S I Slave Master I interface Récepteur I Arbiter s Point à point dédié Bus partagé Réseau cross-bar Passage à l’échelle Flexible Compositionnel Efficace De plus, ces solutions ne sont pas adaptées aux futures technologie sub-microniques (45nm et moins) 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
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. Source : Phillips M1Info-ASE
68
Un exemple de réseau sur puce
Processor Master Processor Master Processor Master Routing Node Routing Node Routing Node Global Memory Slave Processor Master Processor Master Processor Master Global I/O Slave Routing Node Routing Node Routing Node Global I/O Slave Processor Master Processor Master Processor Master cross-bar switch Routing Node Routing Node Routing Node Packet storage arbitre Source : Phillips Nœud de routage 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
Probablement la solution à retenir
Bilan … Intéressant, mais Encore trop coûteux Réseau routé Trop coûteux en surface Point à point dédié Probablement la solution à retenir Approche hybride routeurs + bus Performance trop faibles Bus partagé Source : Phillips M1Info-ASE
71
Plan du module ASE Eléments de base Le format JPEG
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
Timer UART IDE DRAM CPU3 CPU4 Bus Video input Pont Système d’interconnexion CPU1 Cache SRAM Co-processeur dédié Cache CPU2 M1Info-ASE
73
Poubelle M1Info-ASE
74
Vue Structurelle d’un SoC
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 coprocesseur dédié Vidéo input Timer UART SRAM2 DRAM IDE Système d’interconnexion SRAM1 CPU2 Cache CPU1 CPU3 (VLIW) CPU4 M1Info-ASE
75
Exemple d’application : MPEG
zigzag scan Q IDCT DCT Motion Estimation + IQ VLC - Flux d’images Flux compressé 7% 44% 2% 3% 8% Informations de profilage DCT : transformée en cosinus IDCT : DCT inverse Q : Quantification IQ : Quantification inverse VLC : Variable Length Coding M1Info-ASE
76
Mise en œuvre Partitionnement logiciel/matériel = répartir les tâches de l’appli sur les ressources du système Timer UART IDE DRAM DSP DSP IDCT DSP SRAM Q Bus ADC Video input Bridge IQ DCT Bus CPU1 Cache SRAM application specific hardware Cache MCU Motion Estimation Contrôle VLC CPU2 - + zigzag scan M1Info-ASE
77
Mise en œuvre - Placement des données et Gestion des communications. +
application specific hardware Bridge MCU ADC CPU1 Cache Video input Timer UART CPU2 SRAM DRAM DSP IDE DSP IDCT DSP Q Bus IQ DCT Bus Motion Estimation Contrôle VLC - + zigzag scan M1Info-ASE
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.