Sunteți pe pagina 1din 22

Architecture des

Soc
Ben Fradj Hanene
Architecture enfouis
Les méthodes de codesign ciblent généralement des systèmes embarqués/enfouis
(SOC)
Ces systèmes impliquent des contraintes :
• produits largement diffusés : coûts réduits Mais il faut aussi privilégier :
• contraintes temporelles strictes • la réutilisation
• sûreté de fonctionnement (e.g. aéronautique) • la flexibilité : modifications
• taille, poids tardives, correction d’erreurs
• consommation d’énergie
Architecture enfouis
 logicielles (SW) : processeur + Logiciel
 flexibilité
 faible temps de conception
 Faible cout
 matérielles (HW) : ASIC et FPGA
 performances
 consommation
 protection industrielle
 Cout élevé
 Mixtes
 Tire profit des 2 approches => cas d’un SoC
Complémentarité HW/SW
100% SW 100% HW
performance XXX
Contraintes
physiques consommation XXX
intégration XX
Cout de production XXX XXX (si fort
Contraintes volume de
production)
économique du
produit flexibilité XX
Protection industrielle XXX

Contraintes
Cout de développement XX
économique du Cout de production XX
développement
Prise de risque XXX
Exemple de SOC
Exemple de répartition HW/SW
Très grandes diversité des
composants
 Les systèmes embarqués deviennent de plus en plus complexes.
 Le nombre de coeurs de processeurs dans un SOC de 1996 à 1998 chez IBM :
 1998 : 9 en moyenne, 30 max
 1996 : 2 en moyenne, 3 max
 Grande variété de composants disponibles :

Intellectuel property (IP)


 Cœurs de processeurs
 ASIP : Application Specific Instruction-set Processor
 ASSP : Application Specific Standard Product
 Microcontroleurs
 DSP : Digital Signal Processors
 RISC
 Fonctions logicielles
 Bus standardisés
 Fonctions matérielles (ASIC)
 Composants reconfigurables
 SPGA : System Programmable Gate Array - FPGA + IP)
ASIP et ASSP
 ASIP : Application Specific Instruction set Processor
 Processeur spécialisé à l’exécution d’une (ou quelques)
application (par exemple Modem)
 Jeu d’instruction et ensemble des ressources adaptés à
l’application
 Meilleurs rapports MIPS/mW et MIPS/mm2 que RISC et DSP
 Mais compilateur plus délicat, time-to-market plus long
qu’avec des processeurs standards
 ASSP : Application Specific Standard Product
 Composant complexe qui réalise une fonction spécifique
(compression vidéo, modem)
 ASSP et interface standardisée : IP
Les processeurs embarqué RISC
Processeurs embarqués RISC et mémoire
cache : recherche de compromis
Les processeurs de traitement du signal
 Il existe de nombreux constructeurs : nombreux DSP et leurs variantes chez
chacun d’eux

- Un DSP peut être particulièrement adapté à un type d’application (exemple :


DSP56009, TMS320C54x)
- Les performances des DSP peuvent varier significativement :
exemple : localisation des données en mémoire, localisation du code
Design Reuse : IP
 Il devient de moins en moins possible de concevoir un
SoC entièrement. Des parties déjà conçues doivent être
réutilisées
 Développer des « composants virtuels » réutilisables
 Problèmes :
 Une compagnie seule ne peut pas toujours concevoir tous
les composants dont elle a besoin
 Commerce de composants virtuels
 Nécessité d’instaurer une protection juridique => « intellectual
Property »
 Nécessité d’utiliser un même formalisme pour la modélisation
et l’utilisation pour l’adaptation rapide au système
Niveaux des IPs matérielle
 « Soft» IP
 Modèle de description de matériel. Peut être non synthétisable pour la
validation purement fonctionnelle.
 Flexible, paramétrable
 Indépendant de la technologie
 Difficile à protéger
 « Firm» IP
 Liste d’équipotentielles post synthèse logique
 Dépend de la technologie
 Assez difficile à protéger
 « Hard» IP
 Liste d’équipotentielles placée et routée
 Contient les temps de propagation
 Facile à protéger (boîte noire avec uniquement les E/S)
Usage et format des IPs
Les fournisseurs d’IPs
 Sociétés d’études et de conception
 Sociétés sans fonderie (« fab ») dont le profit vient des
droits sur les licences
 DSP Group (IP pour les télécoms), ARM (processeurs RISCs),
 offre incluant des IPs SOFT, de simulation et synthèse.
 Sociétés de semi-conducteurs
 Peuvent fournir des Ips HARD en plus des Ips SOFT
 TI, Motorola, Lucent, Altera, Xilinx, LSI Logic, STM
 Fournisseurs d’outils de CAO
 Fournissent des Ips SOFT uniquement
 Mentor Graphics, Cadence, Synopsys,…
