MÉTHODOLOGIE DE CONCEPTION DES CIRCUITS INTÉGRÉS DIGITAUX



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

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

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

SIN-FPGA DESCRIPTION PAR SCHEMA

Conception et Intégration de Systèmes Critiques

THÈSE DEVANT L UNIVERSITÉ DE RENNES 1

Modélisation physique des cellules logiques... Modèles pour le placement routage, le format "LEF"

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

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

QUESTION 1 {2 points}

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

IFT1215 Introduction aux systèmes informatiques

Quoi de neuf en LabVIEW FPGA 2010?

ASR1 TD7 : Un microprocesseur RISC 16 bits

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

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

Présenté par : Sous la direction de :

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

Aiguilleurs de courant intégrés monolithiquement sur silicium et leurs associations pour des applications de conversion d'énergie

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

EMETTEUR ULB. Architectures & circuits. Ecole ULB GDRO ESISAR - Valence 23-27/10/2006. David MARCHALAND STMicroelectronics 26/10/2006

Chapitre 4 : Les mémoires

Vers du matériel libre

modélisation solide et dessin technique

Transmission d informations sur le réseau électrique

Analyse,, Conception des Systèmes Informatiques

Le génie logiciel. maintenance de logiciels.

PG208, Projet n 3 : Serveur HTTP évolué

Contribution à la conception par la simulation en électronique de puissance : application à l onduleur basse tension

Évaluation et implémentation des langages

Extrait des Exploitations Pédagogiques

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

CONVERTISSEURS NA ET AN

ORIENTATIONS POUR LA CLASSE DE TROISIÈME

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

Éléments d'architecture des ordinateurs

MEMOIRES MAGNETIQUES A DISQUES RIGIDES

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

BCI - TPSP - Processeurs et Architectures Numériques

Initiation au binaire

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique

Conception Electronique (CEL) Prof. Maurizio Tognolini

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

Circuits intégrés micro-ondes

Réseaux grande distance

Chapitre 2 : Systèmes radio mobiles et concepts cellulaires

Figure 1 : représentation des différents écarts

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

LA MESURE INDUSTRIELLE

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

Tutorial Cadence Virtuoso

Séminaire RGE REIMS 17 février 2011

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Outils de CAO. Ecole de microélectronique IN2P octobre 2009, La Londe Les Maures. C. Colledani

Du schéma au circuit imprimé. Copyleft

Leçon 1 : Les principaux composants d un ordinateur

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

Manuel d'utilisation de la maquette

UNIVERSITE D'ORLEANS ISSOUDUN CHATEAUROUX

Altium Designer la conception électronique sous un angle différent

Conception de circuits numériques et architecture des ordinateurs

Conférence sur les microcontroleurs.

IV- Comment fonctionne un ordinateur?

Rapport d activité. Mathieu Souchaud Juin 2007

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)

Les réseaux cellulaires

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

Une histoire de la microélectronique

Eléments constitutifs et synthèse des convertisseurs statiques. Convertisseur statique CVS. K à séquences convenables. Source d'entrée S1

Métriques de performance pour les algorithmes et programmes parallèles

Contributions à l expérimentation sur les systèmes distribués de grande taille

Consulting & Knowledge Management. Résumé :

Systèmes et traitement parallèles

NOTIONS DE RESEAUX INFORMATIQUES

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Les projets d investissement en PME

EIP 2012 Projet Livepad. Documentation technique 1.5

L AUTOMATISME LE SIGNAL

Electron S.R.L. SERIE B46 - SYSTEMES DIDACTIQUES DE TELEPHONIE

REALISATION d'un. ORDONNANCEUR à ECHEANCES

UNIVERSITE CATHOLIQUE DE LOUVAIN École Polytechnique de Louvain

Résultat des discussions du groupe de travail franco-allemand sur les infrastructures de charge

Modélisation de la Reconfiguration Dynamique appliquée à un décodeur LDPC Non Binaire

