12 semaines ARCHITECTURE ÉVOLUÉE DES ORDINATEURS. Contrôle et notation LES FPGAS. Position du problème. Position du problème - 1 -



Documents pareils
Quoi de neuf en LabVIEW FPGA 2010?

Chapitre 1 : Introduction aux méthodologies de conception et de vérification pour SE

DOCUMENT PROTEGE PAR UN DROIT DE COPIE. CPLD ou FPGA Critères de choix. page 1

Quoi de neuf en contrôle/commande et systèmes embarqués (RIO, WSN...)?

Les systèmes embarqués Introduction. Richard Grisel Professeur des Universités Université de Rouen Nacer Abouchi Professeur ESCPE Lyon

Potentiels de la technologie FPGA dans la conception des systèmes. Avantages des FPGAs pour la conception de systèmes optimisés

MAC-TC: programmation d un plate forme DSP-FPGA

IFT1215 Introduction aux systèmes informatiques

QUESTION 1 {2 points}

Introduction à l architecture des ordinateurs. Adrien Lebre Décembre 2007

Thème 3 Conception et vérification d architectures de systèmes sur puce

SIN-FPGA DESCRIPTION PAR SCHEMA

Chapitre II-2 : Conception SoPC (Altera)

Hiérarchie matériel dans le monde informatique. Architecture d ordinateur : introduction. Hiérarchie matériel dans le monde informatique

Limitations of the Playstation 3 for High Performance Cluster Computing

Séminaire RGE REIMS 17 février 2011

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :

Une méthode de conception de systèmes sur puce

Système binaire. Algèbre booléenne

Notions d IPMI et retour. Ecole d électronique numérique Fréjus 28 novembre 2012 Nicolas LETENDRE

On distingue deux grandes catégories de mémoires : mémoire centrale (appelée également mémoire interne)

et dépannage de PC Configuration Sophie Lange Guide de formation avec exercices pratiques Préparation à la certification A+

NOTIONS DE RESEAUX INFORMATIQUES

Alcatel OmniPCX Enterprise TSC-IP V1 (4098RE)

Conception de Systèmes de Communications Numériques

Vers du matériel libre

Introduction. Multi Média sur les Réseaux MMIP. Ver

Les liaisons SPI et I2C

Leçon 1 : Les principaux composants d un ordinateur

Profil UML pour TLM: contribution à la formalisation et à l automatisation du flot de conception et vérification des systèmes-sur-puce.

ELP 304 : Électronique Numérique. Cours 1 Introduction

Sur un ordinateur portable ou un All-in-One tactile, la plupart des éléments mentionnés précédemment sont regroupés. 10) 11)

Spécifications détaillées

THÈSE DEVANT L UNIVERSITÉ DE RENNES 1

Fiche technique CPU 315SN/PN (315-4PN33)

Conception Systèmes numériques VHDL et synthèse automatique des circuits

GPA770 Microélectronique appliquée Exercices série A

Initiation au HPC - Généralités

Fiche technique CPU 314SC/DPM (314-6CG13)

systèmes étendus Guide des Version 6.7 pour systèmes HD sous Macintosh ou Windows Digidesign

Chapitre 4 : Les mémoires

Evolution de l infrastructure transport

ADÉQUATION ALGORITHME-ARCHITECTURE APPLIQUÉE AUX CIRCUITS RECONFIGURABLES

PRESENTATION RESSOURCES. Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Conférence sur les microcontroleurs.

Conception et Intégration de Systèmes Critiques

ÉCOLE POLYTECHNIQUE DE MONTRÉAL. Département de Génie Électrique. La technologie de TEXAS INSTRUMENTS DSP pour le cours Analyse des Signaux ELE2700

Les portes logiques. Voici les symboles des trois fonctions de base. Portes AND. Portes OR. Porte NOT

L3 informatique Réseaux : Configuration d une interface réseau

Modules du DUT Informatique proposés pour des DCCE en 2014/2015

Cours n 12. Technologies WAN 2nd partie

VLAN Virtual LAN. Introduction. II) Le VLAN. 2.1) Les VLAN de niveau 1 (Port-based VLAN)

Architecture matérielle des systèmes informatiques

Microprocesseurs spatiaux Contraintes et perspectives

Les tablettes. Présentation tablettes Descriptif Fournisseurs Caractéristiques Comparatifs Conseils Perspectives Démonstration

Conception Systèmes numériques VHDL et synthèse automatique des circuits

Choix d'un serveur. Choix 1 : HP ProLiant DL380 G7 Base - Xeon E GHz

1. PRESENTATION DU PROJET