Les types d’IPs
 Processeurs:
 Picoblaze, microblaze, Leon, Nios, LSI logic CW4001/4010/4100,
ARM 7TDMI, ARM 810,NEC 85x, Motorola 680x0, IBM PPC,…
 DSPs:
 TI TMS320C54X, Pine, Oak,…
 Composants de traitement spécialisés
 Cryptographie, traitement d’images, multimédia : JPEGcodec,
MPEGdecoder.
 Contrôleurs mémoire et bus : SDRAM, USB, PCI, UART,AMBA
 Réseaux : ATM, Ethernet

Pointeurs : IP commerciales www.design-reuse.com


IP « libres » www.opencore.org
SoC : ensemble d’unités interconnectées

 La conception de SoC: approche classique de type CPU-


centric
L’accent est mis pendant la conception sur le ou les CPUs et les IPs
de calcul
Puis on cherche à les connecter
Or les performances dépendent de l’interconnexion
 La structure la plus utilisée : les bus
Un bus : ensemble de fils

Data (N bits) L’IP force l’état du fils à 0 ou à 1


Adresse (P bits) Le temps de changement d’état dépend:
IP
Contrôle (Q bits) - Des drivers de courants de l’IP
- Des dimensions des fils
- Du nombre d’IPs sur le bus
Synchrone ou asynchrone
 Bus synchrone
 Dans les signaux de contrôle, un signal d’horloge fixe les instants de
changement d’états
 Simple et rapide si :
 Tous les IPs sur le bus ont la même vitesse d’horloge
 La longueur du bus sur le chip est limitée (clock skew)
 Bus asynchrone
 Dans les signaux de contrôle, des signaux permettent une synchronisation des
échanges
 Overhead du à la synchronisation (handshake)
 Adapté à connecter des IPs de types/vitesses différents

Req
IP1 Ack IP2
Bus avec Arbitrage
 Problème: IP1 et IP2 veulent utiliser en même temps le bus pour accéder
à IP3 Data
Adresse
contrôle

IP1 IP2 IP3

Les requêtes sont adressées à l’arbitre de bus qui alloue le bus (e.g. suivant une
priorité)
Data
Adresse Arbitre de
contrôle bus

IP1 IP2 IP3

IP1 et IP2 des maitres (e.g. CPUs)


IP3 est un esclave (e.g. Périphérique)
Bus pour l‘embarqué
 Les constructeurs de SOC s’orientent depuis quelques années vers l’utilisation
de bus génériques : protocoles de transferts de données bien définis.
 Les grands acteurs du système sur puce emploient ce type d’architecture avec
chacun une solution propriétaire :
 Core Connect d’IBM, AMBA d’ARM, AVALON d’ALTERA, WHISBONE
d’openCores
 Exemple la proposition AMBA de ARM : Advanced Microcontroller Bus
Architecture
 Bus Système : AHB ou ASB
 bus rapide, multi-maître, transferts pipelines ou en mode burst,
 priorité sur les transferts
 Bus Périphérique : APB
 bus adapté à la connexion de périphériques “lents”,
 non-pipeline, pas de priorité, optimisé en consommation
 Interfaces entre bus : Bridges
Bus AMBA
• Bus AHB rapide: peu chargé
RAM
ARM • Possibilité de plusieurs maitres sur AHB
On chip
• Bus APB: périphériques
Bus AHB
• Bridge : seul maitre sur APB
• Bus hiérarchisé : autant de bus AHB que de
Bridge maîtres + Passerelles entre les bus AHB
DMA

UART • Problèmes:
Latence entre début de requêtes et fin de
Timer
communication peu déterministe

GPIO Dépend du trafic sur le bus (e.g. Burst)


Dépend du protocole (priorité, Round Robin)
Bus APB
Conclusion
 Concevoir les architectures embarquées à partir des composants les mieux adaptés vis à vis
des traitements à exécuter

 Objectifs : globalement performances, consommation, time-to-market,... sont optimisés


 Hétérogénéité et évolution des composants : microcontroleur, DSP, ASSP, ASIP
 Stations de base UMTS : DSP VLIW ou multi-MAC ou superscalaire + SIMD ?
 Portable UMTS : RISC + DSP basse consommation + reconfigurable + accélerateurs
HW
 Migration progressive des accélérateurs dans le chemin de données du DSP

 Des constructeurs proposent des architectures mixtes


 Philips/VLSI Technology VVS3771 : ARM7TDMI + OakDSPCore
 Motorola DSP56651 : RISC M-CORE + DSP56600

 Optimiser l’organisation et l’utilisation de la mémoire des composants


 La mémoire sur le composant : rapide mais coûteuse en surface
 Défaut de cache : consomme environ 6 fois plus d’énergie qu’une opération ALU
 Accès en mémoire externe au composant : moins cher mais plus lent et plus coûteux en
énergie

S-ar putea să vă placă și