Conception de réseaux de télécommunications : optimisation et expérimentations

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

TP 2 : ANALYSE DE TRAMES VOIP

SSTIC Désobfuscation automatique de binaires. Alexandre Gazet. Yoann Guillot. Et autres idyles bucoliques...

Haute Ecole de la Ville de Liège. Institut Supérieur d Enseignement Technologique.

Cours n 12. Technologies WAN 2nd partie

Implémentation Matérielle des Services d un RTOS sur Circuit Reconfigurable

REFERENTIEL DU CQPM. TITRE DU CQPM : Electricien maintenancier process 1 OBJECTIF PROFESSIONNEL DU CQPM

Métiers d études, recherche & développement dans l industrie

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Garantir une meilleure prestation de services et une expérience utilisateur optimale

Machines virtuelles Cours 1 : Introduction

eframe pour optimiser les reportings métiers et réglementaires

VMWare Infrastructure 3

Études et Réalisation Génie Électrique

Gestion des sauvegardes

Transcription:

MODULE: SYSTEMES NUMERIQUES COMPLEXES Cours 1 MÉTHODOLOGIE DE CONCEPTION DES CIRCUITS INTÉGRÉS DIGITAUX H.Boumeridja 1

Introduction Méthodologie de conception des circuits intégrés digitaux: approche descendante ou "top-down» Flot de conception ASIC/FPGA : synthèse, placement, routage, simulation.. Techniques d implémentation des circuits intégrés digitaux 2

DÉFINITION D UN CIRCUIT INTÉGRÉ C est un microcircuit électronique implémenté sur un substrat ( Silicium) et composé principalement de deux types de composants: transistors et connexions. il est caractérisé par un processus technologique. PROCESSUS TECHNOLOGIQUE Par celui ci,on fabrique le circuit intégré. C est un ensemble de processus chimiques réalisé sur le plaque du semi-conducteur tel que oxydation, litographie,gravure,etc. Sur chaque processus chimique, on applique sur la plaque du semi-conducteur un masque déterminé sélectionnant ainsi la partie que l on désire lui appliquer le processus voulu. 3

La complexité des circuits intégrés digitaux est en augmentation: Des centaines de millions de transistors, Fréquences en gigacyles, Restrictions strictes sur la dissipation, Time to market. La nécessité d assistance d outils logiciels appropriés et de méthodes de conception systématiques. 4

TECHNOLOGIE 5

La méthode descendante est basée sur une suite de raffinements successifs partant d un cahier des charges pour aboutir à une description détaillée de la réalisation. Le cahier des charges définit le "quoi", c est-à-dire les fonctions à réaliser et les conditions dans lesquelles ces fonctions devront s exécuter. La méthode descendante est bien adaptée à la réalisation de circuits dont la structure peut être optimisée de manière très flexible à partir d un ensemble de cellules standard (standard cells) ou de matrices de portes (gate arrays). 6

NIVEAUX DE DESCRIPTION: NIVEAU ARCHITECTURAL NIVEAU TRANSFERT DE REGISTRES RTL NIVEAU LOGIQUE NIVEAU GÉOMÉTRIQUE 7

NIVEAU ARCHITECTURAL ENTRÉE: SPÉCIFICATIONS DU SYSTÈME DIGITAL QUE L ON VA CONCEVOIR. CONCEPTION ARCHITECTURALE: REPRÉSENTATION STRUCTURELLE AUX NIVEAUX BLOCS FONCTIONNELS DESCRIPTION DU COMPORTEMENT IDENTIFIANT L OPÉRATION DE CHACUN DES BLOCS DE LA REPRÉSENTATION STRUCUTRELLE. 8