L intelligence intégrée et connectée au cœur de vos projets. Dossier de presse

CONTEC CO., LTD. Novembre 2010

Serveur Lynx CALLEO Application 2240S Fiches Technique

Réseaux grande distance

Sélection du contrôleur

Serveur Lynx CALLEO Application 2240 Fiches Technique

Guide Mémoire NETRAM

Chapitre I. La couche réseau. 1. Couche réseau 1. Historique de l Internet

2. DIFFÉRENTS TYPES DE RÉSEAUX

MODULE I1. Plan. Introduction. Introduction. Historique. Historique avant R&T 1ère année. Sylvain MERCHEZ

Architecture des Ordinateurs. Partie II:

Téléinformatique. Chapitre V : La couche liaison de données dans Internet. ESEN Université De La Manouba

Les Virtual LAN. F. Nolot. Master 1 STIC-Informatique 1

Présentation du modèle OSI(Open Systems Interconnection)

Introduction. René J. Chevance

Organisation des Ordinateurs

Présentation du système informatique utilisé et éléments d architecture des ordinateurs

Conception de circuits numériques et architecture des ordinateurs

FICHE DE COURS RESEAU POSTE A POSTE BAC PRO SYSTEMES ELECTRONIQUES NUMERIQUES Champ Professionnel : Télécommunications et Réseaux

epowerswitch 8XM+ Fiche technique

White Paper - Livre Blanc

SERVEUR CALLEO APPLICATION R269M

Projet audio. Analyse des Signaux ELE2700

Concevoir son microprocesseur

Plan. École Supérieure d Économie Électronique. Plan. Chap 9: Composants et systèmes de sécurité. Rhouma Rhouma. 21 Juillet 2014

Architecture des calculateurs

Sécurité et Firewall

Ordinateurs, Structure et Applications

GCOS 7 sur microprocesseur standard Diane Daniel POIRSON 14 octobre 2004 Matériels 64 / DPS 7 / DPS 7000 Architecture & Evolution - Daniel POIRSON 1

A. Elmrabti. To cite this version: HAL Id: tel

Informatique Industrielle Année Architecture des ordinateurs Note de cours T.Dumartin

Indiscrétions et «zones constructeurs» «Redécouvrons nos disques durs»

La carte à puce. Jean-Philippe Babau

II/ Le modèle OSI II.1/ Présentation du modèle OSI(Open Systems Interconnection)

Systèmes et traitement parallèles

Spécifications détaillées

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

Plan. Programmation Internet Cours 3. Organismes de standardisation

Cours des réseaux Informatiques ( )

Éléments d'architecture des ordinateurs

Contrôleur de communications réseau. Guide de configuration rapide DN

Transcription:

12 semaines Jean-luc.dekeyser@lifl.fr Version 2013 ARCHITECTURE ÉVOLUÉE DES ORDINATEURS Contrôle et notation Examen en janvier Une note de contrôle continue 2 TP sur carte nexys 3 ( /20) ou une contribution intégrée au processeur Homade (20/20) Une interro un mardi ( 5 questions bonus 1 point) Règle du sup! LES FPGAS Une alternative aux ASICs (Application-Specific Integrated Circuit) On qualifie les gros ASIC de SoC (system-on-chip, ou système sur silicium), lorsqu'ils intègrent processeur(s), interfaces, mémoires, etc. http://en.wikipedia.org/wiki/field-programmable_gate_array Position du problème Position du problème ASICs Matériel circuits personnalisés circuits logiques programmables FPGA EPLD Logiciel circuits existants microprocesseurs processeurs DSPs mémoires périphériques L intérêt des (Circuit Logique Programmable) se justifie (depuis 30 ans) par : Le coûts très important des ASICs Le temps de développement d un ASIC Les performances faibles du logiciel La non flexibilité des solutions ASIC «Démocratisation» des FPGA - 1 -

Coût /ASIC Temps de conception NRE Coût à la pièce ASIC le seuil augmente si le nombre de portes baisse seuil mini = 1000 pièces seuil ASIC FPGA mp + logiciel spec spec spec Code+synth Code+synth Code Placement Routage P R fab Time to market temps Nombre de pièces Les performances Démocratisation de la fréquence de traitement f 80 circuit personnalisé : traitement parallèle 70 60 conception T0 Temps Idée Spécifications Tfin log10(complexité) Produit 3 4 F clock 50 40 30 20 10 processeur : traitement séquentiel f = f clock nb op/cycle 1 2 3 4 8 12 16 20 24 28 32 36 40 44 48 52 Nb opérations/cycle RTL Porte Transistor Masque Fonderie Affaire de Spécialistes avec un équipement lourd 5 7 8 10 Intérêts propres aux s prototypage conception rapide de démonstrateurs autonomie (pas de fondeur) Reprogrammation maintenance in situ Performance de plus en plus proche des processeurs 2 générations de retard sur le taux d intégration Comment faire des? Un circuit classique contient : - des portes logiques ; - des connections entre les portes logiques ; - des éléments de mémorisation (registre et/ou mémoire) ; - des entrées-sorties. - une (ou des) horloges - une structure hiérarchique Le doit donc avoir les mêmes fonctionnalités, avec la notion de «programmabilité». - 2 -

