Depuis les débuts de la micro-électronique dans les années 60, les densités d’intégration et la vitesse de fonctionnement des circuits intégrés ne cessent d’augmenter : la taille des transistors, la section minimale et l’espacement des interconnexions – c’est-à-dire les fils conducteurs reliant les transistors entre eux – sont de plus en plus faibles, pour des circuits de plus en plus complexes. Ces améliorations, qui doublent les performances des circuits pratiquement tous les deux ans, ont aussi pour conséquence d’amplifier les effets parasites dans la puce. Ainsi les temps de propagation d’un signal dans les lignes d’interconnexion deviennent critiques pour le fonctionnement des circuits : pour une technologie donnée, le retard dû aux interconnexions passe de cinq pour cent du retard total en 1988 à plus de cinquante pour cent en 2000. Les délais de propagation et couplages entre lignes proches risquent d’affecter non seulement les performances des circuits (vitesse, consommation), mais également leur fonctionnement. Ainsi par exemple les délais de propagation dans des longues lignes peuvent devenir critiques par rapport à la fréquence d’horloge, ou bien le passage d’un signal dans une ligne peut induire un signal non désiré dans une ligne voisine (phénomène de « crosstalk »). Tout ceci montre l’importance croissante d’une prédiction correcte de l’influence parasite des lignes d’interconnexion.
Une estimation courante du délai de propagation dans une ligne d’interconnexion est obtenue à partir du produit RC, de la résistance par la capacité de la ligne, par rapport au reste du circuit. Deux approches complémentaires permettent alors de contrôler les effets parasites. On peut d’une part étudier des matériaux particuliers afin de les réduire, pour une géométrie donnée. Ou bien d’autre part améliorer la conception des circuits en tentant d’optimiser les réseaux d’interconnexion. Dans les deux cas, il est important de pouvoir calculer les caractéristiques électriques R et C des interconnexions dans les circuits.
Le calcul des résistances est un calcul local à chaque conducteur, et n’est donc pas très coûteux en mémoire et en temps de calcul. Par contre, le calcul de la matrice des capacités nécessite autant de simulations que de conducteurs, et pour chaque simulation on doit a priori considérer le couplage de tous les conducteurs. Or dans un circuit intégré actuel, il peut y avoir, regroupés sur une surface de l’ordre du centimètre carré, et sur une hauteur totale de quelques microns, plus d’un kilomètre d’interconnexions, c’est-à-dire de « fils » conducteurs enchevêtrés. Ce calcul est donc très coûteux à la fois en temps de calcul et en place mémoire requise, si bien qu’à ce jour, les logiciels ne sont capables de simuler précisément que de petites portions de circuits, de l’ordre au maximum d’une centaine de microns de côté. L’objectif de la thèse est de proposer un algorithme précis, le plus rapide et le moins coûteux en mémoire possible.
MODELISATION DES CAPACITES D’INTERCONNEXIONS
LES INTERCONNEXIONS – QUELQUES ORDRES DE GRANDEUR
Un circuit intégré est schématiquement constitué d’un ensemble de transistors disposés sur une plaque de silicium, isolés électriquement par des matériaux diélectriques, et reliés entre eux par des « fils » conducteurs appelés interconnexions, selon un schéma défini par le concepteur. Pour augmenter les possibilités de croisement, les interconnexions sont disposées sur plusieurs couches horizontales – cinq ou six actuellement pour les circuits standards – et reliées entre 2 couches successives par des contacts métalliques appelés vias. L’espace entre ces conducteurs est rempli par des diélectriques qu’on suppose homogènes par régions. La complexité de circuits complets est très importante : un microprocesseur réalisé aujourd’hui en technologie 0.18 mm , possède près de 21 millions de transistors reliés par environ 1.5 km d’interconnexions réparties sur 6 niveaux.
En pratique, chaque niveau d’interconnexions est réalisé par le transfert sur la plaque, de motifs d’un masque représentant le plan 2D de la couche vue du dessus. Ainsi, les circuits sont des structures stratifiées, où chaque couche est quasiment homogène en hauteur .
MODELE MATHEMATIQUE
Une approximation classique pour le calcul des capacités des interconnexions (voir par exemple [Cr 98]), est de supposer les phénomènes statiques, et les milieux parfaits. Les interconnexions sont représentées par des conducteurs parfaits, entourés de matériaux diélectriques parfaits, et le plus bas niveau, où se trouvent les transistors, est modélisé par un plan de masse conducteur.
L’EXISTANT
Cette section est consacrée à l’inventaire des méthodes faisant à notre connaissance l’objet d’un programme dédié au calcul des capacités. Cependant, la plupart de ces programmes étant des produits commercialisés, il ne nous a été possible de tester que certains d’entre eux, et il nous est difficile de présenter des comparaisons précises et objectives. Nous décrivons ainsi les principales caractéristiques de chaque méthode, et si possible une idée de leurs performances. A cause de la complexité des circuits, il n’est pour l’instant pas possible de calculer de façon précise les capacités parasites sur un circuit entier, ce qui serait l’idéal. Deux types de méthodes sont alors explorées : des méthodes pour calculer de façon très approchée les capacités sur un circuit entier, et des méthodes pour calculer de façon plus précise, et si possible rapidement, les capacités sur des portions de circuits.
Des programmes dédiés au calcul des capacités sur des circuits complets existent. Ils sont tous basés sur l’idée d’isoler des zones d’influence autour de chaque conducteur, en dehors desquelles le potentiel dépend très peu du potentiel et de la charge de ce conducteur. Sur chaque zone, les capacités partielles sont alors calculées, soit par simulation numérique, soit en reconnaissant des cellules élémentaires pour lesquelles des modèles analytiques approchés sont programmés. La précision des calculs dépend alors de la façon dont sont déterminées ces zones d’influence et de leur taille, ainsi que de la précision des calculs sur chacune de ces zones. Ces programmes permettent à notre connaissance de déterminer les capacités avec une erreur relative de plusieurs dizièmes sur les plus grandes capacités, en environ une journée de calcul sur une station unix.
Des publications proposent des méthodes découpant également le circuit en cellules élémentaires, et tirant parti de l’approximation de circuits intégrés sous la forme de couches homogènes en hauteur. Dans [HoSuZhJiSoDa 96] par exemple, une méthode de réduction de dimension est proposée : en supposant que sur chaque couche, les matériaux sont homogènes en hauteur, le problème 3D se ramène à un ensemble de problèmes 2D liés. Cela permet des résolutions simplifiées pour chaque problème 2D, et même des résolutions analytiques sur certaines couches, par exemple celles où il y a uniquement du diélectrique. Dans [ZhJiHo 97], pour un même découpage du circuit, une méthode de décomposition en sous-domaines permet des résolutions indépendantes sur chaque couche. Il n’y a pas à notre connaissance de logiciel commercial permettant de connaître les performances de ce ces méthodes. Cependant, il semble qu’elles se situent dans une classe de méthodes utilisant des découpages des circuits en cellules élémentaires, et donc peu précises si le lien entre deux structures voisines est fait de façon grossière.
Un autre ensemble de méthodes a pour but de calculer précisément les capacités non sur des circuits complets, mais sur des portions de circuits. Ces calculs pourront par exemple servir pour calibrer les modèles analytiques approchés utilisés dans les programmes traitant des circuits complets. Ou bien être couplés avec une décomposition en sous-domaines pour traiter de façon précise des portions de circuits plus grandes. Ou enfin pourront permettre d’évaluer l’impact sur les capacités parasites, de choix technologiques (matériaux, configurations géométriques, … ), en faisant des simulations précises sur des petites structures. Toutes ces utilisations nécessitent un grand nombre de simulations, le calcul sur une structure doit donc être le plus rapide possible.
Dans cet esprit, trois méthodes font l’objet de produits commerciaux reconnus, et sont présentées rapidement dans cette section : une méthode d’éléments finis 3D (logiciel Clever de Silvaco), une méthode basée sur des intégrales de surface ([NaWh 91], [NaKiWh 92], logiciel Fastcap du Massachusetts Institute of Technology par exemple), et une méthode de Monte-Carlo ([CoIv 92], logiciel Quickcap de Random Logics Corporation). Actuellement, ces logiciels sont au mieux capables de traiter avec une bonne précision (c’est-à-dire de quelques pour cents sur les capacités les plus grandes), sur des stations Unix, des circuits à plusieurs niveaux, pouvant atteindre environ 100 microns de côté.
|
Table des matières
INTRODUCTION
CHAPITRE I. PRESENTATION DU PROBLEME
1. Modélisation des capacités d’interconnexions
1.1. Les interconnexions – quelques ordres de grandeur
1.2. Modéle mathématique
1.2.1 Equations de l’électrostatique dans les milieux continus
1.2.2 Conditions aux limites pour les conducteurs parfaits
1.2.3 Définition de la matrice des capacités de N conducteurs
1.3. Problème à résoudre et notations
2. L’existant
2.1. Eléments finis
2.2. Intégrales de frontière
2.3. Algorithme stochastique
2.4. Conclusion
3. Choix d’une formulation domaines fictifs
3.1. Principe des méthodes de domaines fictifs pour le problème de Dirichlet
3.2. Une formulation domaines fictifs du calcul des capacités
3.2.1 Principe de la méthode
3.2.2 Introduction du système couplé
3.2.3 Obtention du potentiel et de la charge
CHAPITRE II. DISCRETISATION
1. Introduction
2. L’approximation (A-GPP) due à R. Glowinski, T.-W. Pan et J. Périaux
2.1. Espaces de discrétisation
2.1.1 Discrétisation du potentiel
2.1.2 Discrétisation de la charge
2.2. Problème discret
2.3. Résolution efficace du système linéaire
2.4. Résultats (un exemple) et conclusion
3. Enrichissement de l’approximation pour des obstacles conducteurs
3.1. Introduction
3.2. Exemple de la dimension 1
3.2.1 Problème continu en dimension 1
3.2.2 Approximation du problème mixte
3.2.2.1 Approximation (A-GPP)
3.2.2.2 Approximation (A-Capa)
3.3. Dimension 2 : approximation du potentiel à un ordre supérieur
3.3.1 Notations
3.3.2 Calcul approché du potentiel autour de la surface des conducteurs
3.3.2.1 Cas de surfaces des conducteurs quelconques
3.3.2.2 Cas d’un segment de surface orthogonal à la grille
3.3.3 Un nouvel espace de discrétisation, X h,h, pour le potentiel
3.3.4 Propriétés sur les fonctions supplémentaires Y k
3.3.5 Trace des fonctions de X h,h sur la surface des conducteurs
3.4. Extension à la dimension 3
3.5. Nouveau problème discret
3.6. Une autre écriture dans le cas de conducteurs quelconques
4. Résultats numériques en dimension 2
4.1. Introduction
4.2. Géométrie circulaire : comparaison avec la solution analytique
4.3. Géométrie rectangulaire
4.3.1 Cas où les surfaces coïncident avec la grille de volume
4.3.2 Cas où les surfaces ne coïncident pas avec la grille de volume
4.3.3 Comparaisons des cas 4.3.1 et 4.3.2
4.4. Importance d’une bonne prise en compte des coins
4.4.1 Charge surfacique locale pour une grille fixée
4.4.1.1 Développement en série autour des points singuliers
4.4.1.2 Résultats de simulation pour une grille fixée
4.4.2 Observations globales
4.5. Conclusion
5. Conclusion
CHAPITRE III. ANALYSE NUMERIQUE
1. Formulation continue
1.1. Rappel du problème continu et notations
1.1.1 Normes sur les espaces du potentiel et de la charge
1.1.2 Le problème de point selle
1.2. Problème continu : existence d’une solution unique
1.3. Régularité des solutions
1.4. Approximation
2. Approximation (A-GPP)
2.1. Problème discret
2.2. Existence et convergence de la solution discrète
2.2.1 Résultats généraux
2.2.2 Application à l’approximation (A-GPP)
2.3. Conclusion
3. Parallèle avec des méthodes existantes de stabilisation de problèmes mixtes
4. Approximation (A-Capa) pour des surfaces orthogonales à la grille
4.1. Problème discret
4.2. Notations et propriétés préliminaires
4.3. Vérification des conditions d’existence et unicité d’une solution
4.3.1 Continuité et coercivité de h,ha
4.3.2 Continuité de bh
4.3.3 Condition inf-sup
4.3.3.1 Condition inf-sup discrète : inversibilité du système
4.3.3.2 Condition inf-sup uniforme : convergence de l’approximation
4.4. Convergence de la solution approchée
4.4.1 Obtention d’une formule générale de majoration de l’erreur
4.4.2 Calcul de l’erreur de consistance
4.4.3 Calcul de l’erreur d’approximation
4.4.4 Convergence de la solution approchée
5. Conclusion
CHAPITRE IV. REALISATION NUMERIQUE
CONCLUSION