NIVEAU TRANSFERT DE REGISTRES (RTL) ENTRÉE: CONCEPTION ARCHITECTURALE. CONCEPTION TRANSFERT DE REGISTRES : REPRÉSENTATION STRUCTURELLE DE CHAQUE SOUS SYTÈME AU NIVEAU COMPOSANTS. DESCRIPTION DU COMPORTEMENT IDENTIFIANT LE TRANSFERT DES DONNÉES ENTRE LES REGISTRES QUI PERMETTENT LA RÉALISATION DES OPÉRATIONS DU SYSTÈME À CONCEVOIR. 9

NIVEAU LOGIQUE ENTRÉE: CONCEPTION RTL. CONCEPTION LOGIQUE : CIRCUIT DIGITAL CONSTRUIT AVEC DES PORTES LOGIQUES ET BASCULES. OPÉRATION AU NIVEAU BITS. DESCRIPTION DU COMPORTEMENT AU NIVEAU DE TABLEAU D ÉTAT ( ÉLEMENTS SÉQUENTIELS ) OU TABLEAU DE VÉRITÉ ( ÉLEMENTS COMBINATOIRES ) 10

ENTRÉE: CONCEPTION AU NIVEAU PORTES LOGIQUES CONCEPTION GÉOMÉTRIQUE: NIVEAU GÉOMÉTRIQUE OBTENTION DU LAYOUT : Dessin de masque du système à concevoir dans un processus technologique donné. Le layout final dépend de la technique d implémentation utilisée pour la fabrication du circuit intégré ETAPES DE BASE POUR RÉALISER LE LAYOUT: Réalisation des cellules des composants logiques, Placement de ces cellules (PLACEMENT), Connexion des cellules (ROUTING). 11

Les systèmes à concevoir devenant de plus en plus complexes, les types de descriptions deviennent de plus en plus variés : SCHÉMAS. VHDL STRUCTUREL, FONCTIONNEL. ABEL (MACHINES À ÉTATS), VERILOG. CODE C / C++? Plus les systèmes deviennent complexes à concevoir, plus les étapes de vérification sont nécessaires : SIMULATION FONCTIONNELLE, ANALYSE DES TIMINGS (CHEMINS CRITIQUES), SIMULATION POST-ROUTAGE (TEMPORELLE),... Avec l'augmentation de la densité des circuits, les notions de placement géométrique deviennent indispensables : FLOORPLANNING 12

13

1- Description du système Schémas (hiérarchie), Code VHDL (Verilog, ABEL) 2- Compilation du code VHDL Synthèse si code fonctionnel 5- Compilation du circuit : Conversion du netlist, Optimisation combinatoire, Placement / routage des cellules Retro-annotation temporelle 3- Simulation fonctionnelle Vérification de la description 6- Vérification finale : Simulation temporelle, Configuration / validation 4- Placement relatif et estimation du routage : Floorplanning (plan de masse) et gestion des contraintes d'e/s 14

Toutes performances demandées par l utilisateur Les spécifications sont des descriptions de la puce. Elles peuvent venir d un client, d un groupe de marketing ou d autres personnes. Elles peuvent être écrites, dessinées, etc. 15

Décrire un circuit à l aide d un HDL (Hardware Desription Language) tel que VHDL et Verilog. Description selon différents niveaux d abstraction : Comportementale (validation des spécifications); RTL (Register Transfer Level); Portes logiques. 16

La synthèse est l étape qui transforme la description HDL d une puce en portes logiques. Elle est guidée par des contraintes imposées par l utilisateur (vitesse et superficie). L ensemble de la description est synthétisée: Le système reprend les descriptions du concepteur et génère une description VHDL du circuit (niveau structurel) utilisant les primitives du FPGA-cible et produit des rapports/diagnostic: performance temporelles occupation du FPGA. Ex: XST (XILINX) et design Compiler (Synopsys) 17

La simulation logique est une technique de simulation rapide basée sur l évaluation de fonctions logiques et la propagation d événements dans le modèle. La simulation du système est faite pour vérifier la validité du code. Faite à plusieurs moments (entre autres): avant-synthèse après-synthèse après placement-routage Ex: VSS (Synopsys) et ModelSim (Mentor Graphics). 18

