Technologies des Circuits Intégrés ASIC
Technologies des Circuits Intégrés ASIC
2002
OBJECTIFS : présentation de l'état de l'art dans le domaine de la conception des circuits intégrés spécifiques
"ASIC " et des logiciels de CAO associés. Intérêt et limites des techniques d'intégration. Flots de conception.
Evolutions : systèmes sur puces.
MOTS CLES : Electronique, Micro-électronique. Technologie CMOS. ASIC. Systèmes sur puce (« Systems On
Chip, SOC »). Circuits programmables (FPGA, FPGA-SRAM, PLD, CPLD, EPLD). Reconfiguration. Matrice et
circuits pré-diffusés ("Gate array"). Circuits pré-caractérisés ("standard cell", "cell based"). Composants
virtuels ( ou bloc « IP »). CAO. Vérification. Prototypage.
PLAN
3.1 - Principes
3.2 - Conception
3.3 - Applications
3.4 - Evolutions
4) METHODOLOGIES DE CONCEPTION
4.1 - Spécification
4.2 - Bibliothèque de cellules : principes
4.3 - Flot de conception
6) CONCLUSION
REFERENCES
Un circuit intégré conçu de nos jours dans une technologie CMOS submicronique
utilise plusieurs dizaines de millions de transistors de très faibles dimensions sur une surface
de quelques cm2 . De plus, il fonctionne à une fréquence élevée (plus de 1,5 GHz pour les
processeurs actuels) et dissipe une puissance importante. Les performances techniques
recherchées pour les téléphones mobiles sont une bonne illustration des objectifs à atteindre
dans des marchés où la compétition est très forte : faible poids, faible volume, grande
autonomie, bonne couverture géographique, faible coût. Ces performances sont atteintes en
intégrant l’ensemble des fonctions sur un ou deux circuits intégrés spécifiques.
Le nombre de transistors par circuit intégré double tous les un an et demi. Cette
évolution déterministe a été prédite par la loi de "Moore" (du nom de G. Moore, co- fondateur
de la société Intel) et s'est vérifiée sur les trente dernières années. Ce prodigieux essor a été
rendu possible par les progrès concernant aussi bien l'architecture des transistors et leurs
technologies de fabrication que l'architecture des circuits et les méthodes de conception
assistée par ordinateur (CAO). La croissance exponentielle du nombre de transistors sur une
seule puce (une puce est le morceau de silicium sur lequel est réalisé le circuit intégré),
conséquence de l'évolution des technologies de fabrication, permet d'y intégrer des fonctions
de plus en plus complexes, avec de plus en plus de fonctionnalités, jusqu'à l'intégration de
systèmes complets.
Les premiers transistors étaient des transistors bipolaires. Ces transistors sont rapides
mais ne sont pas bien adaptés à la miniaturisation (encombrement et forte consommation). Ils
sont actuellement essentiellement utilisés pour les circuits analogiques. Ils sont à base de
silicium pour les basses fréquences et les radiofréquences jusqu'à quelques milliards de Hertz
(GHz). Pour les fréquences plus élevées (hyperfréquences), les matériaux de base sont les
semiconducteurs composés d'atomes des troisième et cinquième colonnes du tableau de
Mendéléïev (composés III-V de type GaAs), ou SiGe dont les performances devraient
atteindre celles des circuits intégrés III-V.
Au milieu des années 60, grâce aux recherches concernant l'oxyde de silicium, est
apparu le transistor à effet de champ (MOSFET pour metal-oxide-semiconducteur field effect
transistor). A l'origine, on ne savait fabriquer que des MOSFET dont l'électrode de commande
(la grille) était fabriquée en aluminium. Dans les années 70, de nouvelles techniques
d'isolation entre des transistors (LOCOS pour localized oxide separation) et la maîtrise des
grilles en silicium polycristallin ont permis de fabriquer des MOSFET à conduction par
électrons. Enfin, dans les années 80, on a su réaliser sur une même tranche et avec des
procédés technologiques compatibles des MOSFET à conduction par trous et des MOSFET à
conduction par électrons. Les circuits CMOS (« Complementary MOSFET ») étaient nés. Ces
circuits, bien que relativement lents, sont bien adaptés pour une miniaturisation (faible
encombrement, technologie de fabrication relativement simple, faible consommation). Dans
le futur, les performances des circuits pourraient encore être améliorées, à technologie
comparable, par l'utilisation de substrats de type SOI (silicon on insulator). L’annexe 1
résume les caractéristiques électriques de base des circuits CMOS. Compte tenu du
compromis (vitesse, puissance dissipée, densité d’intégration, coût), la plupart des circuits
intégrés sont fabriqués dans cette technologie. Le silicium a donc aujourd’hui le quasi
monopole. Il est prévu dans les prochaines années, une évolution avec l'émergence de circuits
intégrés fabriqué sur substrats SOI, et l'utilisation du silicium- germanium (SiGe).
Les technologies de fabrication ont suivi une évolution déterministe, prédite par la
feuille de route "roadmap" du SIA [SIA1] (« Semiconductor Industry Association »). Cette
évolution est quantifiée par les dimensions les plus faibles que l'on sait réaliser et que l'on
qualifie de règles de dessin. Les règles de dessin diminuent d'un facteur deux tous les cinq ans
et on parle de générations successives (d'une génération à l'autre, la surface des transistors
diminue d'un facteur deux, soit 2 pour les règles de dessin). Actuellement, on sait réaliser
industriellement des motifs de 0,12 µm et des motifs inférieurs à 0,05 µm (ou 50 nm) sont
prévisibles à partir de 2005 : on prévoit ainsi d’atteindre 1 milliard de transistor sur une puce
avant 2010. Cette évolution déterministe n'a été possible que grâce à des nouvelles techniques
de fabrications telles que les implantations ioniques qui ont permis l'émergence des
technologies auto alignées, l'isolation par tranchées (STI pour « shallow trench isolation ») ou
la planarisation par polissage mécano-chimique (CMP pour « chemical mechanical
polishing »).
La fabrication du circuit intégré est précédée d'une phase de conception durant laquelle
s'élaborent les plans du circuit sur la base de ses spécifications fonctionnelles. La Figure 1.2,
illustre les relations entre les phases de conception et de fabrication. La conception d'un
circuit intégré permet ainsi de passer du "système" au "silicium" (technologie de fabrication)
en passant d'un modèle dit de haut niveau qui est une description fonctionnelle du circuit à un
modèle dit de bas niveau correspondant à l'élaboration des plans des masques (« layout ») qui
vont définir la topologie des circuits (assemblage de plusieurs centaines de millions de
rectangles ou de polygones sur plusieurs niveaux). Pour cela, plusieurs étapes correspondant à
différents niveaux de modélisation sont enchaînées (Figure 1.3) : spécification du système,
identification des fonctions logicielles et matérielles, description de l'architecture, puis des
structures logiques (modèle booléen correspondant à deux valeurs 0 et 1, modélisant les
tensions aux bornes des circuits), électriques (assemblage et dimensionnement des transistors)
et topologiques (dessin des plans des masque s en respectant des contraintes géométriques
strictes).
Jusqu'au début des années 80, la conception des circuits (en anglais "design"), dont la
complexité ne dépassait pas quelques milliers de transistors, s'effectuait de manière manuelle,
c'est à dire sans outils logiciels d'aide à la conception, ce qui avait pour conséquence une
productivité assez faible et des erreurs de conception fréquentes. Le développement de
méthodes et d'outils de CAO (conception assistée par ordinateur) a permis d'accélérer le cycle
de conception et de rendre les circuits plus performants. Les premiers outils pour la CAO
micro-électronique sont apparus à la fin des années 70. Il s'agissait d'une part de simulateurs
électriques (Spice) qui permettent de vérifier le fonctionnement statique (tensions, courants)
et dynamique (délais, ...etc.) des circuits avant leur fabrication en évitant ainsi la nécessité de
réaliser des maquettes, et d'autre part de logiciels de dessin des masques technologiques. La
course à la productivité et aux performances a eu pour conséquence d'accélérer les recherches
sur l'automatisation du processus de conception. Ainsi est apparu au début des années 80 le
concept de bibliothèque de cellules "pré-caractérisées" qui permet d'envisager la conception
de circuits intégrés en assemblant automatiquement des briques "pré- fabriquées"
correspondant à des fonctions bien définies.
« back end » qui permettent la réalisation des étapes physiques de dessin des masques
technologiques.
- niveau "électrique" pour lequel le fonctionnement de chaque transistor est décrit mais qui
est limité à des circuits de quelques centaines de transistors,
- niveau "logique" pour lequel on ne décrit que le comportement des portes élémentaires (et
non pas des transistors qui les composent), ce qui permet de traiter quelques dizaines de
milliers de portes ,
Les approches de réalisation sont nombreuses (Figure 2.1). Les différentes catégories
de circuits intégrés peuvent être classifiées en trois catégories : standard, semi-spécifique ou
spécifique. On peut compléter cette classification par les technologies de réalisation de
circuits hybrides (« Multi Chip Module, MCM »,..etc.), ou de microsystèmes (assemblage
d’un ASIC et d’un capteur, mécanique ou chimique par exemple, sur un même substrat).
- les circuits semi-spécifiques, pour lesquels une partie ou l’ensemble des étapes de
fabrication ont été réalisées avant la conception,
- les circuits spécifiques, pour lesquels l’ensemble des étapes de fabrication seront réalisées
après la conception.
- les circuits programmables – qui pourraient être aussi classés en catégorie standard -, où
l’ensemble des étapes de fabrication sont réalisées par le fabricant. Le concepteur fera lui
même selon ses besoins la personnalisation du circuit, de manière réversible ou irréversible
suivant les technologies, à partir d’outils spécifiques (logiciels, programmateur). Ils
constituent une solution adaptée aux développement de prototypes, aux petites et moyennes
séries d'équipements. Ils ont pour avantage d’être disponibles avant la conception, et pour
inconvénients des performances en densité d’intégration et en vitesse limitées par leurs
architectures et leurs technologies, ainsi que des prix unitaires élevés pour des grandes séries
d’équipement (surface de silicium importante par rapport à des circuits spécifiques).
- les circuits prédiffusés (« gate array »), où les premières étapes de fabrication sont
réalisées, préalablement à la conception. L’utilisateur va personnaliser une matrice standard
caractérisée par un nombre de transistors et de plots d’entrée/sortie limité, en concevant les
masques finaux de fabrication (contacts, métallisations) de manière automatique à l’aide
d’une bibliothèque de cellules. Les réseaux de transistors vont être ainsi programmés et
interconnectés par les niveaux de métallisation. Les étapes finales de fabrication de la puce et
son encapsulation seront ensuite réalisées par le fabricant, dans des délais réduits par rapport à
un cycle de fabrication complet. La topologie de ces circuits (Figure 2.2) correspond à des
bandes de cellules séparées par des canaux de routage figés, ou à des réseaux de transistors
(« sea of gates ») qui permettent une meilleure densité d’intégration en optimisant les zones
de routage des interconnexions à réaliser. Les limitations de cette approche sont liées au
manque de flexibilité (par rapport à l’approche « spécifique » présentée ci-dessous) puisque la
topologie (nombre de portes, plots) est figée. Les densités d’intégration obtenues sont - à
technologie équivalente - meilleures que pour les circuits programmables.
- les circuits sur mesure (« custom ou full custom ») lorsque toutes les étapes de conception
électriques et topologiques (layout) sont réalisées. Chaque élément actif du circuit est
optimisé pour réaliser la meilleure performance fonctionnelle et électrique et réduire la
surface du silicium. Ces circuits sont analogiques ou numériques.
2.3 Comparaisons
Comme l’illustre la Figure 2.5, les critères de choix entre ces solutions vont dépendre de
paramètres techniques (vitesse, puissance,…) et é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. Par exemple, les prototypes puis les
premières séries d’un système électronique numérique peuvent être réalisées avec des circuits
programmables, puis par des circuits pré-caractérisés (ou sur mesure) pour une production à
fort volume.
Quelque soit l’approche utilisée les circuits sont fabriqués par un nombre limité de
fabricants de semiconducteurs (« fondeurs de silicium »), dans un contexte industriel où les
investissements coûteux doivent être rentabilisés sur des périodes courtes (2-3 ans) compte
tenu de l’évolution rapide des technologies CMOS (loi de Moore). En conséquence, l’accès à
une fabrication spécifique ou semi-spécifique est aujourd’hui très coûteux et se limite à des
marchés à fort volume (télécommunications, multimédia, ..etc). Pour les circuits semi-
spécifiques, le marché des circuits pré-diffusés est en repli compte tenu des coûts et des
performances offertes par les circuits programmables (capacités d’intégration de plus d’un
million de portes logiques aujourd’hui). Pour les circuits spécifiques, l’intégration sur mesure
ne se justifie plus économiquement compte tenu des délais de conception (à comparer aux
cycles de fabrication de nouveaux produits qui sont de plus en plus court) à l’exception de
certains cas ou on peut envisager la conception d’un bloc de circuit sur mesure pour des
questions de performance (analogique par exemple).
3.1 Principes
- les circuits élémentaires de type PLD (Programmable Logis Device), de faible complexité
et à architecture régulière (un plan « ET » pour construire les monômes, suivi par un plan
« OU » pour réaliser les fonctions logiques (Figure 3.1).
- les circuits de type CPLD (« Complex Programmable Logic Device »), aujourd’hui
réalisés en technologies MOS, dont les architectures sont basées sur un assemblage de
structures régulières de type PLD. C’est dans cette catégorie qu’on trouve notamment les
EPLD (Erasable Programmable Logic Device), caractérisés par l’utilisation d’un procédé
MOS particulier décrit dans la Figure 3.2 (transistor MOS à double grille, une des grilles
« flottante » permettant de rendre le transistor passant ou bloqué lors de la
programmation, l’effacement se faisant de manière électrique ou par l’utilisation d’un
rayonnement ultraviolet pour décharger la grille flottante).
- les FPGA (« Field Programmable Gate Array »), dont l’architecture correspond à une
matrice de blocs logiques séparés par des réseaux d’interconnexion. On distinguera les
FPGA non reprogrammables (technologies de type antifusible, offrant les meilleures
performances en termes de densité d’intégration et de vitesse), et les FPGA
reprogammables (technologies de type SRAM par exemple).
Les circuits FPGA-SRAM, introduits à la fin des années 80, offrent des spécificités
particulières (Figure 3.3) : le contenu des mémoires SRAM, est automatiquement téléchargé à
la mise sous tension, à partir d’une mémoire externe. La reconfiguration peut se faire ainsi
pendant son fonctionnement en utilisant plusieurs mémoires externes permettant d’adapter au
mieux l’architecture du circuit. L’utilisation d’une technologie CMOS standard (pas d’étapes
de fabrication supplémentaires spécifiques) permet d’optimiser les coûts de fabrication et de
prendre en compte les évolutions rapides de ces procédés. L’architecture de ces circuits est
présentée dans la Figure 3.4 : un plan de mémoire de configuration est associé à un plan de
calcul constitué par des CLBs (Blocs Logiques Configurables). Le fonctionnement de ces
circuits se fait à la mise sous tension en 2 phases : une phase de configuration suivie par un
phase de fonctionnement (Figures 3.5 et 3.6). Chaque CLB est construit à partir d’un ou de
plusieurs générateurs de fonction (LUT, pour « Look Up Table »). Un LUT correspond à un
arbre de multiplexeurs connecté à des points mémoires S-RAM (Figure 3.7, où l’on notera
que toute fonction logique peut être réalisée avec des multiplexeurs).
3.2 Conception
3.3 Applications
3.4 Evolutions
intellectuelle (IP) sont soit câblé sur le silicium, soit synthétisé » (à partir d’un modèle décrit
en langage VHDL par exemple). L’utilisation de blocs de propriété intellectuelle IP, pour la
conception de circuits programmables, sera dans l’avenir de plus en plus fréquente. La
logique «câblée » sera conçue autour de cœurs de logique programmée (micro-contrôleurs
par exemple) dans un même circuit programmable : des logiciels enfouis ou embarqués seront
développés.
Les possibilités offertes par les circuits programmables (FPGA-SRAM) permettent par
ailleurs de mettre en œuvre pour certaines applications le concept de prototypage (ou
maquette) pour la vérification fonctionnelle de systèmes sur puce, qui sera décrit par la suite
au paragraphe 5.
4) METHODOLOGIES DE CONCEPTION
4.1 Spécification
La Figure 4.1 décrit le flot général de conception d’un circuit intégré. Un circuit, du
plus simple au plus complexe, doit être réalisé conformément à son "cahier des charges" pour
être utilisable : il s’agit de la phase la plus critique, car elle déterminera tous les modes de
fonctionnement du circuit qui serviront en particulier à établir ultérieurement les protocoles de
test en production du circuit. Il est indispensable de spécifier à ce niveau les contraintes
techniques (performances électriques recherchées en vitesse et consommation, description du
fonctionnement et identification de fonctions spécifiques éventuelles –notamment analogiques
-, type de boîtier,...etc.) et économiques (délais de conception et de fabrication des prototypes,
volume de pièces prévus, moyens humains et logiciels,…etc.). L’analyse de ce document,
conduira à un choix de technologie, de fabricant, et de type de circuit. La spécification d’une
partie ou d’un système se fait de plus en plus fréquemment au moyen de langages (C/C ++,
VHDL,..etc.) : cela permettra dans l’avenir de mettre en place des techniques de vérification
(preuve formelle par exemple pour comparer divers niveaux d’abstraction.), de simulation et
de synthèse avant de figer l’architecture finale du circuit.
Nous nous placerons dans le cas particulier des circuits numériques CMOS conçus à
l’aide de bibliothèque de cellules, c’est à dire dans le cas des circuits pré-caractérisés, pré-
diffusés, ou les circuits programmables complexes (ou la plupart des concepts développés
dans cette partie s’applique à la conception de ces circuits). Une bibliothèque de cellules est
en général constituée de cellules logiques élémentaires (à une même fonction logique de base
peut correspondre plusieurs cellules, chacune offrant un compromis vitesse, surface,
puissance, capacité d’entrée, différent), de cellules paramétrables (mémoire, fonctions
arithmétiques,…etc.), plots, macro-cellules logicielles, ..etc. On peut compléter ces briques de
base par des cellules spécifiques à une application, ou des cellules en provenance de
fournisseurs spécialisés (composants virtuels).
La Figure 4.2, résume les étapes d’élaboration d’une bibliothèque de cellules par le
fondeur. La connaissance de ce processus de conception et de caractérisation électrique est
indispensable pour comprendre les limitations de cette approche (Figure 4.3) : la
précaractérisation des cellules doit prendre en compte les fluctuations statistiques du procédé
de fabrication, les fluctuations des conditions d’utilisation du circuit en température et en
« Circuits et systèmes intégrés micro -électroniques: technologies, conception »
- 12 -
tension d’alimentation, et pour l’évaluation des délai, les conditions de charge électriques
appliquées sur les sorties des cellules. Compte tenu de ces éléments les modèles de délais des
portes logiques seront spécifiés avec des intervalles (min, typ, max).
- L’étape « Front end » consiste à traduire la spécification en une description sous forme de
schéma logique (« netlist »), de manière manuelle, ou automatique pour les circuits
complexes. La synthèse correspond à la génération, le traitement et l’optimisation de
descriptions intermédiaires à différents niveaux d’abstraction. Le langage VHDL
(comportemental et structurel), initialement développé pour la modélisation et la
simulation, est également utilisé pour la description comportementale (parfois issu d'une
description à un plus haut niveau d'abstraction en langage C), ou RTL (transfert de
registres) d'une architecture logique pour la synthèse automatique [cao]. On distinguera 2
niveaux de synthèse :
métallisation. La figures 4.6, illustre le principe d’un algorithme de routage de canal. Dans la
pratique, les phases de placement/routage sont en général entièrement automatisées.
Le dossier de fabrication d’un ASIC sera composé des éléments suivants : fichier
contenant la description du dessin des masques, fichier contenant les stimuli (ou vecteurs de
test), schéma d’encapsulation dans le boîtier sélectionné, spécifications électriques,…etc. La
responsabilité du fondeur, consistera à fabriquer un lot de prototypes dont le fonctionnement
sera conforme aux simulations « post layout » validées par le concepteur (fichier de test).
Le test électrique du circuit s’effectue lors de sa fabrication (test sous pointes des
plaquettes de silicium), et après son encapsulation. Les tests pratiqués sont des tests
fonctionnels, paramétriques (tensions, courants,..) et dynamique (vitesse). Ils ont pour objectif
d’éliminer les circuits défectueux en détectant et en localisant les éventuels défauts de
fabrication à partir des séquences de test prédéfinies. Le problème du test doit être considéré
lors de la conception afin de détecter le plus grand nombre de défauts potentiel dans un temps
de test minimum (pour optimiser le coût du circuit). Il peut même être partiellement ou
totalement assumé par des modules intégrés dans le circuit (concept de test intégré, « Bist »).
4.4 Perspectives
- une diminution des longueurs de grille des transistors, ce qui conduit à une réduction
relative des délais des portes logiques,
- une augmentation du nombre et de la longueur des lignes d’interconnections, et une
réduction de leurs dimensions, ce qui conduit à une augmentation relative du délai des
lignes.
Les recherches sur l’évolution des méthodes et des outils de conception se font
actuellement sur deux niveaux :
de systèmes complexes, conduit ainsi à prendre en compte les effets physiques liés aux effets
physiques concernant les portes logiques et les interconnections mentionnés ci dessus. Ces
effets ont un impact sur la modélisation temporelle des portes logiques et des interconnexions,
sur l’extraction des parasites (R,C, L) des interconnexions, ainsi que sur les techniques de
placement et de routage des cellules : les étapes de synthèse logique ne peuvent plus être à ce
niveau découplées des étapes de synthèse physique.
5.1 Principes
L'évolution très rapide des technologies de fabrication de circuits intégrés sur silicium
permet déjà de réaliser des systèmes numériques complets intégrés sur une même puce: les
SOC (pour System On Chip). Les prévisions d'évolution des technologies faites par la SIA
montrent que le nombre de transistors par circuit va être multiplié par un facteur 50 dans les
10 prochaines années (Figure 5.1). En 1998, un microprocesseur était composé d'environ 10
millions de transistors. En 2008, un circuit de référence équivalent pourra être composé de
près de 500 millions de transistors. Devant ces possibilités, les techniques de conception des
systèmes électroniques vont évoluer très rapidement vers l'intégration de systèmes de plus en
plus complexes avec des durées d'obsolescence de plus en plus courtes. Des blocs
fonctionnels déjà validés (y compris sur Silicium) appelés généralement IP (pour Intellectual
Property) seront de plus en plus utilisés (Figure 5.2). De ce fait, les outils classiques de
Conception Assistée par Ordinateur (CAO) dans les domaines de la microélectronique
devront évoluer en prenant de plus en plus en compte l'aspect système et le recours au
prototypage à des fins de validation. Les classiques bibliothèques utilisées pour la conception
des Circuits Intégrés pour Applications Spécifiques (ASICs) seront complétées, voire
remplacées, par des bases de données de composants virtuels dont la fonctionnalité pourra
correspondre à un processeur ou même à un ordinateur complet avec sa mémoire et ses
entrées/sorties. La Figure 5.3 décrit les analogies entre un « système sur carte » traditionnel et
un système sur puce.
- composant « soft » avec par exemple un modèle VHDL qui permet de synthétiser le
circuit à l’aide d’une bibliothèque de cellules précaractérisées).
La conception de SOC réutilise : à partir d'un cœur (ou de plusieurs), les concepteurs
adaptent le système à l'application visée. Des environnements de CAO permettent de vérifier
la fonctionnalité du système à ce niveau d'abstraction par des simulations de type flot de
données [cao] ces outils sont basés sur des Modèles Virtuels (codés en C). Ils permettent
également d'assembler et de co-simuler des Modèles Virtuels décrits dans différents langages
à des niveaux d'abstraction différents (Figure 5.4). Des modèles algorithmiques de
processeurs sont disponibles et permettent des simulations (notamment par l’intermédiaire
d’ISS, « ISS, Instructions Set Simulators »).
5.2 Vérification
On distingue plusieurs techniques de vérification, comme l’illustre les Figures 5.5, 5.6
et 5.7) :
- Les cartes spécifiques, que chacun peut développer, mais qui sont par construction figées
pour un type d’application donné. Notons, les cartes de prototypage de faible coût,
vendues par les fournisseurs de circuits programmables (FPGA, processeurs) ou de
composants virtuels (processeur Arm par exemple) : ces environnements permettant de
développer des systèmes utilisant ces composants.
Ces approches sont comparées dans les Figures 5.6 et 5.7. L'intérêt supplémentaire
des machines de prototypage réside dans la possibilité de connexion physique du prototype au
système englobant. Leur prix est toutefois un frein à leur dissémination. De plus, compte tenu
de l’évolution rapide des technologies d’intégration de leurs composants, la durée de vie de
ces machines est très courte.
6) CONCLUSION
- matériel spécifique : réalisations basées sur la conception de systèmes sur puce (SOC)
spécifiques, en utilisant des composants virtuels (IP). Cette technique permet d’obtenir les
meilleures performances techniques (vitesse, puissance, surface), mais compte tenu des
coûts (moyens humains, logiciels, coûts des prototypes,..etc) elle est réservée à des
fabrications en grandes séries.
La figure 6.3 résume l’architecture d’un circuit intégré spécifique dans les prochaines
années :
REFERENCES
CAO
[1] : http://www.cadence.com
[2] : http://www.synopsys.com
[3] : http://www.mentor.com
[4] : http://www.coware.com
Prototypage, Emulation
[1] : http://www.quickturn.com
[2] : http://www.aptix.com
[3] “Reuse methodology manual for system on chip designs”, M. Keating, P. Bricaud, Kluwer
[4] « Surviving the SOC revolution, a guide to platform based design », Chang & all, Kluwer
Circuits programmables
[1] http://www.xilinx.com
[2] http://www.altera.com
Composants virtuels
[1] : http://www.arm.com
[2] : http://www.mips.com
[3] : http://www.dolphin.fr
[4] : http://www.design-reuse.com
Fabricants de semiconducteurs
[1] : http://www.sitelesc.com
[2] : http://www.st.com
SIA « roadmap »
[1] : http://www.semichips.com
http://www.itrs.net/ntrs/publntrs.nsf
Formation en microélectronqiue
[1] : http://www.cnfm.fr
Remerciements : l’auteur tient à remercier P. Hesto, Professeur à l’université d’Orsay, pour son aide dans la
rédaction de la partie relative aux procédés de fabrication des circuits intégrés, ainsi que ses collègues de
l’Université Montpellier 2 (ISIM) G. Cambon et L. Torres.
ANNEXE 1
Technologie CMOS
La figure A1, montre plusieurs vues du transistor MOS (Métal Oxyde Semi-
conducteur) : une vue dans l’espace (a), une vue en coupe (b) et une vue de dessus (c). Les
concepteurs utilisent la vue de dessus pour dessiner les masques technologiques de
fabrication. On distingue 2 paramètres géométriques du transistor : sa largeur W et sa
longueur L. La grille était autrefois réalisée en métal (d’où le nom MOS). Elle est
actuellement en polysilicium (silicium polycristallin fortement dopé).
La conductance entre les zones de drain et de source est modulée par la tension
appliquée sur al grille, laquelle engendre un champ électrique qui module la quantité de
porteurs dans le canal (effet de champ). Les circuits logiques MOS ont une longueur de grille
minimum pour réduire le temps de transit des porteurs dans le canal, c’est à dire augmenter la
vitesse. Une modification de la largeur W du transistor aura pour conséquence de modifier le
courant et la capacité de grille du transistor.
La figure A4, donne les schémas logiques et électriques des portes “inverseur”,
“Nand2”, “Nor2“ ainsi que le schéma d’un point mémoire (2 inverseurs rebouclés
commandés par 2 transistors fonctionnant en mode opposé pour écrire et pour lire).
- Figure 1.1 : Les masques technologiques utilisés lors de la fabrication du circuit, sont
dessinés par le concepteur du circuit à l’aide de logiciels de CAO.
- Figure 1.2 : Le concepteur du circuit a pour objectif de dessiner les masques technologiques
conformément à la spécification initiale en respectant des règles électriques et topologiques.
Le fabricant de circuit va fabriquer les puces, les tester et les encapsuler dans des boîtiers. Le
coût du circuit dépendra de la surface de silicium occupée.
- Figure 1.4 : Autour d’un environnement logiciel commun, les outils de CAO peuvent être
répartis dans une catégorie « Front end » (étapes de passage d’une spécification à une
description structurelle) et dans une catégorie « back end » (étapes physiques :plan de masse,
placement, routage..etc).
- Figure 2.3 : une bibliothèque est constituée de cellules et de plots placés à la périphérie du
circuit (pour assurer la liaison entre la puce et le boîtier). Les cellules ont des longueurs
variables et une largeur fixe. Des peignes d’alimentation réguliers (réalisés à l’aide des
niveaux de métallisation) permettent d’assurer la polarisation des cellules. Les bandes de
cellules sont plus ou moins espacées en fonction de la densité des interconnexions à réaliser.
- Figure 3.1 : un rond entre une ligne et une colonne signifie qu’il y a liaison électrique.
- Figure 3.6 : lors de la phase de configuration, toutes les cellules mémoires du FPGA sont
adressées via l’entrée de configuration. En mode normal, le circuit fonctionne au travers de
ses plots d’entrées et de sorties.
- Figure 3.8 : Les outils de CAO « standard » permettent de réaliser la conception pour tout
type de circuit programmable
- Figure 3.9b : le circuit programmable FPGA permet d’exploiter le parallélisme, alors que le
processeur (DSP ou micro-contrôleur) exécutera les instructions de manière séquentielle.
- Figure 3.10 : la reconfiguration partielle a pour objectif de modifier une partie du circuit
programmable sans interrompre son fonctionnement (reconfiguration dynamique)
- Figure 4.6 : le canal de routage (a) doit contenir l’ensemble des connexions reliant les
broches ayant un numéro identique. Il y a dans cet exemple 9 connexions à assurer (b), soit 9
pistes de métal horizontales. En réarrangeant ces connexions on peut optimiser le nombre de
pistes (c), ce qui permet de minimiser la surface du canal de routage.
- Figure 5.1 : on devrait atteindre 1 milliard de transistors sur une puce en 2010 !
- Figure 5.8b : le concepteur élabore un prototype virtuel en construisant à partir de blocs IPs,
et de bibliothèques logicielles un modèle fonctionnel du système. La co- vérification consiste à
comparer un modèle fonctionnel avec un modèle cablé sur une plateforme de prototypage.
Puits p
Masque de puits
Substrat n
Masque de polysilicium
Substrat n
Masque de diffusion p
Substrat n
Masque de diffusion n
Substrat n
Masque de contact
Substrat n
Masque de métal
Substrat n
Encapsulation
Fondeur
Test
FF / mm 2
Règles
CONCEPTION
ASIC
« Co-design »
Matériel/Logiciel
?
Niveau
Système
Niveau
Synthèse
CIRCUIT
SPECIFICATIONS architecturale
architecture
APPLICATION
M
Niveau
PROCESSEUR
E
M
M structure
E ASIC
M
ASIC
Niveau Synthèse
Logique logique
Niveau
Physique Synthèse
FABRICATION
physique
EXTRACTIONS
TEST VERIFICATIONS
simulation de fautes
testabilité
AUTRES
ENVIRONNEMENTS
VERIFICATION
AUTRES OUTILS
?? CIRCUITS
CIRCUITS STANDARDS
STANDARDS
?? ASIC
ASIC SEMI-SPECIFIQUES
SEMI-SPECIFIQUES
- - CIRCUITS
CIRCUITSPROGRAMMABLES
PROGRAMMABLES(CPLD,
(CPLD,EPLD,
EPLD,FPGA,...)
FPGA,...)
- - MATRICES PREDIFFUSEES
MATRICES PREDIFFUSEES (“Gate array”,”seaofofgates”)
(“Gate array”,”sea gates”)
?? ASIC
ASIC SPECIFIQUES
SPECIFIQUES
- - CIRCUITS
CIRCUITSSUR
SURMESURE
MESURE(“full custom”)
(“full custom”)
- - CIRCUITS
CIRCUITSPRE-CARACTERISES
PRE-CARACTERISES(“cell
(“cellbased”,”standard
based ”,”standardcell”)
cell”)
- - SYSTEMES
SYSTEMES SUR PUCE, (SOC, “System on
SUR PUCE, (SOC, “System onaachip”)
chip”)construits
construitspar
par
assemblage
assemblagede
decomposants
composants««virtuels
virtuels»»(IP)
(IP)
Plots
rangées
étage
(a) Avant conception colonnes
Bibliothèque :
DFF E
NAND 3
S
CAO
INV +
LIBRAIRIE
............. E/S
XXX Vcc
CELLULES PLOTS
Vss Vcc
CANAUX DE ROUTAGE
DE LARGEUR VARIABLE
Cellules
canaux de routage
TOPOLOGIE EN BANDES
macrocellules
Plots Cellules
élémentaires
100
Circuits programmables
Prédiffusés
Pre-caractérisés
10
1
1 10 102 10 3 104 10 5 10 6 10 7
Volume de production
Circuits Programmables
Circuits Prédiffusés Temps de Complexité et
conception niveau
Circuits Pre-caractérisés d’intégration
Circuits sur mesure
ABC
AB
BC
AC
C B A
F0 F1 F2
F0 ? ABC
F1 ? ABC ? A B
F2 ? ABC ? BC ? AC
FPGA
EPROM1
EPROM
FPGA
FPGA-SRAM FPGA
EPROM2
EPROM3
LUT
CLB S
D Q
CLB = BLOC LOGIQUE CONFIGURABLE (“ Configurable Logic Block”), construit à partir d’un
générateur de fonctions « LUT : Look Up Table »). Réalisation de blocs combinatoires ou
séquentiels
Cellule
d’interconnexion
Cellule locale
Logique
CLB
Cellule
Cellule d’interconnexion
Mémoire globale
SRAM
CONF
CONF
Gnd
Gnd
? (b) Phase de configuration ? (c) Phase d’opération
B
C B G=0
Exemples:
Si C=0, alors S=A S=X.Y si C= X, A =0, B = Y Transistor NMOS = commutateur
Si C=1, alors S=B S=X+Y si C= !X, A =1, B = X
C
B
A B C Z 1
0 A
0 0 0 1
0 0 1 0 LUT 3 1
Z
0 1 0 1 1
0 1 1 1
1 0 0 1 1
1 0 1 1
1 1 0 1 1
1 1 1 0 1
0
« Look Up Table »
SPECIFICATION VHDL
CAO “STANDARD”
circuit
(synthése logique,...etc.)
CAO SPECIFIQUE FPGA
EDITEUR DE SCHEMA ou
DESCRIPTION (machines d’état,
LIBRAIRIE équations booléennes,..) simulation
DE CELLULES
- spécification
- schémas symboles
- modèles simulation “compilateur”
synthése ...
... mapping
Vérifications
PROGRAMMATION
(fichier ----> programmateur) TEST
Figure 3.9a
3.9a :: Architecture d ’un filtre numérique FIR
?Architecture :
Figure 3.9b :
Figure 3.9b : Architectures d’un filtre FIR
DSP FPGA
1 1 2 3 4 N
Add
Add
E/S
µC
Bloc FPGA
Niveau
Niveausystème
système
Codesign
Simulation Niveau
Niveaucomportemental
comportemental
Synthèse architecturale
Niveau
NiveauRTL
RTL
Comparaison Synthèse Logique
Modification
Niveau Test
Niveaulogique
logique
Synthèse physique
Vérification
Niveau
Niveauphysique
physique
Simulation
post-layout layout TEST
TECHNOLOGIE DESCRIPTION-SIMULATION:
- ARCHITECTURE,
- MODELES ELECTRIQUES (SPICE) - LOGIQUE
- ELECTRIQUE
- REGLES DE DESSIN
DESSIN DES MASQUES
FABRICATION
CARACTERISATION :
SIMULATIONS SPICE ( min,typ,max)
SPECIFICATION
TYP
V ss MAX
CONSEQUENCE :
E
E S
MIN S
S
MAX
T
CELLULES PRE-CARACTERISEES :
LISTE DES CELLULES UTILISEES REPRESENTATION PHYSIQUE - rectangulaires de hauteur fixe
ET INTERCONNEXIONS (netlist) DES CELLULES - E/S positionnés sur une grille
- connexions sur deux côtés ou dessus
TOPOLOGIE EN BANDES
= canal de routage
5 5 5
8 8 8
1 1
2 2 2
4 4
MISE EN ORDRE
(b) 6 6
A PARTIR DE
3 3
L’EXTREMITE
GAUCHE
7 7 7
9 9
8 8 8 6 6 9 9
5 5 5 3 3
ROUTAGE
(c) 1 1 4 4
FINAL
2 2 2 7 7 7
SYNTHESE
VSS
BIBLIOTHEQUE
capacitance”),
- Diaphonie (capacité latérale entre deux Métal 1 Métal 1
CONCEPTION : réutilisation 20 - 30 % 70 - 80 %
ASIC SOC
RAM/
ROM
RAM/
ROM µC
Blocs «IP »
ou composants virtuels
… …
RENOUVELLEMENT ACCELERE DES GAMMES DE PRODUITS (« time to market »).
µP
Memoire
M
E ASIC ASIC
µP M
M
E ASIC
M
Spécifications
S t a r t s e a r c h _ m o d e = 1
[ D e t = = 0 ] /
[ l o cs ke =a =r A
0c ]hc _q mu oi dr ee = 1
T r a c k
s[ eD ae rt c= h = _ 1 m ] o/ d e = 2
Ingénieur Asic
Fonderie Calculateur Signal
L’environnement de conception et de simulation permet de constru ire des systèmes comme ensembles de
fonctionnalités décrites par des modèles hétérogènes (algorithmiques, logiciels ou matériels).
FPGA FPGA
FP FP FP
GA GA GA
FP FP FP
GA GA GA
FP FP FP
GA GA GA
Coût et
maintenance Faible Coût
élevés Flexibilité
Architecture figée
Temps de
Compilation
Minute
Simulation
Accélérateur de
Heure
Simulation
Prototypage
Jour Emulation
Carte spécifique
Semaine
Mois SOC
Temps
Année Mois Semaine Jour Heure Minute
d’exécution
mis
Eva
Fac poin
per
Vit
Fle
e au
lua ces
for
ilité
xib
Coû
ess
ma
tio
e
de
ilité
nd
t
n
t
Simulation
Emulation
Prototypage
+ Flexibilité,
Specification du système + Portabilité
Ré-utilisation Librairies
(blocs IP) logicielles
- Performances
Partitionnement
Partitionnement
Matériel Logiciel
Co-Synthese
Co-Synthese
D/A
Compilation Logique
P=>S
Synthèse S=>P
RAM ROM
FPGA FPGA ASIC
µP µP
ASIC ASIC ASIC DSP
+ Performances DMA
+ Traitement du parallélisme mémoire mémoire Analog
Specs Software
IP’s Libraries
DF
Prototype virtuel :
Architecture • Haut niveau d’abstraction
Simulation
Models
• Flexibilité
HW SW
Prototype réel :
Synthesis • Architecture détaillée
Synthesis • Vitesse d’exécution
Prototype
System On
Silicon
?
? Années 70/80 : Conception ”Full Custom”
– Simulation : Spice
Logiciel Embarqué ?
µC
Aujourd’hui DSP REUTILISATION DE
COMPOSANTS “VIRTUELS”
FPGA FPGA ASIC
µP
Demain
ASIC ASIC ASIC
• Programmable
µP
FPGA FPGA FPGA
mémoire mémoire
• Conception faible coût
Images
µC Blocs
Voix µC Reconfigurables
µC
……. µC
Données DSP µC
µC
reconfigurables
Connexions
www DSP M
DSP
DSP E Logiciel
M
IP
IP embarqué
Services de IP
communications
multi-standards
ANNEXE
L
Drain
Grille
W
Source
Vgs = 3 V ID ?
KPn W
?VGS ? VT ?2 ?1 ? ? VDS ?
2 L
Vds
0 5V
VT = tension de seuil
µ = mobilité • Bloquage : VGS ? VT
Cox = capacité de l’oxyde mince
par unité de surface
D
Entrée Sortie
D
Niveau Haut
Vdd G
S
A A N bloqué, P linéaire
Niveau Haut
B
B N saturé, P linéaire
C
C N saturé, P saturé
NMOS PMOS
Q
Point mémoire
A S A S A
S
B B
Vdd A B A
S
A B
S A
S
A B B A
A5 : Inverseur CMOS
(1) E S
E
VDD VSS
(2)
VDD VSS
E
(3)
S
N P
Représentation logique (1), électrique (2) et topologique (3) d’un inverseur CMOS
Vdd Gnd
métal
A
polysilicium
B Diffusion p
Diffusion n
S