Fonction logique simple : Réseau logique Toute fonction logique booléenne peut s'exprimer sous forme canonique Mémoire fonction logique 2 entrées : f(a 1,A 0 ) = f(0,0)a 1 A 0 + f(0,1)a 1 A 0 + f(1,0)a 1 A 0 +f(1,1)a 1 A 0 exemple : S = A 2 A 1 A 0 + A 2 A 1 A 0 + A 2 A 1 A 0 + A 2 A 1 A 0 A i Matrice ET produits des entrées minterme ou terme produit mémoire 4 mots de 1 bit : d = d 0 A 1 A 0 + d 1 A 1 A 0 + d 2 A 1 A 0 + d 3 A 1 A 0 A 0 A 1 adresse=entrées Matrice OU S somme des produits j = Réseau logique programmable d0=0 d2=1 d1=1 d3=0 liaison non programmable liaison programmable F(A 1,A 0 )=d= A 1 A 0 + A 1 A 0 Mémoire LOOK UP TABLE (LUT) mémoire 16 mots de 2 bits => 2 fonctions logiques de 4 entrées Une mémoire contient la table de vérité d une fonction logique : A 0 A 1 A 2 A 3 adresse=entrées matrice OU programmable liaison non programmable liaison programmable matrice ET figée S 0 S 1 Ex : Fonction F(a,b,c) = a xor b xor c 000 0 001 1 010 0 011 1 100 0 101 1 110 0 111 1 Adresse (a,b,c) SRAM F(a,b,c) => Mode de lecture différent du résultat Programmation des interconnections Par connexion ou non de deux fils F1 F2 Par l utilisation de multiplexeur F1 F1 F2! F1 F2 Le nombre de connexions réalisables est limité à ce qui existe... Gestion de la complexité Pour les complexes, il est possible de définir des niveaux de hiérarchie du matériel. => Au niveau des interconnections => Au niveau du regroupement de fonctions logiques Il est aussi possible de diviser le circuit en fonctionnalités différentes : => Zone de mémoire RAM => Zone de => Zone spécialisée - 3 -

Taxinomie des s (PLD) Circuits logiques programmable (Programmable Logic Device) PLD EPLD-CPLD FPGA PAL GAL SRAM antifuse UVPROM EECMOS isp Architecture gate-array (FPGA) Ensemble de cellules logiques disposées en matrice et séparées par des canaux de routage organisés en Rangées/Colonnes. A chaque intersection se trouve un commutateur. Le temps de propagation dépend du routage choisi pour réaliser l'interconnexion. canaux de routage! Les noms peuvent changer selon l auteur, le fondeur... cellule logique Construction en blocs Sur plusieurs blocs Fonctions logiques dans Lookup Table LUTs Multiplexers (selection 1 / N inputs) Flip-Flops. Registers. Clocked Storage elements. Connection de plusieurs blocs pour des fionctions logiques plus complexe FPGA Fabric Logic Block Une logique avec horloge Design Synchronous Logic Flip Flops outputs. CLOCKED elements. Sequential Logic Functions (cf Combinational Logic LUTs) Pipelines. Synchronous Logic Design Un pipeline de fonction logique Des registres mémorisent les résultats Remplissage du pipe-line Un résultat / cycle Cf cours sur le pipe-line Clock - 4 -