Divise et place les gros blocs de la puce Forme des rangées pour placer les cellules Laisse un espace pour le routage décide de la position et de la distribution de l horloge Ajuste l espace, la forme, la densité etc. 19

Place les cellules en accord avec le floorplan. Crée des lignes d alimentation de puissance. Crée des lignes de distribution d horloge. Minimise les délais critiques entre modules Connecte les cellules entre elles. 20

Assigne les interconnexions aux canaux de routage sans effectuer les connexions physiques (global routing), Réalise toutes les interconnexions (detailed routing). 21

la simulation considère les portes logiques comme des boîtes noires caractérisées par leurs délais; on obtient la performance temporelle approximative du circuit. 22

AVANT DE PROCÉDER À L IMPLÉMENTATION, ON PEUT GÉNÉRER UN FICHIER DE RESTRICTIONS ( L UTILISATEUR) DANS LE BUT EST DE FIXER DES RESTRICTIONS DANS LE PROCESSUS DE L IMPLÉMENTATION DU DESIGN. AVEC CES RESTRICTIONS, ON PEUT AFFECTER DES SIGNAUX CORRESPONDANT AUX PORTS DE L ENTITÉ DE LA HIÉRARCHIE LA PLUS SUPÉRIEURE. LE FICHIER DE RESTRICTIONS DE L UTILISATEUR (USER CONSTRAINS FILE- UCF) PEUT ÊTRE CRÉER AVEC LES PROGRAMMES ASSOCIÉS À L ITEM USER CONSTRAINTS SITUÉ AU DESSUS DE L OUTIL DE SYNTHÈSE. L OUTIL XILINX CONSTRAINS EDITOR PERMET D ÉDITER DE FORME GRAPHIQUE LES RESTRICTIONS SPATIALES ( PLACEMENT DES PINS PHYSIQUES AUX PORTS DE L ENTITÉ) OU TEMPORELLES (RETARDS MAXIMALS, FRÉQUENCES MAXIMALES D HORLOGE,ETC) 23

Une fois l implémentation validée par les différentes simulations, ce module permet de configurer le circuit FPGA en injectant par le biais d un programmateur un fichier binaire à l intérieur du circuit. XC4000 XC4000 XC4000 24

Vérifier si le circuit obtenu respecte les contraintes temporelles. Utilise les délais des portes et les délais dans les interconnexions pour calculer la vitesse maximale. 25

L étape de vérification d un circuit prend environ 70% à 80% du temps de conception. La phase de vérification fonctionnelle est un processus qui permet de vérifier que la description synthétisable respecte les spécifications. Le but primordial est de prouver que le module va fonctionner dans l environnement dans lequel il sera intégré. Vérification fonctionnelle & temporelle 26

But: Aider au développement de CI numériques en permettant la description du fonctionnement et de l'architecture du circuit. Les outils de développement permettent de simuler le fonctionnement attendu. Mise en œuvre: Synthétiser cette description matérielle pour obtenir un composant réalisant les fonctions décrites, à l'aide d éléments logiques concrets. Implémentation: Sur ASICs «full-custom» (au niveau du transistor); Sur ASIC «standard-cell» (au niveau de l élément logique); Sur FPGA en utilisant les blocs configurables. 27

L approche est différente selon l utilisation: Spécification > Simulateur Vérification > Simulateur Description > Outil de synthèse et simulateur. 28

CLASSIFICATION DES CIRCUITS NUMÉRIQUES DIGITAUX 29

FULL-CUSTOM SEMI-CUSTOM CELLULES STANDARD MATRICES DE PORTES CIRCUITS LOGIQUES PROGRAMMABLES 30