routage dans un FPGA routage dans un FPGA commutateur A A cellule logique cellule logique rangée pour connexions globales = lignes longues rangée pour connexions locales =segments B B exemple : XC4000 XILINX colonne pour connexions locales grande adaptabilité du routage Comment choisir un FPGA? CAO pour conception de Caractéristiques techniques du FPGA - Performances (complexité, vitesse, conso.) - Nombre et interface - Tension d alimentation - Boitié Qualité des softs associés au FPGA (CAO et IP) Technique de programmation Technique de debug et de test Critères économiques - prix, disponibilité - pérennité et flexibilité de la famille. spécifications SAISIE Très similaires à celle des circuits VLSI : SYNTHESE Technologie VERIFICATION D : PLACEMENT ROUTAGE Synthèse et P/R spécifique : nombre de cellules figé par circuit 1 cellule = entre 1 et 20 portes 2 entrées Autonomie : réalisation= téléchargement dans le circuit PROGRAMMATION CONFIGURATION PC et/ou station de travail placement routage "Netlist " après synthèse partitionnement circuits multiples floorplanning placement routage + Chaque vendeur de fournit son outil de P/R dédié adder glue timing control FIFO Bloc cellule équipotentielle vers programmeur La qualité des outils Les FPGAs deviennent très complexes et très flexibles. => L optimisation du P/R devient très complexe => Logiciels performants Or les logiciels de CAO pour les s manquent de maturités : => très lents (24 h pour un placement routage) => peu stables (machine à rebouter) => peu efficaces et non déterministes : a) temps de propagation trop long b) en échec (pas de solution trouvée). =>il faut alors guider «à la main» le placement - 5 -

Synthèse sur FPGA Pour optimiser la synthèse, il faut la guider : => Directive global de compilation : Effort d optimisation, critères de synthèse => Directive locale de compilation dans le texte -- «mot clef» «directive compilation» => Directive hiérarchique de compilation tel bloc, telle méthode (insertion libre de registres, méthode A). => Utilisation d opérateurs «optimisés par le fondeur» appels de macro-blocs additionneurs, multiplieurs,... paramétrables PROBLEME : Le code VHDL devient spécifique au FPGA Placement sur FPGA Problème NP-complet qui conditionne : - la possibilité de trouver une solution de routage - le chemin critique Solution : - Indiquer «à la main» le placement des blocs dans le floor plan. - Placement routage incrémental Assignation manuelle ou automatique des PAD sur les entrées/sorties du composant VHDL. Intellectual Property (IP) IP MegaStore: Search Engine www.altera.com/ipmegastore La qualité d une s dépend aussi des IPs disponibles pour accélérer la conception (de même que la qualité d un système d exploitation dépend des logiciels existant). Les structures matérielles deviennent du consommable Achat ou location d un design paramétrable Licence ou royalties Développement et échange d IP grâce aux langages standards The Portfolio (XILINX, ALTERA) Critère économique Communications ADPCM (u-law, a-law) ATM Controller Cell Delineation CRC Ethernet MAC (10/100/Gigabit) HDLC Protocol Core IMA Controller Intermediate Data Rate Framer/DeFramer Multi-Channel ATM TC Packet Over SONET Controller Rank Order Filter Speedbridge Telephony Tone Generator Utopia Level II/III Master and Slave Bus Interface CAN Bus IIC Slave IIC Master IEEE 1394 PCI Target PCI Master/Target PCI-X Master/Target PowerPC Bus Arbiter PowerPC Bus Master PowerPC Bus Slave USB Function Controller USB Host Controller Digital Signal Processing Processor, Peripheral Adaptive Filter 2910 Binary Pattern Correlator 49410 Biorthogonal Wavelet Filter 6402 UART Complex Multiplier Mixer 6850 UART CSC 16450/550 UARTs Decimating Filter 8251 UART Digital Modulator 8237 DMA Controller Discrete Cosine Transform 8255 Peripheral Interface Early/Late Gate Symbol 8259 Interrupt Controller FFT 8254 Timer/Counter FIR Compiler 8051 FIR Filter Library 8052 Floating Point Adder/Divider 6502 IIR Compiler Z80 Image Processing Library Excalibur NIOS Processor Integer Divider LX-4080R NCO Xtensa 32-bit Processor Reed Solomon Compiler SDRAM Controller Square Root Operator Symbol Interleaver/Deinterleaver Viterbi Decoder Coût du composant : évidemment... Coût du développement : dépend de la culture de l entreprise => Savoir faire => Réutilisation de code déjà existant => Existence ou non des logiciels de CAO (conditionne aussi le temps de développement) Coût de maintenance : => extension de la famille FPGA : nouvelle génération de produit - 6 -

L environnement Xilinx La nexys 3 Outils (Xilinx) Spartan-3 Starter Board ISE WebPack L environnement ISE Conception Etapes Edition des sources Edition du fichier UCF : «User Constraints File» Répartition des signaux de l entité principale sur des pins Contraintes de timing IO Standards (LVTTL, LVCMOS33, LVCMOS25 ) Synthèse et génération du fichier programme Génération de l image EEPROM Flashage de l EEPROM Le top Virtex 7-7 -