CES CIRCUITS NÉCESSITENT L INTERVENTION D UN FONDEUR QUI PRODUIRA LE CIRCUIT DEMANDÉ À PARTIR DES MASQUES FOURNIS PAR LE CLIENT. LES CONNEXIONS ENTRE ÉLÉMENTS SONT DESSINÉES SUR LES MASQUES. 31

CE TYPE DE CIRCUITS SE CONÇOIVENT DANS UNE FONDRIE, CAR CELA PERMET UN MEILLEUR PROFIT DU SILICIUM DANS L IMPLÉMENTATION DU CIRCUIT. Niveau portes logiques Vérification DESIGN SUR MESURE: Construction schématique au niveau transistor. Réalisation du layout. Niveau transistors Vérification Niveau géométrique Vérification 32

RÉALISATION D UN MULTIPLEXEUR 2:1 SIMULATION LAYOUT 33

Recherche d une solution optimale en terme de densité et de performance, obtenue par une conception spécifique aux niveaux physiques (électrique et topologique - layout ). Approche de conception couteuse réservée à des ingénieurs expérimentés travaillant à partir des données du fondeur (règles de dessin et modèles des transistors). Justification : grandes séries, applications stratégiques ou domaines spécifiques (ex : analogique). Fabrication de l ensemble des masques et des plaquettes. Evolution : DU CIRCUIT sur mesure VERS LA CELLULE sur mesure. 34

AVANTAGES: Circuits intégrés de grandes prestations. INCONVENIÉNTS: Temps de design trop élevé. 35

Caractéristiques du design avec les cellules standards: Le fabricant met à la disposition du concepteur une bibliothèque de cellules de dessin de masque des dispositifs logiques. Existent des outils de génération automatique de dessin de masque ou layout. Processus de génération du layout: il est généré à partir du design niveau portes logiques et avec les cellules de layout des composants de ce design. Deux tâches se réalisent: Placement des cellules Connexion entre les cellules Les tâches de placement et routage se font de manière automatisée. 36

TYPES DE CELLULES STANDARDS: Blocs logiques de base: Portes et Bascules. Sous systèmes combinatoires: Multiplexeurs, décodeurs, etc. Sous systèmes séquentiels: Registres, compteurs,etc. Macrocellules: RAMs,FIFOs, ROMs,etc. HAUTEUR STANDARD 37

AVANTAGES: Élimine la nécessité du design au niveau transistor. Réduit fortement le temps total du design. INCONVÉNIENTS: Augmentation de la surface totale qu occupe le circuit à réaliser. 38

CARACTÉRISITQUES DE BASE DE LA CONCEPTION DES MATRICES DE PORTES: Les plaques de silicium sont préfabriquées. Interconnexion entre transistors: Couches de métallisation. On dispose de bibliothèques de dispositifs logiques. CARACTÉRISTIQUES DE BASE DU DESSIN DE MASQUE DE MATRICES DE PORTES: Processus CMOS: plaques sans métallisation: les fils de transistors PMOS et NMOS. Plaque métallisée: avec plusieurs niveaux d interconnexion. 39

AVANTAGES: Les plaques sont préfabriquées. Le temps de fabrication est réduit. Les plaques préfabriquées sont servies pour différentes conceptions: les coûts sont réduits. INCONVÉNIENTS: Les performances se perdent : surface, vitesse... 40

les FPGAS sont des circuits d application spécifique de grande densité programmables par l utilisateur en un temps réduit et sans la nécessité de vérifier ses composants, tâche déjà réalisée par le fabriquant. 41

Caractéristiques de base d une conception par les dispositifs logiques programmables: Circuit intégré fabriqué, préparé pour être programmé. Son layout final est traduit par un fichier de configuration du dispositif. Choix du FPGA comme dispositif programmable: Grande densité d intégration par rapport à d autres dispositifs programmables. 42

CARACTÉRISTIQUES DE LA PROGRAMMATION DE L FPGA: Le programme est un fichier mémorisant une chaine de bits. Cette chaîne de bits est enregistrée dans une RAM interne de l FPGA qui configure la matrice de connexion des dispositifs logiques. CARACTÉRISTIQUES D OPÉRATION La fonctionalité de l FPGA est déterminée par la conception réalisée et implémentée par le fichier de configuration adéquat. La vérification du circuit conçu peut se faire sur le chip. STRUCTURE INTERNE DE L FPGA: NIVEAU LOGIQUE 43

PROCESSUS DE GÉNÉRATION DU FICHIER DE CONFIGURATION: Distribution du circuit réalisé dans les CLBs Programmation de la matrice de commutation: établir les canaux de connexion. Tâches automatisées par le software mis par le fabricant des FPGAs. 44

AVANTAGES: Le temps de fabrication est supprimé. INCONVÉNIENTS: Les caractéristiques fonctionnelles dépendent du chip de l FPGA choisi. 45

LES CRITÈRES DE CHOIX DÉPENDENT DE : PARAMÈTRES TECHNIQUES (vitesse, puissance, ), PARAMÈTRES ÉCONOMIQUES (surface, délais pour la conception et la fabrication, moyens et coûts de conception des prototypes, des pièces de série, volumes de pièces prévus sur la durée de vie du produit ). LE POINT D ÉQUILIBRE ENTRE TOUS CES PARAMÈTRES POUVANT ÉVOLUER DANS LE TEMPS, LE CHOIX D UNE SOLUTION POUR INTÉGRER UN SYSTÈME PEUT VARIER PENDANT LA DURÉE DE VIE DU PRODUIT. 46

ANNEXE 47

LE CONCEPTEUR NE TRAVAILLE PAS AVEC LES PORTES LOGIQUES MAIS AU NIVEAU TECHNOLOGIQUE CÀD IL CONSTRUIT SES PROPRES CELLULES EN LES CARACTÉRISANT ÉLECTRIQUEMENT. LES OUTILS UTILISÉS SONT: EDITEURS DE MASQUES OU LAYOUT, SIMULATEURS TYPE (SPICE), VÉRIFICATEURS DE RÈGLES DE DESIGN,ETC. C EST UN PROCESSUS PEU PRODUCTIF, REQUIERT BEAUCOUP D EXPÉRIENCE. DIFFICILE ET COÛTEUX DE VÉRIFIER LE CIRCUIT CONÇU. LA PROBLÉMATIQUE D ADAPTER LE CIRCUIT LORS DES CHANGEMENTS TECHNOLOGIQUES. UN ÉTROIT CONTACT AVEC LE FABRIQUANT DU C.I. 48

DESIGN SEMI-CUSTOM (CELLULES STANDARD OU STANDARD CELLS). EXISTENT BEAUCOUP DE CELLULES EN FORME DE BIBLIOTHÈQUES SUPPORTÉES PAR DES OUTILS CAPABLES DE LES SYNTHÉTISER, LES GÉNÉRER, LES SIMULER ET LES VÉRIFIER (TESTS): CELLULES STANDARDS (LOGIQUE). MACROCELLULES OU MACROS: RAM, ROM, MULTIPLIEURS,ETC. BLOCS FONCTIONNELS: CPU RISC, MICROCONTROLLEURS,ETC. CELLULES ANALOGIQUES: AO, A/D, D/A, ETC. TOUT IMPLIQUE UNE UTILISATION PLUS COMMODE ET DES DESIGNS PLUS ÉCONOMIQUES => MEILLEURE PRODUCTIVITÉ =>DIMINUER LES COÛTS. EN SEMI-CUSTOM, LE CONCEPTUER MANIPULE LES SYMBOLES. EN FULL-CUSTOM, LE CONCEPTEUR DOIT OBTENIR LE LAYOUT. ENTRÉES SORTIES 49

G Eng_2 S L W D W L Eng_1 Eng_1 Dim_2 Dim_1 Esp_2 Esp_1 Dim_3 Dep_2 Dep_1 50

51