Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… ·...

202
Université Catholique de Louvain - Faculté des Sciences Appliquées Laboratoire de Microélectronique (DICE) Thèse présentée par Richard Perdriau Ingénieur ESEO (France) en vue de l’obtention du titre de Docteur en Sciences Appliquées Spécialité : électronique Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS Soutenue publiquement le 25 mars 2004 devant le jury composé de : Mme Anne-Marie Trullemans-Anckaert (UCL-DICE) Promoteur M. Mohamed Ramdani (ESEO - Angers, France) Co-promoteur M. Denis Flandre (UCL-DICE) M. Jean-Pierre Raskin (UCL-EMIC) M. Yannick Hervé (PHASE - CNRS UPR292 - Illkirch, France) M. Jean-Didier Legat (Doyen FSA) Président

Transcript of Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… ·...

Page 1: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Université Catholique de Louvain - Faculté des Sciences AppliquéesLaboratoire de Microélectronique (DICE)

Thèseprésentée par

Richard PerdriauIngénieur ESEO (France)

en vue de l’obtention du titre deDocteur en Sciences Appliquées

Spécialité : électronique

Méthodologie de prédiction des niveaux d’émissionconduite dans les circuits intégrés, à l’aide de

VHDL-AMS

Soutenue publiquement le 25 mars 2004 devant le jury composé de :

Mme Anne-Marie Trullemans-Anckaert (UCL-DICE) PromoteurM. Mohamed Ramdani (ESEO - Angers, France) Co-promoteur

M. Denis Flandre (UCL-DICE)M. Jean-Pierre Raskin (UCL-EMIC)M. Yannick Hervé (PHASE - CNRS UPR292 - Illkirch, France)

M. Jean-Didier Legat (Doyen FSA) Président

Page 2: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

ii

A tous ceux qui m’ont répété tous les matins, au choix selon l’humeur du jour :– "Et alors, elle avance, ta thèse ?"– "Et ta thèse, quand est-ce que tu la soutiens ?"– "Alors, toujours pas finie cette thèse ?"

A tous ceux-là, je leur dis mer......ci !

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 3: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

iii

Résumé

Depuis de nombreuses années, la prise en compte des critères de compatibilité électro-magnétique (CEM) constitue une étape capitale dans la conception des systèmes électro-niques.Jusqu’à maintenant, seuls les circuits imprimés étaient concernés par ces règles. Cepen-dant, la diminution de la géométrie des transistors dans les circuits intégrés (90 nm àl’heure actuelle en production, 60 nm en recherche) rend désormais indispensable l’in-troduction de règles de conception orientée CEM à leur niveau. En effet, d’une partl’augmentation du nombre de commutations internes simultanées associée à des temps demontée de plus en plus faibles accroît l’amplitude et l’occupation spectrale des perturba-tions générées en interne, et d’autre part la réduction des tensions d’alimentation (0.9 V)agit directement sur la marge de bruit et par conséquent sur leur immunité vis à vis desperturbations extérieures.Il devient donc indispensable de prédire le comportement électromagnétique directementau niveau du silicium. Pour ce faire, un modèle de circuit intégré orienté CEM, appeléICEM (Integrated Circuit Electromagnetic Model), est en cours de définition et proposi-tion auprès de l’UTE (Union Technique de l’Electricité et de la communication, branchefrançaise de l’International Electrotechnical Commission). Il doit permettre à terme auxconcepteurs de circuits intégrés de fournir aux équipementiers une "boîte noire" représen-tant les perturbations générées par le circuit ainsi que son comportement en susceptibilité.Le modèle ICEM en émission inclut entre autres l’activité interne instantanée du circuitdue aux commutations. Afin de rendre ce modèle utilisable en termes de temps de si-mulation et de confidentialité, il est nécessaire de mettre en œuvre une méthodologie dereprésentation à haut niveau de cette activité instantanée.Parallèlement, l’avènement du langage VHDL-AMS ouvre des perspectives nouvelles pourla modélisation haut niveau de circuits dans les deux mondes analogique et numérique.Dans le cas de composants complexes comme les microcontrôleurs et leurs mémoires asso-ciées, VHDL-AMS s’impose donc naturellement comme le langage de référence pour notreétude.Dans un premier temps, les travaux effectués en CEM des composants et le langageVHDL-AMS sont présentés dans l’esprit de notre démarche. Après validation du modèleICEM sur un exemple industriel, une méthodologie globale de modélisation en VHDL-AMS orientée CEM de l’activité dynamique en courant des mémoires statiques (SRAMs)embarquées est proposée à titre d’exemple. Enfin, une extension de cette méthodologieau cas d’un cœur de microcontrôleur (avec modélisation de l’activité des entrées/sorties)est envisagée. Cette démarche sert de base à la proposition d’une méthodologie globalede prédiction, avant fonderie, des niveaux d’émission conduite dans les circuits intégrés.Les perspectives du travail réalisé couvrent le développement et la fourniture de propriétéintellectuelle pour le modèle ICEM (ICEM-IP).

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 4: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

iv

Mots-clés

Compatibilité électromagnétique, ICEM, VHDL-AMS, modélisation, simulation, mémoires.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 5: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

v

Abstract

For many years, electromagnetic compatibility (EMC) criteria have represented a cri-tical step to be taken into account in electronic system design.Until recently, these rules only concerned printed circuit boards (PCBs). However, tran-sistor geometry shrinking (production : 90 nm, research : 60 nm) in integrated circuits(ICs) triggers the development of EMC-oriented IC design rules : on one hand, an evergrowing number of simultaneous internal switchings combined with shorter and shorterrise times increases the amplitude and broadens the spectrum of generated internal per-turbations and, at the same time, power supply voltage reduction (0.9 V) influences theirnoise margin and consequently their immunity towards external perturbations.As a result, predicting electromagnetic behavior at silicon level becomes compulsory. Forthat purpose, an EMC-oriented IC model, called ICEM (Integrated Circuit Electromagne-tic Model), is being developed and proposed by the UTE (Union Technique de l’Electricitéet de la communication, French International Electrotechnical Commission branch). Thisshould allow integrated circuit designers to provide board manufacturers with a "blackbox" representing the perturbations generated by the IC as well as its immunity behavior.The ICEM emission model includes, among other things, the instantaneous internal acti-vity of the chip due to switchings. In order to enhance its usefulness in terms of simulationtimes and confidentiality, the development of a high-level methodology representing thisinternal activity becomes compulsory.In addition to that, the advent of the VHDL-AMS language opens new perspectives interms of mixed-signal, high-level modeling (in both analog and digital worlds). In the caseof complex ICs such as microcontrollers and memories, VHDL-AMS is thus becoming thereference language for our studies.First of all, and previous research in EMC for integrated circuits as well as the VHDL-AMSlanguage are introduced within the scope of our approach. After validating the ICEM mo-del in an industrial case study, a global EMC-oriented, high-level VHDL-AMS modelingmethodology of the dynamic current activity of embedded static memories (SRAMs) issuggested as an example. Finally, an extension of this methodology to a microcontrollercore (including input/output activity modelling) is proposed. This approach leads to theproposal of a global methodology for predicting conducted emission levels in integratedcircuits.The objectives of these research activities cover ICEM intellectual property (ICEM-IP)model development and supply.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 6: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

vi

Keywords

Electromagnetic compatibility, ICEM, VHDL-AMS, modeling, simulation, memories.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 7: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

vii

Remerciements

Je remercie tout d’abord ma directrice de thèse, Mme Anne-Marie Trullemans-Anckaert,pour la confiance qu’elle m’a accordée malgré le contexte de travail très particulier ; l’éloi-gnement géographique n’a pas toujours facilité les choses ...

Je souhaite ensuite remercier Mohamed Ramdani, mon collègue de travail, et Jean-LucLevant, d’ATMEL Nantes, pour les points de vue fructueux que nous avons pu échanger etla collaboration que nous avons pu mettre en place sur le projet DIVA et dans ce domainesomme toute assez récent de la CEM des circuits intégrés.

Que l’ESEO toute entière soit également remerciée, en particulier ses directeurs succes-sifs, MM. Victor Hamon et Jacky Charruault, pour m’avoir permis de préparer (et avoirfinancé) cette thèse en parallèle avec mes charges d’enseignant-chercheur.

Il ne faudrait pas oublier :– les équipes du laboratoire d’applications et de design d’ATMEL Nantes, en particu-

lier Eric Tinlot, Edouard Gautier et Abdel Bendraoui, pour avoir partagé avec moiles "secrets intimes" de leurs produits, sans lesquels je n’aurais jamais pu "bouclerla boucle"

– l’équipe DIVA : Claude Huet, Etienne Sicard, Amaury Soubeyran et tous ceux quej’ai bien involontairement oubliés ...

Et bien évidemment, je ne voudrais pas conclure sans une pensée toute spéciale pourma famille, en particulier mes parents et ma compagne Dominique qui m’ont "supporté"(dans tous les sens du terme !) tout au long de cette thèse.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 8: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

viii

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 9: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Table des matières

Introduction générale 1

I Etat de l’art 5

1 Problématique de la CEM des circuits intégrés 71.1 Généralités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.2 Emission conduite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.2.1 Intégrité de signal : les modèles IBIS et IMIC . . . . . . . . . . . . 81.2.2 Un modèle adapté : ICEM . . . . . . . . . . . . . . . . . . . . . . . 101.2.3 Méthodes de mesure . . . . . . . . . . . . . . . . . . . . . . . . . . 111.2.4 Quelques méthodes de réduction de l’émission conduite . . . . . . . 12

1.3 Emission rayonnée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131.3.1 Méthodes de mesure . . . . . . . . . . . . . . . . . . . . . . . . . . 131.3.2 Résultats fondamentaux . . . . . . . . . . . . . . . . . . . . . . . . 14

1.4 Susceptibilité conduite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151.4.1 Caractérisation de la susceptibilité conduite . . . . . . . . . . . . . 151.4.2 Méthodes de mesure . . . . . . . . . . . . . . . . . . . . . . . . . . 161.4.3 Quelques méthodes matérielles de protection . . . . . . . . . . . . . 171.4.4 Quelques méthodes logicielles de protection . . . . . . . . . . . . . . 181.4.5 Modélisation : modèle ICIM . . . . . . . . . . . . . . . . . . . . . . 19

1.5 Susceptibilité rayonnée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191.5.1 Méthodes de mesure . . . . . . . . . . . . . . . . . . . . . . . . . . 191.5.2 Quelques travaux réalisés . . . . . . . . . . . . . . . . . . . . . . . . 19

1.6 Conclusion générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2 Introduction à la modélisation comportementale VHDL-AMS 212.1 Principes généraux et intérêt de la modélisation comportementale . . . . . 21

2.1.1 Principe de la modélisation comportementale . . . . . . . . . . . . . 212.1.2 Langages de modélisation comportementale pour l’analogique . . . 24

2.2 Principes de base du langage VHDL-AMS . . . . . . . . . . . . . . . . . . 26

ix

Page 10: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

x TABLE DES MATIÈRES

2.2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262.2.2 Représentation des grandeurs analogiques . . . . . . . . . . . . . . 262.2.3 Equations différentielles . . . . . . . . . . . . . . . . . . . . . . . . 272.2.4 Attributs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282.2.5 Alternatives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292.2.6 Discontinuités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292.2.7 Domaines de simulation . . . . . . . . . . . . . . . . . . . . . . . . 302.2.8 Divers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

2.3 Méthodes et outils actuels pour la modélisation VHDL-AMS . . . . . . . . 302.3.1 Outils de modélisation VHDL-AMS . . . . . . . . . . . . . . . . . . 302.3.2 Méthodes de modélisation VHDL-AMS . . . . . . . . . . . . . . . . 32

2.4 Un exemple d’utilisation de VHDL-AMS . . . . . . . . . . . . . . . . . . . 342.4.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342.4.2 Modélisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352.4.3 Résultats de simulation . . . . . . . . . . . . . . . . . . . . . . . . . 382.4.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

2.5 Conclusion générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

II Contribution originale 41

3 Modèle ICEM et modélisation comportementale 433.1 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433.2 Présentation générale du modèle ICEM . . . . . . . . . . . . . . . . . . . . 43

3.2.1 Constitution interne d’un circuit intégré . . . . . . . . . . . . . . . 433.2.2 Modèle ICEM du circuit intégré . . . . . . . . . . . . . . . . . . . . 443.2.3 Modèle ICEM du circuit intégré dans son environnement . . . . . . 483.2.4 Utilisations possibles du modèle ICEM . . . . . . . . . . . . . . . . 483.2.5 Circuit utilisé pour l’étude . . . . . . . . . . . . . . . . . . . . . . . 49

3.3 Validation du modèle du réseau passif . . . . . . . . . . . . . . . . . . . . . 493.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493.3.2 Dispositif de mesure . . . . . . . . . . . . . . . . . . . . . . . . . . 503.3.3 Modèle ICEM avec environnement . . . . . . . . . . . . . . . . . . 503.3.4 Méthode de mesure des éléments . . . . . . . . . . . . . . . . . . . 503.3.5 Résultats obtenus . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

3.4 Niveaux de détermination de l’activité en courant d’un circuit intégré . . . 543.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543.4.2 Niveaux d’abstraction . . . . . . . . . . . . . . . . . . . . . . . . . 543.4.3 Problème des interconnexions . . . . . . . . . . . . . . . . . . . . . 563.4.4 Choix du niveau d’abstraction et de l’outil . . . . . . . . . . . . . . 57

3.5 Méthodologie de simulation . . . . . . . . . . . . . . . . . . . . . . . . . . 58

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 11: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

TABLE DES MATIÈRES xi

3.5.1 Présentation et objectifs . . . . . . . . . . . . . . . . . . . . . . . . 583.5.2 Conditions de simulation . . . . . . . . . . . . . . . . . . . . . . . . 583.5.3 Simulation simple du cœur . . . . . . . . . . . . . . . . . . . . . . . 583.5.4 Simulation des mémoires . . . . . . . . . . . . . . . . . . . . . . . . 603.5.5 Simulation comportementale complète . . . . . . . . . . . . . . . . 62

3.6 Validation du générateur équivalent . . . . . . . . . . . . . . . . . . . . . . 623.6.1 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623.6.2 Raffinement du modèle . . . . . . . . . . . . . . . . . . . . . . . . . 633.6.3 Extraction du courant interne . . . . . . . . . . . . . . . . . . . . . 643.6.4 Courant externe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643.6.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

3.7 Modélisation simple ICEM du cœur . . . . . . . . . . . . . . . . . . . . . . 663.7.1 Intérêt de VHDL-AMS pour la modélisation en courant . . . . . . . 663.7.2 Bibliothèque de base de modèles VHDL-AMS . . . . . . . . . . . . 673.7.3 Modélisation simple du cœur de microcontrôleur . . . . . . . . . . . 69

3.8 Utilisation pour la prédiction en courant . . . . . . . . . . . . . . . . . . . 733.8.1 Au niveau circuit intégré . . . . . . . . . . . . . . . . . . . . . . . . 733.8.2 Au niveau carte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

3.9 Conclusion générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

4 Modélisation comportementale ICEM des mémoires SRAM 754.1 Préambule et objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

4.1.1 Comparaison des consommations . . . . . . . . . . . . . . . . . . . 754.1.2 Intérêt de la simulation des SRAM . . . . . . . . . . . . . . . . . . 764.1.3 Approche utilisée . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

4.2 Architecture interne des mémoires SRAM . . . . . . . . . . . . . . . . . . . 774.3 Etude théorique succincte de l’activité en courant des différents blocs fonc-

tionnels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794.3.1 Décodeur d’adresses . . . . . . . . . . . . . . . . . . . . . . . . . . 804.3.2 Cellules mémoire et amplificateurs . . . . . . . . . . . . . . . . . . . 82

4.4 Validation par simulation électrique . . . . . . . . . . . . . . . . . . . . . . 844.4.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 844.4.2 Décodeurs d’adresses . . . . . . . . . . . . . . . . . . . . . . . . . . 864.4.3 Cellules mémoire et amplificateurs . . . . . . . . . . . . . . . . . . . 894.4.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

4.5 Introduction succincte aux modèles VITAL . . . . . . . . . . . . . . . . . . 924.6 Modèle VHDL-AMS de la SRAM . . . . . . . . . . . . . . . . . . . . . . . 93

4.6.1 Principe de codage . . . . . . . . . . . . . . . . . . . . . . . . . . . 934.6.2 Codage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 934.6.3 Résultats obtenus . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

4.7 Conclusion générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 12: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

xii TABLE DES MATIÈRES

5 Approche de modélisation comportementale ICEM d’un microcontrô-leur complet 995.1 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 995.2 Méthodologie proposée pour le cœur . . . . . . . . . . . . . . . . . . . . . 99

5.2.1 Choix des activités en courant à modéliser . . . . . . . . . . . . . . 995.2.2 Méthodologie de simulation proposée . . . . . . . . . . . . . . . . . 102

5.3 Les modèles d’entrées/sorties en détail . . . . . . . . . . . . . . . . . . . . 1035.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1035.3.2 Le modèle IBIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1035.3.3 Le modèle IMIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1055.3.4 Expression des besoins . . . . . . . . . . . . . . . . . . . . . . . . . 1065.3.5 Modèle ICEM générique proposé pour les entrées/sorties . . . . . . 1065.3.6 Extraction des paramètres ICEM des entrées/sorties . . . . . . . . . 107

5.4 Modélisation VHDL-AMS d’une entrée/sortie . . . . . . . . . . . . . . . . 1095.4.1 Généralités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1095.4.2 Modélisation du driver . . . . . . . . . . . . . . . . . . . . . . . . . 1105.4.3 Interpolation des caractéristiques du MOS . . . . . . . . . . . . . . 1125.4.4 Modélisation du buffer complet et du pad . . . . . . . . . . . . . . 1135.4.5 Résultats de simulation . . . . . . . . . . . . . . . . . . . . . . . . . 113

5.5 Simulation avec driver d’horloge . . . . . . . . . . . . . . . . . . . . . . . . 1165.6 Méthode de simulation de l’activité en courant du microcontrôleur complet 118

5.6.1 Principes généraux . . . . . . . . . . . . . . . . . . . . . . . . . . . 1185.6.2 Généralisation au cas des fortes dépendances d’activité en courant

par rapport au code . . . . . . . . . . . . . . . . . . . . . . . . . . 1185.7 Méthode générique de simulation de l’activité en courant d’un circuit intégré120

5.7.1 Description générale du flot . . . . . . . . . . . . . . . . . . . . . . 1205.7.2 Modélisation du floorplanning et de la distribution des alimentations1215.7.3 Paramétrage des modèles . . . . . . . . . . . . . . . . . . . . . . . . 121

5.8 Conclusion : vers un modèle ICEM-IP . . . . . . . . . . . . . . . . . . . . 122

Conclusion générale 125

A Sources des modèles 129A.1 Sources du chapitre 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

A.1.1 Capacité paramétrable . . . . . . . . . . . . . . . . . . . . . . . . . 129A.1.2 Comparateur RF . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130A.1.3 Démodulateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

A.2 Sources du chapitre 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132A.2.1 Composants passifs du modèle ICEM . . . . . . . . . . . . . . . . . 132A.2.2 Générateur de courant impulsionnel périodique . . . . . . . . . . . 134A.2.3 Générateur de courant PWL périodique . . . . . . . . . . . . . . . 135

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 13: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

TABLE DES MATIÈRES xiii

A.2.4 Générateur de courant de cœur, version conductance variable . . . . 136A.2.5 Générateur de courant de cœur, version équation courant/tension . 138A.2.6 Banc de test pour le modèle ICEM du cœur . . . . . . . . . . . . . 140

A.3 Sources du chapitre 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141A.3.1 Fichier "top" pour le test du décodeur X . . . . . . . . . . . . . . . 141A.3.2 Banc de test pour les décodeurs Y et Z . . . . . . . . . . . . . . . . 143A.3.3 Modèle d’activité en courant pour la SRAM . . . . . . . . . . . . . 144A.3.4 Banc de test pour le modèle ICEM de la SRAM . . . . . . . . . . . 152

A.4 Sources du chapitre 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154A.4.1 Modèle comportemental du driver . . . . . . . . . . . . . . . . . . . 154A.4.2 Fonction d’interpolation 2D pour les MOS du driver . . . . . . . . . 155A.4.3 Modèle du buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157A.4.4 Fonction d’interpolation 1D pour les diodes . . . . . . . . . . . . . 159A.4.5 Banc de test de l’entrée/sortie du port 0 . . . . . . . . . . . . . . . 160A.4.6 Banc de test pour le driver d’horloge . . . . . . . . . . . . . . . . . 163

Bibliographie 169

Publications en rapport avec la thèse 177

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 14: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

xiv TABLE DES MATIÈRES

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 15: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Table des figures

1.1 Modèles IBIS des ports d’entrée (gauche) et de sortie (droite) . . 91.2 Modèle IMIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101.3 Méthodes de mesure selon IEC61967-4 : 1 Ω (gauche) et 150 Ω

(droite) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111.4 Cellule TEM pour la CEM des composants . . . . . . . . . . . . . . 141.5 Principe du clamp de puissance . . . . . . . . . . . . . . . . . . . . . 18

2.1 Diagramme en Y de Gajski et Kuhn . . . . . . . . . . . . . . . . . . 232.2 Détermination des paramètres d’un modèle VHDL-AMS (d’après

[70]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342.3 Synoptique global du système de transmission transcutanée . . . . 352.4 Schéma bloc du système de transmission transcutanée . . . . . . . 362.5 Données Manchester encodées . . . . . . . . . . . . . . . . . . . . . . 372.6 Capacité paramétrable . . . . . . . . . . . . . . . . . . . . . . . . . . . 372.7 Résultats de simulation du système de transmission transcutanée 39

3.1 Modèle ICEM du circuit intégré . . . . . . . . . . . . . . . . . . . . . 453.2 Modèle ICEM asymétrique simplifié . . . . . . . . . . . . . . . . . . . 463.3 Modèle ICEM pour les circuits intégrés complexes . . . . . . . . . 473.4 Test de la carte Viper . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513.5 Modèle ICEM complet avec environnement . . . . . . . . . . . . . . 513.6 Impédances de la carte de test (d’après ATMEL) en fonction de

la fréquence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523.7 Impédance totale (module, en Ω) en fonction de la fréquence, vue

de l’alimentation avec circuit alimenté (d’après ATMEL) : modèle(trait plein) et mesures (pointillés) . . . . . . . . . . . . . . . . . . . 52

3.8 Modèle ICEM déterminé expérimentalement . . . . . . . . . . . . . 533.9 Principe de simulation simple du cœur . . . . . . . . . . . . . . . . . 593.10 Méthode d’extraction du courant des mémoires . . . . . . . . . . . 613.11 Simulation avec modèles VHDL-AMS des mémoires . . . . . . . . . 613.12 Simulation avec modèles VHDL-AMS uniquement . . . . . . . . . . 623.13 Modèle du générateur avec résistance variable . . . . . . . . . . . . 63

xv

Page 16: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

xvi TABLE DES FIGURES

3.14 Simulation du courant interne . . . . . . . . . . . . . . . . . . . . . . 653.15 Courant externe du cœur en mode RESET . . . . . . . . . . . . . . 663.16 Générateur impulsionnel périodique . . . . . . . . . . . . . . . . . . . 683.17 Générateur PWL périodique . . . . . . . . . . . . . . . . . . . . . . . 683.18 Simulations AC petits signaux . . . . . . . . . . . . . . . . . . . . . . 703.19 Modèle ICEM déterminé expérimentalement (rappel) . . . . . . . 723.20 Courants interne et externe du modèle comportemental . . . . . . 73

4.1 Simulation initiale d’un accès à une cellule mémoire . . . . . . . . . 764.2 Synoptique d’une mémoire SRAM (d’après [2]) . . . . . . . . . . . . 784.3 Schéma d’une cellule de mémoire SRAM . . . . . . . . . . . . . . . . 794.4 Découpage de l’adresse selon les décodeurs . . . . . . . . . . . . . . 804.5 Principe du décodeur Z . . . . . . . . . . . . . . . . . . . . . . . . . . . 814.6 Principe du décodeur X (d’après [104]) . . . . . . . . . . . . . . . . . 834.7 Méthode d’extraction du courant des mémoires (rappel) . . . . . . 844.8 Simulation préliminaire de la SRAM en écriture . . . . . . . . . . . 854.9 Simulation des décodeurs Y et Z . . . . . . . . . . . . . . . . . . . . . 874.10 Simulation de la commutation lecture/écriture . . . . . . . . . . . . 884.11 Simulation des sous-décodeurs X . . . . . . . . . . . . . . . . . . . . . 894.12 Simulation du bit de poids fort (A10) du décodeur X . . . . . . . . 904.13 Simulation des cellules mémoire et amplificateurs . . . . . . . . . . 914.14 Simulation de la netlist SPICE (haut) et du modèle VHDL-AMS

(bas) pour un accès . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944.15 Quelques autres résultats de simulation du modèle VHDL-AMS . 954.16 Courant interne (haut) et courant externe (bas) pour une activité

de la SRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

5.1 Mesures pour différents modes de fonctionnement . . . . . . . . . . 1015.2 Principe de la simulation globale CEM d’un circuit intégré . . . . 1025.3 Modèles IBIS : entrée (gauche) et sortie (droite) . . . . . . . . . . . 1045.4 Modèle IMIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1055.5 Approche ICEM de la modélisation des E/S : entrée (gauche) et

sortie (droite) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1065.6 Architecture interne d’une broche du port 0 du VIPER . . . . . . 1085.7 Caractéristiques Id(Vd) des transistors Pkeep et Nkeep montés en

diodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1095.8 Caractéristique Id(Vd) du transistor Nprot monté en diode . . . . . 1105.9 Caractéristiques Id(Vd,Vg) des transistors de sortie . . . . . . . . . 1115.10 Accès d’un buffer d’E/S . . . . . . . . . . . . . . . . . . . . . . . . . . 1115.11 Paramètres d’interpolation de la caractéristique du MOS . . . . . 112

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 17: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

TABLE DES FIGURES xvii

5.12 Simulations VHDL-AMS du port en sortie pour Tr = 1 ns (4 :1)et 3 ns (4 :2) : courant externe dans l’alimentation, courant dansle PMOS, courant dans le NMOS (de haut en bas) . . . . . . . . . 114

5.13 Simulation VHDL-AMS du port en entrée . . . . . . . . . . . . . . . 1155.14 Simulation VHDL-AMS du cœur avec le driver d’horloge et une

E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1175.15 Simulation en courant du microcontrôleur complet . . . . . . . . . 1195.16 Proposition de modèle ICEM-IP . . . . . . . . . . . . . . . . . . . . . 122

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 18: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

xviii TABLE DES FIGURES

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 19: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Liste des tableaux

1 Evolution des technologies (d’après ITRS SIA) . . . . . . . . . . . . 2

2.1 Niveaux d’abstraction en numérique (d’après [37]) . . . . . . . . . . 222.2 Niveaux d’abstraction en analogique (d’après [52]) . . . . . . . . . . 23

3.1 Tableau résumé des niveaux d’abstraction . . . . . . . . . . . . . . . 56

xix

Page 20: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

xx LISTE DES TABLEAUX

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 21: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Introduction générale

Contexte de l’étude

Depuis de nombreuses années, les problèmes de compatibilité électromagnétique (CEM)sont au cœur des préoccupations des industriels. Eviter que le fonctionnement d’un sys-tème électronique perturbe celui d’un autre (émission) ou qu’il soit lui-même perturbépar un tiers (susceptibilité) devient une exigence vitale à l’heure où la multiplicationdes appareils électroniques, que ce soit au niveau du grand public ou dans l’industrie, seconjugue à une augmentation rapide des fréquences de fonctionnement allant de pair avecla réduction des tensions d’alimentation. Le tableau 1 montre les évolutions prévues destechnologies et leurs conséquences. Jusque récemment, ces problèmes étaient envisagés demanière globale au niveau du circuit imprimé, voire même du système. Si cette démarcheétait suffisante il y a dix ans, désormais c’est au niveau du circuit intégré lui-même quedoivent se porter les recherches en CEM :

1. l’augmentation du nombre de commutations simultanées (liée à celle du nombre detransistors) va produire de plus en plus d’appels de courant dans les alimentationsdu circuit intégré

2. la réduction de la géométrie des transistors ainsi que l’amélioration des intercon-nexions vont diminuer les temps de montée des signaux internes et donc ceux despics de courant, entraînant une extension du spectre d’émission (que ce soit conduiteou rayonnée) vers les très hautes fréquences (plusieurs dizaines de GHz)

3. la diminution de la tension d’alimentation va réduire d’autant les marges de bruit,augmentant par là-même la susceptibilité des circuits

Même s’il n’existe pas de normes CEM concernant uniquement les niveaux d’émissionet de susceptibilité des circuits intégrés, il est alors évident que la minimisation de leurémission parasite va assurer une meilleure conformité des équipements les utilisant, etqu’une susceptibilité plus faible va permettre de fiabiliser ces derniers. Ces préoccupationsvont donc concerner à la fois le concepteur de circuits intégrés et le concepteur de cartes :

– pour le premier, parvenir dès le prototype initial à des circuits moins polluants etmoins sensibles, ce qui sera (est ?) un argument commercial de poids, nécessite deprendre en compte les exigences CEM lors de la phase de conception, ce qui est une

1

Page 22: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

2 Chapitre 0 : Introduction générale

Année 1992 1996 2000 2002 2004 2010

Technologie (µm) 0.7 0.35 0.18 0.12 0.09 0.05

Alimentation (V) 5 3.3 1.9 1.2 1 0.5

Surface (mm2) 14x14 18x18 20x20 22x22 25x25 30x30

Niveaux 2 5 6 7 8 9d’interconnexion

Fréquence (MHz) 100 300 800 1500 3500 10000

Nb. de pads 350 800 1500 1800 3500 6000

Interconnexions Al Tu+Al Tu+Al Cu Cu Cu

Résistance de 1 mm 30 500 2000 1500 2500 5000d’interconnexion (Ω)

Diaphonie max. pour 15 % 25 % 40 % 35 % 45 % 65 %1 mm d’interconnexion

Modèle de linéaire linéaire 3D 3D 3D RLC 3D RLCcouplage C RC RC RLC Maxwell Maxwell

Emission conduite (µV) 30 50 70 90 95 100

Fréquence d’étude : 120 MHz 300 MHz 1 GHz 3 GHz 10 GHz 30 GHzdu DC à

Susceptibilité 100 50 30 10 5 1conduite (mA)

Modèle E/S N/A IBIS v1 IBIS v2 IBIS v3 IBIS-ML IBIS-ML

Modèle cœur N/A N/A IMIC ICEM v1 ICEM v2 ICEM v3

Modèle MOS Level 3 BSIM BSIM2 BSIM3 BSIM4 BSIM4MM9 MM9

Tab. 1 – Evolution des technologies (d’après ITRS SIA)

démarche nouvelle– pour le second, le circuit intégré lui-même devient partie intégrante des éléments

sur lesquels il sera susceptible d’intervenir pour assurer la conformité de son sys-tème, soit par choix de composants ayant de meilleures performances CEM, soit partraitement spécifique de leurs perturbations au niveau du circuit imprimé

Le concepteur de circuits intégrés devra donc être capable de prédire les performancesCEM de son circuit, et de fournir à l’équipementier des modèles permettant à ce dernierd’extrapoler celles du système complet, et ce sans divulguer son savoir-faire. De plus, larapidité de simulation de ces modèles est un critère déterminant de leur popularisation.Pour cette raison, les modèles comportementaux, permettant de décrire un circuit ou unsystème à plus haut niveau, peuvent répondre à ces critères, d’autant plus que la précisionattendue dans le domaine de la CEM est de l’ordre de 20 %. Ces modèles peuvent êtrecodés dans de nombreux langages : VHDL-AMS, Verilog-A et -AMS, mais aussi C, C++,Matlab ... Cependant, il semble judicieux de mettre l’accent sur un langage permettant

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 23: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3

l’interfaçage simple avec des modèles comportementaux numériques déjà écrits, dans uneoptique de co-simulation, et qui soit de plus totalement normalisé ; nous verrons queVHDL-AMS est le langage le plus adapté, grâce à sa compatibilité ascendante avec VHDL.Il sera donc le langage utilisé tout au long de cette étude.

Objectifs et originalité de la démarche

L’objectif de ces travaux se focalise sur l’émission conduite des circuits intégrés. Ac-tuellement, cette dernière ne peut être déterminée qu’à partir de mesures effectuées sur uncircuit intégré existant, c’est-à-dire après fonderie. D’éventuelles améliorations aux per-formances de ce dernier ne peuvent donc être apportées que par des modifications internesnécessitant un nouveau prototypage, ce qui est extrêmement coûteux.L’originalité de notre démarche réside dans la possibilité offerte au concepteur de circuitsintégrés de prédire les performances en émission conduite dès la phase de simulation et deplacement-routage, et d’étudier l’influence d’un certain nombre de paramètres de concep-tion (floorplanning du circuit, temps de montée des signaux internes, charges capacitives...) sur celles-ci. Cette démarche sera fondée sur la définition et l’utilisation de modèlescomportementaux VHDL-AMS pour les activités internes en courant ; un modèle globalde l’activité du circuit pourra ensuite en être déduit et mis à la disposition des concep-teurs de cartes afin d’effectuer des simulations globales CEM au niveau circuit imprimé,en conditions réelles de fonctionnement.Dans cette thèse, nous allons par conséquent chercher à mettre au point une démarched’établissement de modèles comportementaux d’activité, très rapides à simuler tout enconservant une bonne précision.

Structure

Dans un premier temps, nous présenterons les principales avancées en termes de CEMdes circuits intégrés (qui est un domaine très récent) ainsi que de modélisation com-portementale VHDL-AMS. Quelques éléments de langage seront fournis à des fins declarification de ce qui suit.Dans le troisième chapitre, nous allons partir du modèle ICEM (Integrated Circuit Elec-tromagnetic Model) mis au point par l’UTE (Union Technique de l’Electricité, branchefrançaise de l’International Electrotechnical Commission). Nous allons effectuer la valida-tion complète de ce modèle sur un exemple industriel (un microcontrôleur 8 bits) grâceaux travaux menés en collaboration avec ATMEL Nantes. Ceci permettra de définir unmodèle haut niveau très simplifié, en VHDL-AMS, du courant dynamique consommé surles alimentations dans le mode de fonctionnement le plus simple du circuit.Il est ensuite intéressant de montrer comment l’activité du circuit peut influencer ce cou-

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 24: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

4 Chapitre 0 : Introduction générale

rant, dans le cas de certains blocs fonctionnels dont l’architecture est relativement bienconnue. C’est pourquoi le quatrième chapitre est consacré à la définition d’un modèle decourant dynamique dans le cas des mémoires embarquées. Après une étude théorique del’architecture des mémoires RAM statiques (SRAMs) ainsi que de l’activité en courantdes différents blocs fonctionnels les composant, une méthode de modélisation VHDL-AMSde leur activité en courant est proposée, compatible avec le standard VITAL (VHDL Ini-tiative Towards ASIC Libraries) pour les modèles comportementaux numériques de mé-moires, présenté par ailleurs.Le cinquième chapitre est consacré au cœur et aux entrées/sorties du microcontrôleur(CPU). De la même manière, un modèle basé sur les activités sera proposé, cependant li-mité aux activités générant le maximum de perturbations sur les alimentations, c’est-à-direles opérations d’entrée/sortie. Pour ce faire, nous développerons un modèle VHDL-AMSdes entrées/sorties du microcontrôleur.Une ouverture vers la proposition de modèles ICEM de propriété intellectuelle (ICEM-IP)et d’une méthodologie générique de conception orientée CEM d’un circuit intégré conclutcette étude et montrera tous les avantages de cette démarche.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 25: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Première partie

Etat de l’art

5

Page 26: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de
Page 27: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Chapitre 1

Problématique de la CEM des circuits

intégrés

1.1 Généralités

Le domaine de la CEM, qu’elle concerne les circuits intégrés ou non, se répartit enquatre sous-domaines d’activité, de recherche et de normalisation :

1. l’émission conduite : on considère les niveaux des perturbations générées par le sys-tème à étudier (quel que soit son niveau de description) sur ses connexions physiquesvers l’extérieur prises dans leur généralité ; il peut s’agir des entrées/sorties commedes réseaux d’alimentation, et en particulier, dans le cas des circuits intégrés, lesbroches (ou pads si le composant n’a pas de boîtier)

2. l’émission rayonnée : on s’intéresse de manière analogue au champ électromagnétiqueproche rayonné par le système

3. la susceptibilité conduite : on injecte sur les accès du système ("agression") desperturbations parfaitement déterminées (niveaux, temps de montée et de descente...), et l’on vérifie son comportement vis-à-vis de celles-ci (par exemple arrêt defonctionnement nécessitant une réinitialisation)

4. la susceptibilité rayonnée : l’impact de champs électromagnétiques connus sur lefonctionnement du système est étudié comme pour la susceptibilité conduite

Chacun de ces sous-domaines possède son pendant dans la CEM des circuits intégrés(CI). Par la suite, afin d’insister sur l’essentiel, seuls les travaux menés sur les CI serontdirectement évoqués. Nous ferons le point à la fois sur les les méthodes de mesure, cellesde modélisation et les normalisations mises en place (ou en cours).Cet état de l’art ne se veut pas exhaustif, étant donné que le domaine de la CEM desCI est relativement nouveau (recherches essentiellement menées depuis 1996) et encorepeu développé. Les références citées ci-après permettent donc d’en avoir une vue globalesatisfaisante du point de vue de ce travail.

7

Page 28: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

8 Chapitre 1 : Problématique de la CEM des circuits intégrés

1.2 Emission conduite

Historiquement, les premiers travaux sur la CEM des circuits intégrés ont été réaliséssur l’émission conduite ; c’est donc dans ce domaine que les mesures et les modèles sontles plus avancés, mais beaucoup de modèles restent encore à affiner. Il est important denoter par contre qu’il n’existe actuellement aucune norme pour les niveaux d’émission descircuits intégrés : les performances de ces derniers doivent simplement permettre d’assurerla conformité de l’ensemble du système qui les inclut, et plus encore, la non-perturbationdu circuit lui-même (autoperturbation).

1.2.1 Intégrité de signal : les modèles IBIS et IMIC

Les premières recherches en CEM des circuits intégrés sont reliées à l’intégrité de si-gnal. Cette dernière, étudiée depuis plus d’une dizaine d’années, englobe l’ensemble destechniques visant à vérifier, si possible par simulation, la propagation des signaux le longdes media les véhiculant à l’intérieur d’un système (pistes de circuit imprimé, câbles).Elle ne concerne pas par contre la vérification de la conformité des niveaux d’émissioneux-mêmes.A cet effet, deux principaux modèles ont été mis au point : IBIS (Input/output Buffer In-formation Specification) et IMIC (Input/output interface Model for Integrated Circuits).

IBIS

Le modèle IBIS, dont la dernière version (4.0) est présentée dans [87], a été créé parIntel et rendu public en juin 1993. Son objectif est de fournir les caractéristiques desentrées/sorties d’un circuit intégré tout en préservant la confidentialité technologique.Il s’agit d’un modèle comportemental, dont le schéma équivalent est présenté figure 1.1(gauche : entrée, droite : sortie). Il comprend :

– les éléments passifs Rpkg, Lpkg, Cpkg de l’ensemble bonding+boîtier– la capacité d’entrée/sortie du composant Ccomp

– les diodes de clamping V CCclamp et GNDclamp

– pour les sorties, les transistors de sortie pullup et pulldownCe modèle est insuffisant en CEM des circuits intégrés car il n’inclut :

– ni les perturbations induites sur les entrées/sorties par l’activité interne du compo-sant, dont la fréquence peut être beaucoup plus grande que celle des E/S elles-mêmes

– ni les perturbations sur les rails d’alimentation (qui ont beaucoup d’importance, enparticulier en rayonné)

– ni le champ électromagnétique rayonnéActuellement, une très importante amélioration est en cours de définition. Il s’agit d’IBIS-ML (Macro Language) [88], qui permet de créer une description comportementale explicitedu buffer d’entrée/sortie, laquelle peut être écrite par exemple en langage VHDL-AMS.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 29: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

1.2 Emission conduite 9

Rpkg Lpkg

CcompCpkg

V CCClamp

GNDClamp Cpkg

Rpkg Lpkg

V CCClamp

GNDClampCcomp

eIN OUT

Fig. 1.1 – Modèles IBIS des ports d’entrée (gauche) et de sortie (droite)

Ceci peut donc apporter une réponse partielle au premier point, car l’activité interne peutêtre à terme incluse dans le modèle. Nous en reparlerons au dernier chapitre.

IMIC

Le modèle IMIC [45], défini par la JEITA (Japan Electronics and Information Tech-nology Industries Association) et publié en mars 2001, est censé remédier à certains in-convénients du modèle IBIS. Les deux principaux compléments à ce dernier sont :

– la présence de réseaux RL dans les rails d’alimentation en série avec les transistorsde sortie

– la possibilité de définir des modèles de formes d’onde pour les commandes des tran-sistors de sortie (possibilité ajoutée dans IBIS-ML comme vu précédemment) ; ce-pendant, ces modèles sont uniquement exprimés sous forme PWL (Piece-Wise Li-near) indépendants de l’activité

Ce modèle est représenté figure 1.2.Contrairement à IBIS, les modèles IMIC sont codés purement en syntaxe SPICE, avecdes modèles de transistors tabulés afin de masquer la technologie employée.IMIC permet de définir trois niveaux de simulation :

1. le niveau 1 considère les rails d’alimentation parfaits, ce qui revient en fait au modèleIBIS pour l’intégrité de signal

2. dans le niveau 2, les rails d’alimentation ne sont plus idéaux et la description duboîtier est plus précise, ce qui permet d’examiner "l’intégrité d’alimentation"

3. le niveau 3 met en jeu des structures tridimensionnelles pour le boîtier ainsi quel’ensemble des courants à l’intérieur du composant

Le principal avantage du modèle IMIC est la prise en compte de l’influence mutuelledes entrées/sorties et des rails d’alimentation. Cependant, l’influence directe de l’activité

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 30: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

10 Chapitre 1 : Problématique de la CEM des circuits intégrés

eR

R L

R L

R L

R L

Buffer

Buffer

-

-

R

R

R

R

Signal

Signal

Masses

Circuit intégré Boîtier

Modèle d’un buffer

+

Fig. 1.2 – Modèle IMIC

interne du circuit intégré sur les rails d’alimentation n’est toujours pas prise en compte(il n’offre aucun moyen de spécifier les générateurs de courant internes), alors que biensouvent c’est elle qui se trouve être la principale source de perturbations conduites surune carte, en particulier au niveau étendue spectrale.

1.2.2 Un modèle adapté : ICEM

Le modèle ICEM (Integrated Circuit Electromagnetic Model) est un modèle simplifiéde représentation d’un circuit intégré et de son environnement d’un point de vue CEM.Son objectif est la prédiction des perturbations conduites et rayonnées générées sur lesrails d’alimentation du circuit. Il complète donc utilement le modèle IBIS.ICEM fait l’objet d’une proposition (IEC62014-3 et IEC62014-4) déposée auprès de l’UnionTechnique de l’Electricité et de la Communication (UTE) par le groupe de travail 62014de cette dernière.Ce modèle ne sera pas détaillé ici ; en effet, constituant le support sur lequel est baséecette thèse, il sera présenté de manière approfondie au paragraphe 3.2.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 31: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

1.2 Emission conduite 11

1.2.3 Méthodes de mesure

Normalisation

Deux méthodes de mesure sont en cours de normalisation pour l’émission conduite :la "1 Ω - 150 Ω" et la WBFC (WorkBench Faraday Cage).

Méthode 1 Ω - 150 Ω Cette méthode est définie par l’IEC sous la référence IEC61967-4 [90] et s’inspire du standard VDE AK767.13.Elle consiste, comme l’indique la figure 1.3, à mesurer à la fois le courant dans le fil demasse (par mesure de tension aux bornes d’une résistance de 1 Ω) et la tension sur lesentrées/sorties, et ce entre 150 kHz et 1 GHz.

1 Ω

49 Ω

50 Ω

masse CI

masse mesure

120 Ω

50 Ω

51 Ω

masse mesure

6.8 nF

E/S

10 nF

Fig. 1.3 – Méthodes de mesure selon IEC61967-4 : 1 Ω (gauche) et 150 Ω(droite)

Le choix de 1 Ω pour la mesure en courant est justifié par la nécessité de perturber auminimum l’impédance de l’alimentation, celui de 150 Ω pour la mesure en tension par lanorme IEC61000-4-6 qui indique que dans la majorité des cas, il s’agit de l’impédancedes antennes équivalentes du réseau de câblage (pistes) dans cette bande de fréquences.Comme l’impédance des appareils de mesure est généralement égale à 50 Ω, il est nécessairede mettre en place les adaptateurs illustrés dans la norme.Cette méthode possède plusieurs avantages :

– évaluation individuelle de la contribution de chaque broche– linéarité (mesure effectuée sur une résistance)– validité en très basse fréquence– reproductibilité

Cependant le couplage capacitif limite la validité en très haute fréquence, et surtout laméthode nécessite beaucoup de composants passifs, augmentant notablement l’encombre-ment de la carte de test.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 32: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

12 Chapitre 1 : Problématique de la CEM des circuits intégrés

Méthode WBFC La méthode WBFC [93] est issue du standard IEC1000-4-3 et permetde mesurer l’émission conduite en mode commun d’un câble connecté sur un composant ;elle consiste à enfermer le circuit intégré à tester, placé sur un circuit imprimé de testadéquat, dans une cage de Faraday. Chaque signal (y compris les alimentations) est vé-hiculé depuis ou vers l’extérieur par des filtres de paroi et des ferrites afin d’assurer uneimpédance de mode commun d’environ 150 Ω.De même que pour la méthode précédente, les mesures peuvent s’effectuer entre 150 kHzet 1 GHz.

Bien que non officielles, ces méthodes sont utilisées quasiment pour toutes les investi-gations CEM.

Autres méthodes

Afin de pouvoir mesurer le courant consommé par un circuit intégré au plus prèsde la puce, des "oscilloscopes sur puce" (capteurs à échantillonnage) ont été développéspar l’équipe d’E. Sicard à l’INSA de Toulouse [24] ; ils sont directement implantés sursilicium au niveau de la piste à examiner, ce qui présente un grand intérêt pour l’étudede la diaphonie, du courant consommé individuellement par chaque bloc fonctionnel d’uncircuit ... Par contre, ils nécessitent de réaliser un design spécifique, ce qui n’apporte pasde solution au problème de la prédiction du courant d’un circuit destiné à la productionde masse.

1.2.4 Quelques méthodes de réduction de l’émission conduite

La méthode la plus couramment employée pour réduire l’émission conduite des circuitslogiques synchrones consiste à désynchroniser les horloges :

– soit en les modulant afin d’étaler le spectre [39] (résultats valables également pourl’émission conduite)

– soit en étalant les fronts d’horloge à l’intérieur du circuit [6]Les circuits asynchrones peuvent également présenter un grand intérêt d’un point de vueémission, bien évidemment grâce à l’absence d’harmoniques liées à une horloge. De plus,Panyasak [71] montre que certaines techniques de conception asynchrone permettent deréduire encore cette émission.Une autre voie possible, envisagée par Lochot et Calvet [57] et mesurée sur un circuitde test, est l’inclusion de résistances supplémentaires dans les rails d’alimentation. Nousverrons au chapitre 3 que ces résultats peuvent être prédits dès la simulation.Une méthode totalement différente consiste à inclure sur la puce même une capacité dedécouplage. En effet, la plupart des circuits sont "pad-limited", c’est-à-dire que la surfacetotale de la puce est fixée par le périmètre intérieur des différents pads d’entrée/sortiesur le pourtour. Plutôt que de passiver le silicium non utilisé pour le cœur du circuit, on

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 33: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

1.3 Emission rayonnée 13

peut donc l’utiliser pour créer une capacité métal-métal qui aura un effet bénéfique surl’émission conduite. Nous le verrons au paragraphe 3.6.4.

1.3 Emission rayonnée

Il existe actuellement peu de travaux publiés sur l’émission rayonnée des circuits inté-grés.

1.3.1 Méthodes de mesure

Normalisation

Deux méthodes de mesure sont en cours de normalisation : l’une utilisant une celluleTEM (Transverse ElectroMagnetic) et l’autre une sonde de mesure du champ électroma-gnétique proche ("surface scan").

Méthode TEM Sous la référence 61967-2, l’IEC propose [91] d’utiliser "classiquement"une cellule TEM pour mesurer les émissions rayonnées jusqu’à 1 GHz. Cette norme s’ins-pire des premiers travaux menés en 1996 par Muccioli et al. [64].Le composant à tester est fixé sur la première couche d’un circuit imprimé 4 couchesde 10x10 cm. Cette couche n’est autre qu’un plan de masse, les couches suivantes étantréservées respectivement à l’alimentation, aux signaux et à un second plan de masse (pluséventuellement le reste des signaux). Ce circuit imprimé est alors fixé, composant à testervers l’intérieur, sur l’un des côtés de la cellule, et assure ainsi la continuité électriquede cette dernière. Les perturbations rayonnées sont collectées par un septum, plaque demétal située au milieu de la cellule et électriquement isolée de cette dernière, et dirigéesvers un analyseur de spectre.Une photographie de la cellule est proposée à la figure 1.4 ; on peut y remarquer sur laface supérieure l’emplacement du circuit.Nous ne détaillerons pas plus cette méthode ici. Son principal inconvénient est son inap-titude à déterminer précisément l’ emplacement des principales sources d’émission sur uncircuit imprimé.

Méthode "surface scan" Afin de remédier à cet inconvénient, la méthode IEC61967-3[92] propose de mesurer le champ magnétique proche en déplaçant une sonde de mesure(en fait deux sondes différentes, une pour le champ

−→E , l’autre pour le champ

−→B ) sur

toute la surface du circuit imprimé (en particulier sur les circuits intégrés), grâce à unpositionneur XYZ (3 axes linéaires), réalisant ainsi une véritable cartographie du champ.Ceci permet, en calculant ensuite l’énergie totale locale, de caractériser au mieux lesemplacements des pics de rayonnement électromagnétique sur le circuit imprimé.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 34: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

14 Chapitre 1 : Problématique de la CEM des circuits intégrés

Fig. 1.4 – Cellule TEM pour la CEM des composants

Cette méthode a été améliorée par Kazama [47] par l’utilisation d’une seule sonde capablede mesurer simultanément les deux composantes du champ.

Autres méthodes de mesure

Au lieu d’une cellule TEM "classique", Deniau [22] utilise une cellule "TEM 3D"à six septa, au milieu de laquelle est placé le circuit à tester, ce qui permet d’obtenirdirectement l’émission rayonnée dans toutes les directions au lieu de changer l’orientationde ce dernier.Au-delà du gigahertz, il est possible d’utiliser une cellule GTEM (Gigahertz TEM), quise distingue de la TEM par sa forme pyramidale, ses dimensions plus importantes etsurtout par la présence d’absorbants réduisant les réflexions parasites à l’intérieur de lacellule. Cette méthode est utilisée entre autres par Maurice [59] ; une équipe de l’INSA deToulouse approfondit actuellement le sujet.

1.3.2 Résultats fondamentaux

Actuellement, les recherches sur l’émission rayonnée en sont encore principalementau stade de mise au point des méthodes de mesure. Quelques travaux ont cependantcommencé sur la caractérisation des circuits intégrés.En particulier, Ostermann et al. [67] ont étudié l’influence du style d’alimentation d’uncircuit intégré (masses analogiques et numériques séparées ou communes) sur l’émissionrayonnée. Des résultats préliminaires montrent que le problème est complexe : au-dessus de100 MHz, l’émission est plus faible en utilisant des masses séparées, alors que le contrairese vérifie en-dessous de 100 MHz.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 35: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

1.4 Susceptibilité conduite 15

1.4 Susceptibilité conduite

1.4.1 Caractérisation de la susceptibilité conduite

La gamme d’effets produits par les perturbations conduites sur les circuits intégrésest très vaste et ses manifestations le sont tout autant. Si l’on excepte la destruction ducircuit, elles peuvent entraîner :

1. pour les circuits logiques, des commutations intempestives (aléas, glitches) entraî-nant un mauvais fonctionnement et, dans le cas de circuits complexes comme lesmicrocontrôleurs, quelquefois l’arrêt complet du circuit

2. pour les circuits analogiques, en général des tensions d’offset

Circuits logiques

Dans une étude comparative très intéressante [60], Maurice montre que les perturba-tions peuvent être prises en compte par un circuit logique de deux façons différentes :

– si la fréquence de l’agression est inférieure à la fréquence de travail du circuit, ellepeut se propager dans les couches logiques du circuit et entraîner soit des change-ments d’état asynchrones, soit l’anticipation des changements d’état synchrones ; sielle intervient sur l’alimentation, elle peut réduire les marges de bruit de la logique

– si elle est supérieure, la non-linéarité des étages d’entrée/sortie redresse le signal RFet le transpose dans la bande de travail du circuit (Forcier [36])

Il montre entre autres qu’environ 1 mW injecté sur une entrée/sortie est suffisant engénéral pour perturber un circuit logique, et ce jusqu’à 1.5 GHz, et que les étages desortie sont plus susceptibles que les étages d’entrée (sans doute à cause du redressementopéré par l’étage push-pull de sortie).

Mémoires

Une étude théorique succincte [72] a été menée sur la susceptibilité des différentestechnologies des mémoires pouvant être embarquées dans des microcontrôleurs. Il ressortde cette étude que :

– la susceptibilité des mémoires statiques (SRAMs) est surtout liée au décodeur d’adresses ;en effet, le stockage de l’information dans ces mémoires s’effectue par l’intermédiairede bistables dont le changement d’état parasite peut s’effectuer par une impulsionparasite sur le signal de sélection, c’est-à-dire une ligne de mot (wordline) reliée audécodeur

– les Flash EPROM sont a priori très sensibles d’un point de vue CEM : en supplémentdu problème lié au décodeur d’adresses, cité précédemment, le fait que chaque cellulene soit constituée que d’un seul transistor double grille dans la grille flottante duquelest stockée l’information peut entraîner l’effacement parasite d’une rangée de cellules

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 36: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

16 Chapitre 1 : Problématique de la CEM des circuits intégrés

par une impulsion de tension négative arrivant sur la grille flottante (communiquéepar un champ proche par exemple)

– les EEPROM sont moins sensibles que les Flash EEPROM, en raison de la présenced’un transistor de sélection dans chaque cellule

– les mémoires ferroélectriques (FRAMs) sont très sensibles à des variations de tensiond’alimentation pendant les phases d’écriture, en raison de possibles commutationsincomplètes liées au cycle d’hystérésis des capacités ferroélectriques

– les mémoires ferromagnétiques (MRAMs) seraient a priori les plus fiables d’un pointde vue CEM, si l’on excepte les risques de détérioration par une forte impulsion detension sur l’alimentation.

Circuits analogiques

Les effets des perturbations sur les circuits analogiques sont très différents, en parti-culier sur les amplificateurs opérationnels qui sont la base d’un grand nombre de blocsfonctionnels analogiques. Richardson [77] a notamment montré qu’elles entraînent un dé-placement du point de fonctionnement DC des transistors, ce qui se répercute directementsur l’offset de sortie des amplificateurs opérationnels [97]. La démonstration en a été faiterécemment par Fiori [34]. Parallèlement, Druant [26] montre que les composantes situéesen-dehors de la bande passante et présentes aux entrées sont susceptibles de fuir soit versles alimentations, soit directement vers la sortie.Un résumé de différents résultats en susceptibilité est proposé par Pozzolo et al. [76] ;ceux-ci montrent en particulier la sensibilité particulière des transistors MOS aux pertur-bations sur le substrat, à partir d’un modèle MOS spécifiquement orienté susceptibilité[35]. Dans ce même article est proposée une étude expérimentale sur les convertisseursDC/DC intégrés.

1.4.2 Méthodes de mesure

Actuellement, trois méthodes de mesure en susceptibilité conduite sont en cours denormalisation : la BCI (Bulk Current Injection), la DPI (Direct Power Injection) et laWBFC. Ces méthodes ont été évaluées par Fiori [32] dans le cas concret d’un micro-contrôleur. Cependant il est à noter qu’elles ne définissent aucun critère standard desusceptibilité ; chaque utilisateur peut alors lui-même appliquer ses propres critères, d’oùune importance subjectivité ...

Méthode BCI

La méthode BCI [95] consiste à injecter sur les entrées/sorties du circuit intégré uneperturbation sinusoïdale dont la fréquence varie entre 10 kHz et 400 MHz, modulée enamplitude à 1 kHz ou non, par l’intermédiaire d’un couplage inductif (transformateur

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 37: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

1.4 Susceptibilité conduite 17

de courant torique). Un autre transformateur torique sur la même connexion permet demesurer le niveau RF qui déclenche le mauvais fonctionnement du système. Elle s’inspirede la norme automobile ISO11452-4.

Méthode DPI

La méthode DPI [96] consiste, elle, à injecter sur les entrées/sorties du circuit intégré lamême perturbation RF que pour la BCI, mais cette fois-ci directement par l’intermédiaired’un couplage capacitif (avec évidemment un réseau de découplage dans l’alimentationcontinue pour éviter d’y injecter le signal RF). Ce couplage permet d’attaquer le circuitavec des perturbations allant jusqu’à 1 GHz.

Méthode WBFC

La méthode WBFC [89] utilise le même dispositif de test que pour les mesures enémission, en permettant de mesurer la susceptibilité en mode commun. La carte est placéedans une cage de Faraday et ses entrées/sorties sont attaquées par un générateur RF sousune impédance de mode commun de 150 Ω, selon un schéma similaire aux mesures enémission. Cependant Fiori [32] montre que cette méthode est peu utilisable si la carte detest a été spécialement conçue dans le but de réduire le bruit de mode commun ; elle estpar conséquent moins utilisée.

1.4.3 Quelques méthodes matérielles de protection

Afin de se prémunir contre les perturbations conduites, une première voie consiste àmettre en place des protections matérielles, soit sur les entrées/sorties, soit sur l’alimen-tation, soit au niveau des fonctions elles-mêmes implantées sur la puce.

Au niveau des entrées/sorties

Les méthodes utilisées pour la protection des entrées/sorties sont maintenant bienconnues. On peut citer (nous ne les détaillerons pas ici) :

– les diodes de clamping– la diode Zener– le trigger de Schmitt– le simple filtrage RC pour les entrées analogiques (d’un convertisseur analogique/numérique)

Au niveau de l’alimentation

Une méthode intéressante de protection des alimentations est le clamp de puissance(figure 1.5). En fonctionnement normal, C1 est chargé et le transistor NMOS est doncbloqué. Lorsqu’une violente perturbation électromagnétique apparaît sur l’alimentation,

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 38: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

18 Chapitre 1 : Problématique de la CEM des circuits intégrés

Vg augmente par couplage capacitif, et le NMOS devient conducteur, ce qui abaisse mo-mentanément la tension d’alimentation vue par le cœur en-dessous du seuil de claquagede l’oxyde.

C1

R1

- vers Vdd cœur

Fig. 1.5 – Principe du clamp de puissance

Cette technique est également utilisable pour les entrées logiques, du moment que leurfréquence de commutation est très inférieure à celle des perturbations considérées.

Au niveau du cœur

Il est également efficace de protéger les fonctions logiques ou analogiques elles-mêmescontre les perturbations ; les travaux dans ce domaine traitent essentiellement des fonc-tions analogiques. Par exemple, Fiori [33] propose de réaliser un amplificateur opération-nel à paires différentielles complémentaires afin de compenser les variations de point defonctionnement DC des transistors.

1.4.4 Quelques méthodes logicielles de protection

Nous abordons ici les méthodes de "defensive software" et de sûreté de fonctionnement,qui constituent une grande part des recherches en susceptibilité des circuits intégrés. Ils’agit en fait de pouvoir compenser une défaillance matérielle du circuit, due à une per-turbation, par des fonctions logicielles permettant de détecter l’erreur, puis de la corrigerautomatiquement le mieux possible afin d’en minimiser la portée.Dans le cas des microprocesseurs et microcontrôleurs, ces perturbations peuvent causerune altération de certains bits des registres internes et/ou de la mémoire, ce qui peut mo-difier le déroulement normal du programme. Dans ce cas, un certain nombre de solutionsont été envisagées, dont l’exposé détaillé dépasse le cadre de cette thèse. On peut citerpar exemple :

– le remplissage de la mémoire programme inutilisée avec des instructions de bran-chement à la routine de démarrage

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 39: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

1.5 Susceptibilité rayonnée 19

– l’ajout d’une somme de contrôle (checksum) des données en mémoire pour s’assurerde leur intégrité

– le filtrage numérique des données acquises (depuis un convertisseur analogique/numériquepar exemple) pour éliminer les aléas

La plupart d’entre elles sont répertoriées dans [18] et [81].

1.4.5 Modélisation : modèle ICIM

De la même manière qu’a été défini le modèle ICEM pour l’émission, le modèle ICIM(Integrated Circuit Immunity Model) est en cours de mise au point, mais non encore validé.Il reprend intégralement le modèle ICEM (figure 3.1), mais le générateur de courant estsupposé être remplacé par son impédance équivalente en AC, et les modèles des protectionssont rajoutés sur les entrées/sorties et l’alimentation. Le document [4] donne plus dedétails sur le modèle.

1.5 Susceptibilité rayonnée

1.5.1 Méthodes de mesure

A ce jour, aucune méthode de mesure de la susceptibilité rayonnée orientée spécifi-quement circuits intégrés n’est encore normalisée ; toutes se trouvent en phase NP (NewProposal), ce qui devra donner à terme la norme IEC62132-5. En revanche, ces méthodess’inspirent largement de la norme IEC61000-4-3 pour les équipements. La tendance vadonc vers l’utilisation d’une cellule TEM de 150 kHz à 1 GHz, voire d’une cellule GTEMau-delà, de manière analogue à celle utilisée en émission rayonnée. Engel et al. [29] ontproposé cet usage dès 1996.Des chambres réverbérantes à brassage de modes (mode-stirring) sont également utilisées.Le principe repose sur la présence à l’intérieur de la chambre d’un objet métallique appelébrasseur, de grandes dimensions devant la longueur d’onde, en rotation autour d’un axe ;ce brasseur modifie en permanence les conditions aux limites de manière pseudo-aléatoire,ce qui permet d’obtenir des champs homogènes. Même si ces chambres sont connues de-puis 1968, les travaux de modélisation sont très récents. En CEM des composants, leséquipes concernées sont principalement celles de l’Université de Lille 1, de l’Université deClermont-Ferrand et du Politecnico di Torino ; le lecteur peut se référer entre autres auxthèses de F. Hoeppe [43] et de L. Musso [65].

1.5.2 Quelques travaux réalisés

Très peu de travaux spécifiques ont été réalisés sur la caractérisation de la suscepti-bilité rayonnée des circuits intégrés. Les principales équipes actives dans ce domaine se

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 40: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

20 Chapitre 1 : Problématique de la CEM des circuits intégrés

situent au Politecnico di Torino, à l’Université de Lille 1 et à l’INSA de Toulouse.D’une manière générale, les perturbations rayonnées, comme leurs homologues conduites,peuvent produire des changements d’état logique et des déplacements de points de fonc-tionnement par phénomène de redressement.Mardiguian [58] montre qu’en ce qui concerne les circuits logiques, une suite de pertur-bations rayonnées de même amplitude, insuffisantes individuellement pour provoquer unchangement d’état, peuvent y parvenir par "accumulation primaire". Parallèlement à cela,Whalen [103] évoque des changements permanents d’état logique obtenus par des champsd’amplitude suffisamment importante.Benbassou et al. [5] ont effectué des mesures de susceptibilité de portes logiques pardiaphonie sur des pistes de circuit imprimé, à 30 MHz. Ils en retirent les conclusionssuivantes :

– le couplage magnétique s’avère plus pénalisant que le couplage électrique– le classement des familles logiques par susceptibilité croissante est différent en élec-

trique et en magnétiqueLazaro et al. ([51] et [50]) ont étudié la dégradation des paramètres de transistors à effetde champ soumis à des impulsions hyperfréquences. Ils ont mis en évidence :

– l’existence de deux modes de dégradation du composant : une faible dégradation,en bruit uniquement, et une forte dégradation, en bruit et en signal

– le passage possible du composant dans l’un ou l’autre état au cours du temps– la validité de la mesure du courant de grille pour l’estimation de l’état de dégradation– deux raisons de ces dégradations : un courant de fuite sur la diode Schottky et un

courant de surface grille-sourceCes travaux servent de base à la mise en œuvre de mesures réelles en cellule TEM : uneéquipe de l’INSA de Toulouse et une équipe de l’ESEO travaillent actuellement sur lesujet.

1.6 Conclusion générale

Le domaine de la CEM des composants est relativement nouveau (même si un certainnombre de travaux plus anciens traitent de points spécifiques, la recherche a réellementdémarré vers 1996) et implique beaucoup de spécialités : CEM système, hyperfréquences,antennes et propagation, technologie et physique des composants, conception de circuitsintégrés ...Dans cette thèse, nous avons donc choisi de nous focaliser sur un seul sous-domaine : laconception de circuits intégrés en vue de minimiser les perturbations conduites émises,et plus particulièrement la modélisation, par simulation, du comportement dynamique encourant d’un circuit intégré. Pour ce faire, nous allons utiliser les concepts de la modélisa-tion comportementale et le langage VHDL-AMS, qui vont être présentés dans le chapitrequi suit.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 41: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Chapitre 2

Introduction à la modélisation

comportementale VHDL-AMS

2.1 Principes généraux et intérêt de la modélisation

comportementale

2.1.1 Principe de la modélisation comportementale

Les classes de représentation

Tout système physique, quel qu’il soit, peut être représenté de trois manières diffé-rentes. Cette classification et les définitions qui lui sont associées varient selon les auteurs.Nous retiendrons ici celle de Shi [80] reprise par Huss [44] :

1. par une description fonctionnelle, qui exprime uniquement la fonction principale dusystème, par exemple par des graphes de signal (signal flow)

2. par une description comportementale : indépendante de l’architecture du système,elle en explicite le fonctionnement par l’écriture de modèles, c’est-à-dire de repré-sentations mathématiques associant des variables (appelées variables d’état) et deséquations matérialisant les relations entre ces variables

3. par une description structurelle : elle matérialise directement l’architecture internedu système par l’association d’éléments qui peuvent eux-mêmes être décrits au ni-veau inférieur ; le processus ou bien peut être récursif jusqu’au niveau le plus bas,ou bien s’arrêter à un niveau précis (le bloc est alors décrit de manière comporte-mentale)

Huss [44] distingue description comportementale et description fonctionnelle dans le mondedes systèmes continus : alors que cette dernière ne se préoccupe que de la fonctionnalitéglobale du système sans appliquer de lois de conservation, la description comportemen-tale inclut au contraire les caractéristiques des entrées/sorties et les lois de conservation

21

Page 42: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

22 Chapitre 2 : Introduction à la modélisation comportementale VHDL-AMS

de l’énergie, ce qui nécessite la définition, pour chaque accès du système, de quantitésd’effort et de flux dont nous reparlerons au paragraphe 2.2.2. Un modèle fonctionnel peutêtre développé pour un logiciel de calcul comme Matlab/Simulink r©, tandis qu’un modèlecomportemental le sera pour un simulateur analogique. Cette distinction est soumise àcontroverse, cependant nous adopterons cette définition dans la suite de cette thèse.D’une manière générale, pour les systèmes électroniques, le passage automatique de ladescription comportementale à la description structurelle est appelé synthèse. Si cetteopération est déjà maîtrisée depuis longtemps en ce qui concerne les circuits numériques,elle est tout à fait d’actualité pour les circuits analogiques. On peut citer entre autres lestravaux de l’équipe de la Katholieke Universiteit Leuven [23] qui sont maintenant intégrésà des logiciels commerciaux.

Différents niveaux d’abstraction

Pour chacune des deux représentations (comportementale et structurelle), il est pos-sible de définir quatre niveaux d’abstraction, que ce soit pour le numérique ou l’analogique.Ces définitions sont actuellement sujettes à une certaine controverse entre les différentsauteurs ; une version assez répandue, que nous présentons ici, est donnée par Gajski etal. [37] pour le numérique et Lémery [52] pour l’analogique, et résumée dans les tableaux2.1 et 2.2. La figure 2.1 donne la représentation correspondante dans le diagramme en

Niveau d’abstraction Comportemental Structurel

Système Synoptiques, algorithmes Processeurs, mémoires

Micro-architecture Register Transfer Level (RTL) Registres, ALU

Logique Equations booléennes Portes logiquesDiagrammes d’état

Circuit Fonctions de transfert TransistorsDiagrammes temporels

Tab. 2.1 – Niveaux d’abstraction en numérique (d’après [37])

Y de Gajski et Kuhn1.Le sens de passage d’un niveau d’abstraction à un autre définit le type de méthodologieutilisée :

– la méthodologie "top-down" [37] est utilisée en numérique : grâce à des outils desynthèse puis de placement-routage, un modèle comportemental VHDL ou Veri-log du circuit, respectant certaines règles précises, est transformé en un layout detransistors élémentaires

1certains auteurs remplacent le terme "fonctionnel" par "comportemental" dans le diagramme, ce quiajoute à la confusion

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 43: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

2.1 Principes généraux et intérêt de la modélisation comportementale 23

Niveau d’abstraction Comportemental Structurel

Système Fonctions de transfert Convertisseurs, PLL, filtresDiagrammes H(s), H(z) Intégrateurs, multiplieurs ...

Fonctionnel Equations algébriques Amplis opérationnelslinéaires ou non, tables Comparateurs, sources ...

Circuit Macromodèles Transistors, R, L, C

Composant Modèles de composants Layout

Tab. 2.2 – Niveaux d’abstraction en analogique (d’après [52])

?

I Fonctionnel Structurel

Physique

Niveau

Système

Algorithmique

Blocs fonctionnels

Logique

Circuit

SystèmeAlgorithme

RTLLogique

Fonction de transfert

ProcesseurModule matériel

UAL, registrePorte, bascule

Transistor

Polygone

Cellule

Floorplan

Bloc

Circuit intégré

Fig. 2.1 – Diagramme en Y de Gajski et Kuhn

– la méthodologie "bottom-up" est surtout utilisée en analogique : à partir d’unschéma établi au niveau transistor, une caractérisation est effectuée et utilisée pourparamétrer un modèle comportemental de plus haut niveau de ce schéma ; ce modèleest ensuite utilisable pour une simulation globale du circuit considéré

Ces deux méthodologies peuvent être combinées le cas échéant. Après synthèse et placement-routage d’un circuit numérique, les temps de propagation des signaux, calculés à partirdes éléments parasites (résistances et capacités des pistes de métal), peuvent être ensuiteutilisés pour "rétroannoter" (backannotate) le modèle comportemental, améliorant sa fi-délité par rapport au circuit réel.Inversement, dans le cas de circuits analogiques ou mixtes, dont la partie analogique est"full-custom" (conçue entièrement au niveau transistor), une méthodologie "top-downorientée par les contraintes" [56] peut être utile : il est possible de vérifier le fonctionne-ment du circuit à partir des caractéristiques haut niveau d’un ampli (par exemple produitgain-bande, slew rate ...) ou d’un convertisseur (par exemple résolution, non-linéarités ...) ;dans un second temps, le bloc analogique est réalisé à partir des caractéristiques optimales

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 44: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

24 Chapitre 2 : Introduction à la modélisation comportementale VHDL-AMS

obtenues lors de la simulation comportementale. Cette méthode permet un gain de tempsnon négligeable lors de la conception.L’avantage de la simulation comportementale haut niveau est sa rapidité ; un compromisdoit être néanmoins trouvé entre rapidité et précision selon les impératifs du modèle.Néanmoins, cette simulation peut être tout à fait suffisante pour la validation du fonc-tionnement d’un système.

2.1.2 Langages de modélisation comportementale pour l’analo-gique

Tout langage, qu’il soit lié ou non à l’électronique, permet de modéliser un systèmede façon comportementale, mais de manière plus ou moins commode. Dans ce qui suit,nous allons donner un panorama aussi complet que possible des langages permettant lamodélisation de systèmes analogiques, VHDL et Verilog étant déjà bien connus pour lessystèmes numériques.

SPICE

Contrairement à une idée souvent reçue, SPICE n’est pas réservé à une descriptionstructurelle, mais permet également la modélisation comportementale [31]. En effet, laplupart des moteurs de simulation compatibles SPICE, par exemple Eldo r©, proposentdes macromodèles de sources commandées, de modulateurs, de fonctions de transfertcontinues ou échantillonnées ...Le problème de SPICE est son orientation quasi-exclusive vers l’analogique : la descriptionde circuits numériques est extrêmement fastidieuse car elle ne peut se faire qu’au niveauporte. Il n’est donc pas adapté à la simulation de systèmes mixtes ou multi-domaines.

C/C++

Des langages purement informatiques comme le C ou le C++ peuvent être utilisés pourde la modélisation comportementale. Il est possible de décrire facilement des relationslinéaires entre des variables d’entrée et des variables de sortie, que ce soit au niveauanalogique ou numérique. Cependant, le problème des équations différentielles se pose :la dérivation des variables par rapport au temps à chaque pas de simulation nécessiteune interface spécifique entre les modèles C et le simulateur. C’est ce qui est proposé parexemple par Mentor Graphics r© avec Eldo r©, sous le terme CFAS (C Functional AnalogSimulation) [61].

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 45: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

2.1 Principes généraux et intérêt de la modélisation comportementale 25

MAST, Modelica

Le langage MAST, proposé par Analogy r© en 1990 en complément de leur simula-teur Saber r©, est la première tentative réussie de définition d’un langage de descriptioncomportementale réellement orienté systèmes multi-technologiques (essentiellement élec-tromécaniques). Il est encore très utilisé dans l’industrie, mais ses principaux inconvénientssont :

– son absence de normalisation par l’IEEE– sa syntaxe éloignée de VHDL et Verilog– sa mauvaise adaptation à la description de systèmes numériques

Modelica, quant à lui, a été développé depuis 1997 par l’association du même nom pour ladescription de systèmes dynamiques. Comme MAST, il est bien adapté au cas des systèmesmulti-technologiques, très peu à celui des systèmes mixtes analogiques/numériques.

VHDL-A, VHDL-AMS, Verilog-A, Verilog-AMS

A partir du langage HDL-A ont été proposées sous le terme VHDL-A, entre autrespar Shi [30] et Vachoux [102], un certain nombre d’extensions visant à une compatibilitéascendante totale avec VHDL’93. Pour ce faire, des évolutions syntaxiques ont permis unemeilleure intégration des descriptions analogiques à l’intérieur du langage, avec le supportdes descriptions structurelles.Finalement VHDL-A a été complété par des extensions permettant la simulation de sys-tèmes multi-technologiques (pouvant intégrer de l’électronique, de la mécanique, du ther-mique ...) pour devenir VHDL-AMS (Analog and Mixed-Signal). Son grand intérêt estjustement l’unification de représentation des systèmes et d’écriture des modèles qu’il pro-cure entre le monde numérique et le monde analogique. Nous en parlerons plus longuementau paragraphe suivant.Parallèlement, des extensions analogiques puis multi-technologiques ont été égalementajoutées à son concurrent Verilog, aboutissant finalement à Verilog-A (1996) puis Verilog-AMS (1998). Une refonte complète est en cours sous l’impulsion d’Accellera, afin de fu-sionner ces extensions avec celles de SystemVerilog (IEEE 1364-2001).Etant donné que les modèles numériques des composants utilisés pour cette étude sontdéjà écrits en VHDL et que les outils disponibles à l’époque étaient beaucoup mieux adap-tés au VHDL-AMS, nous avons délibérément fait le choix, dans le reste de cette thèse,d’utiliser ce dernier langage plutôt que Verilog-AMS. Le paragraphe suivant sera doncconsacré à la présentation de VHDL-AMS.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 46: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

26 Chapitre 2 : Introduction à la modélisation comportementale VHDL-AMS

2.2 Principes de base du langage VHDL-AMS

2.2.1 Introduction

Le langage VHDL-AMS, dont la dénomination officielle est VHDL 1076.1-1999, est uneextension du langage VHDL "classique" 1076-1993 avec lequel il offre une compatibilitéascendante totale. Il constitue la synthèse entre plusieurs extensions analogiques de VHDL.Ce langage permet de modéliser tout système dont le comportement peut être décrit pardes équations différentielles algébriques (Differential Algebraic Equations) en fonction dutemps2. Il peut prendre en compte des systèmes conservatifs ou non, multi-technologiques.Pour plus d’informations sur le langage lui-même, le lecteur pourra se référer au tutorialDAC’99 [9], à l’ouvrage de Y. Hervé [40], au document d’A. Vachoux [101] ou aux thèsesde O. Alali [1] et J. Oudinot [68]. Ce paragraphe se propose simplement de donner lesinformations utiles à la compréhension des chapitres qui suivent.

2.2.2 Représentation des grandeurs analogiques

Exemple simple

Afin de mieux appréhender le langage, considérons le cas d’un composant analogiquesimple, par exemple une inductance, et donnons-en un modèle VHDL-AMS :

LIBRARY IEEE_PROPOSED;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

ENTITY Inductor IS

GENERIC (L : real := 1.0e-6);

PORT (TERMINAL p,n : electrical);

END ENTITY Inductor;

ARCHITECTURE a OF Inductor IS

QUANTITY Vl ACROSS Il THROUGH p TO n;

BEGIN

Vl == L * Il’dot;

END ARCHITECTURE a;

Bornes ("terminals")

VHDL-AMS, comme nous l’avons dit, permet de décrire des systèmes conservatifs.Dans ce cas, le langage définit des bornes ou TERMINALs, qui sont en fait les nœuds analo-giques pour lesquels les lois de conservation de l’énergie (lois de Kirchhoff pour l’électricité)doivent s’appliquer. Ces bornes peuvent soit être internes à un circuit (et donc définies à

2actuellement, le temps est la seule variable admise pour la dérivation

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 47: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

2.2 Principes de base du langage VHDL-AMS 27

l’intérieur d’une architecture), soit servir d’accès analogiques externes (dans ce cas, ellessont définies dans la partie PORT de l’entité comme dans l’exemple).Ces bornes ont pour type une "nature" relative à une discipline de la physique. Ces naturessont définies dans des packages spécifiques dont s’occupe le Working Group IEEE1076.1.1.On peut citer par exemple le package ELECTRICAL_SYSTEMS qui définit entre autres lanature electrical. Elles permettent de définir pour chaque domaine physique des tolé-rances pour la simulation3, ainsi que de clarifier l’écriture de modèles pour les systèmesmulti-technologiques (que nous n’évoquerons pas ici).Chaque package définit une référence de potentiel pour le domaine : ici, electrical_ref

correspond à la masse électrique du système.

Quantités

VHDL-AMS permet de représenter les inconnues des équations différentielles (DAEs)sous forme de QUANTITY. Ces quantités peuvent être soit de type standard VHDL (réelpar exemple), soit plus spécifiquement d’un sous-type relatif à une nature définie précé-demment (exemple : voltage ou current pour la nature electrical).Ces quantités peuvent être soit "libres" (intermédiaires de calcul ou bien interfaces pourdes systèmes non conservatifs), ou bien liées à des bornes. Dans ce dernier cas, pour uncouple de bornes donné, on peut définir des quantités ACROSS et des quantités THROUGH

selon la syntaxe donnée dans l’exemple. Une quantité ACROSS est homologue à un effort(tension en électricité) et une quantité THROUGH à un flux (courants en électricité) ; plu-sieurs quantités THROUGH entre deux mêmes bornes sont automatiquement additionnéespar le simulateur. En cas d’omission de la seconde borne, c’est la borne référence qui estutilisée par défaut.Il est nécessaire en VHDL-AMS de bien distinguer quantités et signaux. Ces dernierspeuvent être eux aussi réels et non plus seulement énumérés comme en VHDL (bit,std_logic ...) ; cependant, alors que les quantités sont définies en temps continu, les si-gnaux le sont toujours en temps discret et prennent donc leurs valeurs à des instantsprécis.

2.2.3 Equations différentielles

Les relations entre les quantités sont exprimées par des équations différentielles algé-briques par rapport au temps, qui sont appelées "simultaneous statements" en anglais.Afin de les différencier des affectations de signaux et variables ainsi que des tests, ellesutilisent la syntaxe "==".Le sens d’écriture de ces équations n’a aucune importance pourvu qu’elles comprennentau moins une quantité (elles peuvent aussi contenir des variables, signaux ...) ; le simula-teur tente simplement d’égaliser numériquement les deux membres de l’équation.

3qui ne sont pas encore prises en compte par les outils du commerce

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 48: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

28 Chapitre 2 : Introduction à la modélisation comportementale VHDL-AMS

Une règle capitale en VHDL-AMS pour la résolubilité des modèles est que le nombred’équations doit être égal à la somme du nombre de quantités THROUGH et du nombre dequantités libres (et du nombre de quantités d’interface de sortie si l’outil le supporte). Sice n’est pas le cas, ceci signifie en général qu’il y a un problème d’écriture dans le modèle.

2.2.4 Attributs

De même que pour les signaux en VHDL, VHDL-AMS permet de définir des attributspour les quantités (certains d’entre eux peuvent d’ailleurs également être utilisés pour lessignaux réels spécifiques à VHDL-AMS).

Dérivation/Intégration

La dérivation et l’intégration d’une quantité par rapport au temps s’effectuent respec-tivement par les attributs ’dot et ’integ. L’exemple de l’inductance permet d’illustrerl’utilisation du premier cité.Ces attributs sont cascadables : il est possible d’obtenir la dérivée seconde par ’dot’dot.Bien souvent, il est préférable d’utiliser l’attribut ’dot, car ’integ est beaucoup plus sen-sible aux conditions initiales, qui doivent être donc être spécifiées de façon très explicite.On peut également ranger sensiblement dans cette catégorie l’attribut ’delayed qui,comme pour les signaux VHDL, permet d’effectuer un décalage temporel d’une quantitépar rapport à une autre ; ceci est très utile par exemple pour modéliser les temps depropagation ou bien de conversion.

Fonctions de transfert

VHDL-AMS offre la possibilité d’assigner directement à une quantité le résultat duproduit d’une autre par une fonction de transfert. Cette dernière peut être définie soitpar sa transformée de Laplace (attribut ’ltf) pour les systèmes continus, soit par satransformée en Z (attribut ’ztf) pour les systèmes échantillonnés. Dans les deux cas, lespôles et zéros de la fonction sont donnés par des vecteurs de constantes réelles.

Slew-rate et rampe

La quantité Q’slew(ddt1,ddt2) suit les évolutions de la quantité Q, avec une limitationà ddt1 (en montant) et ddt2 (en descendant) de la dérivée de Q par rapport au temps ; cecipermet de modéliser facilement par exemple le slew-rate d’un amplificateur. Cet attributest également utilisable pour un signal réel : S’slew(ddt1,ddt2) ; ici, les dérivées sontsimplement fixées à ddt1 et ddt2.La quantité S’ramp(tr,tf) est obtenue à partir du signal réel S par fixation du temps demontée à tr et du temps de descente à tf. Ceci permet de transcrire de façon réaliste lessignaux numériques dans le monde analogique.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 49: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

2.2 Principes de base du langage VHDL-AMS 29

Détection de seuil

L’attribut ’above, appliqué à une quantité, vaut true si la quantité est supérieure auseuil spécifié, false sinon. Cet attribut a surtout pour avantage de générer un événementvers le simulateur numérique, ce qui permet de l’utiliser pour synchroniser des processesVHDL.Réciproquement au cas précédent, cette construction permet donc de transcrire des gran-deurs analogiques dans le monde numérique, par exemple pour un trigger d’entrée logique :

PROCESS

BEGIN

WAIT ON Vin’above(Vih), Vin’above(Vil);

IF Vin’above(Vih) THEN

input <= ’1’;

ELSIF Vin’above(Vil) THEN

input <= ’X’;

ELSE

input <= ’0’;

END IF;

END PROCESS;

2.2.5 Alternatives

VHDL-AMS rajoute entre autres à VHDL la construction IF ... USE ... ELSE ... END

USE. Elle permet d’effectuer un choix entre plusieurs DAEs selon une condition. Cecipermet par exemple de modéliser un limiteur :

IF Vin’above(thres) USE

Vout == thres;

ELSE

Vout == Vin;

END USE;

2.2.6 Discontinuités

Le simulateur VHDL-AMS doit être capable de gérer correctement dans le domainetemporel les discontinuités des quantités ou de leurs dérivées, mais l’algorithme utilisé neles détecte pas automatiquement. Si une telle discontinuité se produit dans ces conditions,le pas du simulateur n’étant pas modifié, la convergence de l’algorithme de résolution deséquations différentielles est plus tardive, et celui-ci produit donc des résultats incorrectsjuste après cette discontinuité. Ceci se produit en particulier si une quantité est mise àjour en temps discret dans un process, comme dans les exemples que nous présenterons

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 50: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

30 Chapitre 2 : Introduction à la modélisation comportementale VHDL-AMS

dans les chapitres suivants.La solution consiste donc à réduire le pas de simulation aux alentours des discontinuités,l’algorithme effectuant si nécessaire un retour en arrière. Ceci est réalisé par la construc-tion BREAK ON suivi de la quantité subissant la discontinuité. Cette construction peut êtreégalement utilisée avec un signal afin de réinitialiser le simulateur lors du changementd’état de celui-ci.La construction BREAK ... WHEN permet quant à elle de spécifier explicitement de nou-velles conditions initiales lors d’un événement ; elle n’est malheureusement pas implémen-tée par l’ensemble des simulateurs.

2.2.7 Domaines de simulation

Le langage VHDL-AMS permet d’indiquer le domaine en cours (DC, transitoire, AC)lors de la simulation, ce qui permet de spécifier à l’intérieur d’un modèle des conditionsexplicites pour le calcul du point de fonctionnement DC par exemple :

IF domain = quiescent_domain USE

V == 0.0;

ELSE

I == C * V’dot;

END USE;

Ceci permet de contourner une limitation de la plupart des simulateurs actuels, qui neprennent pas en compte la construction BREAK pour les conditions initiales, citée plushaut.Le langage distingue également time_domain et frequency_domain.

2.2.8 Divers

La variable réelle prédéfinie now donne le temps de simulation actuel (écoulé depuisle début de la simulation). Nous nous en servirons lors du prochain chapitre pour lamodélisation.

2.3 Méthodes et outils actuels pour la modélisation

VHDL-AMS

2.3.1 Outils de modélisation VHDL-AMS

Outils universitaires

Un certain nombre d’outils universitaires ont été développés pour la compilation et lasimulation VHDL-AMS. On peut citer en particulier :

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 51: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

2.3 Méthodes et outils actuels pour la modélisation VHDL-AMS 31

– SIERRA de l’Université de Cincinnati [66], évolution de l’ancien simulateur SEAMS,qui génère des modèles en langage C à partir du VHDL-AMS

– BVHDLA développé à l’ENST Paris par O. Alali dans le cadre de sa thèse [1] qui,lui, génère des modèles SPICE à partir de VHDL-AMS

Ces outils, bien que gratuits, n’implémentent qu’une petite partie du langage VHDL-AMS privilégiant les systèmes analogiques, et ont délibérément choisi de laisser de côtébeaucoup de constructions du langage VHDL ’93. La description de systèmes possédantdes parties numériques complexes, tels que les circuits que nous voulons simuler, est doncimpossible avec ces outils. Nous n’avons donc pas poussé plus avant leur étude.

Outils industriels

Deux éditeurs principaux se partagent le marché des logiciels de simulation VHDL-AMS : Ansoft r© (par rachat des outils Simec r©) et Mentor Graphics r©. Dolphin Integration r©

(Smash) et FTL Systems r© (Exploration, Pathway, Centauri) produisent également desoutils plus confidentiels, et surtout moins complets à la date où a été effectué le choix dusimulateur (janvier 2002).

Ansoft Un premier outil gratuit, venant en fait du monde universitaire, est hAMSter r©

[82]. Il a été développé par Simec, une entreprise regroupant des chercheurs de l’Universitéde Chemnitz (Allemagne), et fonctionne sous Windows r©.Cet outil supporte un sous-ensemble assez complet de VHDL-AMS, que les autres simula-teurs n’ont pas encore implémenté. Cependant, il comprend de nombreux bugs, ne gère niles tableaux, ni les fichiers, ni les attributs à l’intérieur des tests, et est limité à l’analysetransitoire (pas d’analyse AC par exemple). Nous ne l’utiliserons pas pour cette étude.Cet outil est maintenant intégré dans Simplorer r© [10], outil payant, sous Windows éga-lement, mais dont il existe une version gratuite (SV) pour le marché de l’éducation.Simplorer associe une interface graphique au moteur Simec amélioré (analyse AC parexemple), qui facilite la mise en œuvre de systèmes complexes en permettant de reliergraphiquement des blocs eux-mêmes décrits en VHDL-AMS. Il comprend également lapossibilité d’importer des modèles SPICE ou même Maxwell (éléments finis), ce qui enfait un outil très complet, mais d’un coût prohibitif en version complète, même pour lemarché de l’éducation (environ 30000 euros pour une licence en juin 2003).

Mentor Graphics Cet éditeur propose deux logiciels basés sur le même cœur de simu-lation, mais à visée radicalement différente.ADVance-MS r© [15] est l’outil originel de Mentor pour la simulation VHDL-AMS. Il fonc-tionne sur plates-formes UNIX (y compris Linux), utilise un moteur de simulation uniquepour l’analogique et le numérique, dérivé d’Eldo r©, et peut s’interfacer avec ModelSim r©

pour les simulations numériques évoluées. Pour des besoins particuliers, il peut utiliser lecœur Eldo-RF ou bien le simulateur rapide niveau transistor Mach r© [12]. Cet outil est

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 52: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

32 Chapitre 2 : Introduction à la modélisation comportementale VHDL-AMS

très adapté à la simulation et à la modélisation de circuits intégrés, ce qui le rend trèsintéressant pour notre étude, mais lui non plus n’implémente pas l’ensemble du langageVHDL-AMS, et nous avons contribué à sa mise au point tout au long de cette thèse. Nousavons démarré avec la version 1.1_1.1, en sommes à la 3.0_2.1, et le produit est encoreen phase de mise au point.SystemVision r© [14] est basé sur le portage sous Windows r© du moteur de simulation précé-dent, avec une interface graphique qui le met directement en concurrence avec Simplorer r©.Il existe en version éducation gratuite, et la version complète est actuellement (septembre2003) en téléchargement libre. Cet outil, tout comme son concurrent, est plus adaptéà la conception multi-technologique au niveau système, en particulier dans le domaineautomobile.

Conclusion sur les outils

Il est à remarquer qu’aujourd’hui, aucun des outils présents sur le marché n’implé-mente l’ensemble de la norme VHDL-AMS. Il est donc plus que jamais indispensable,avant de commencer à coder un modèle quel qu’il soit, d’examiner avec beaucoup d’at-tention le sous-ensemble du langage réellement implémenté par l’outil utilisé, afin d’éviterdes modifications ultérieures souvent substantielles. Ceci est beaucoup plus vrai qu’ensimulation numérique, et pose souvent un problème pour les développeurs de modèles.

2.3.2 Méthodes de modélisation VHDL-AMS

De SPICE à VHDL-AMS ... et réciproquement

Même si VHDL-AMS est un langage de description comportementale de haut niveau,il existe plusieurs façons de décrire le fonctionnement d’un système ou circuit dans celangage.En particulier, un certain nombre de publications ont pour objet la traduction pure etsimple d’un circuit SPICE structurel en VHDL-AMS. Par exemple, KasulaSrinivas [46] atraduit des modèles SPICE purement électriques de composants actifs (diodes, transistorsbipolaires, transistors MOS) en VHDL-AMS sous forme d’équations différentielles. Lessimulateurs actuels compatibles SPICE obtenant et résolvant directement ces dernières àpartir de la netlist, le temps de simulation est identique pour les deux descriptions commenous avons pu le vérifier sur quelques exemples. On peut alors s’interroger sur le bien-fondé de cette simple traduction : elle ne profite par exemple pas des apports du langageen matière de description multi-technologique.L’intérêt de VHDL-AMS dans le contexte précis de la modélisation d’un composant actifest justement de simplifier les modèles électriques en ne retenant que le strict nécessaire,et de les coupler entre autres à des modèles thermiques. Lallement et al. [48] proposent parexemple d’ajouter au modèle EKV du transistor MOS, simplifié pour l’occasion, l’influence

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 53: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

2.3 Méthodes et outils actuels pour la modélisation VHDL-AMS 33

de la température.Réciproquement, alors que les simulateurs VHDL-AMS n’existaient pas encore, une idéemise en œuvre entre autres par Alali [1] consistait à traduire purement et simplement lesmodèles VHDL-AMS en netlists SPICE, en matérialisant les équations différentielles pardes composants passifs (résistances, inductances et capacités). Ici, l’aspect compatibilitéascendante avec VHDL’93 n’a pas été pris en compte.

Modélisation comportementale

Une démarche plus proche de la philosophie VHDL-AMS consiste à modéliser uni-quement le comportement d’un système. Rappelons qu’il ne s’agit pas de modélisationfonctionnelle : il est ici tenu compte des lois de conservation de l’énergie et donc des in-teractions pouvant s’exercer entre les entrées d’un modèle comportemental et les sortiesde son prédécesseur.Les deux principales difficultés de l’écriture d’un modèle comportemental sont :

– la détermination des paramètres (que l’on préfèrera instancier en GENERICs, voirci-après) que le concepteur devra ajuster pour aligner le comportement du modèlesur celui du circuit physique

– les valeurs de ces paramètres permettant justement une concordance aussi parfaiteque possible entre les deux simulations

A cet effet, beaucoup d’outils de caractérisation automatique de circuits existent sur lemarché, mais peu permettent l’ajustement direct de modèles VHDL-AMS. Oudinot [70]utilise une méthode basée sur les logiciels Opsim r© et SimPilot r© de Mentor Graphics r©

[13], qui permet d’ajuster automatiquement les GENERICs d’un modèle en fonction d’unou plusieurs critères sur les résultats de simulation ; le critère utilisé est la minimisationde la fonction d’erreur entre les résultats obtenus à partir du modèle et ceux obtenus àpartir du circuit au niveau transistor (figure 2.2).Mentor Graphics r© a repris ce principe dans son récent outil CommLib BMC r© (Beha-vioral Model Calibration) [11], qui propose justement une bibliothèque de modèles déjàparamétrés et des véhicules de test pour la caractérisation automatique en fonction de lanetlist de transistors. Cependant l’outil ne propose pas pour le moment l’intégration deces véhicules de test pour des modèles définis par l’utilisateur.En ce qui concerne le choix lui-même des paramètres des modèles, Rosenberger [78] pro-pose une méthode, reprise et détaillée dans [44], basée sur la théorie des systèmes dyna-miques, qui permet d’obtenir une excellente conformité de la réponse temporelle, quelleque soit la nature des équations qui décrivent le circuit physique. Cependant celle-ci n’estpas applicable, du moins directement, aux systèmes événementiels, dont les équationspeuvent varier au cours du temps, tels que ceux que nous allons étudier par la suite.A fortiori, l’écriture du modèle peut varier considérablement selon le bloc fonctionnelconsidéré (cœur, mémoire, entrée/sortie). Nous allons donc, dans les chapitres suivants,effectuer ce paramétrage manuellement.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 54: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

34 Chapitre 2 : Introduction à la modélisation comportementale VHDL-AMS

Spécifications

Circuit (transistors)

Modèle VHDL-AMS

*

j

-

-

Testbench unique

6

?

6

Erreur

+

-

Optimisation

Fig. 2.2 – Détermination des paramètres d’un modèle VHDL-AMS (d’après[70])

2.4 Un exemple d’utilisation de VHDL-AMS

2.4.1 Présentation

Le premier projet étudié au cours de cette thèse a pour objet de montrer tout l’intérêtde VHDL-AMS pour la modélisation de systèmes mixtes, et surtout la possibilité d’in-clure dans une même modélisation plusieurs classes de représentation (comportemental,structurel) et plusieurs niveaux d’abstraction (du comportemental jusqu’au composant,i.e. transistor). L’intérêt de cette description multi-niveaux sera démontré au paragraphe3.5.Cette étude a été publiée dans les congrès FTFC’01 [75] et ISQED’02 [73] ; une versionaméliorée, reprenant le système réel, a été ensuite publiée à FTFC’03 [99].Le système étudié a été développé par la société Neurotech S.A. en collaboration avecl’Université Catholique de Louvain. Il consiste en un dispositif de transmission transcu-tanée de puissance et de données par un lien inductif (figure 2.3).Le système, basé sur un oscillateur classe E, est capable de transmettre une puissancesupérieure à 300 mW, avec un rendement compris entre 36 et 54 %, ainsi que des donnéesà un débit de 3 Mbps en continu. La figure 2.4 en donne le schéma bloc de principe.Il comprend au primaire :

– un oscillateur classe E adaptatif bi-fréquence, dont la commutation s’effectue parl’intermédiaire de "capacités paramétrables" brevetées par Neurotech S.A.

– un codeur Manchester purement numérique, générant les trames correspondantes àpartir des données à transmettre

– un comparateur générant l’horloge d’émission clk12 en synchronisme avec la tensionde commande du transistor MOS de l’oscillateur

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 55: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

2.4 Un exemple d’utilisation de VHDL-AMS 35

modul.

driver

-data

RLC

?power

backchannel

demod.

power

-data

demod.data

-

?

mod.

6

Fig. 2.3 – Synoptique global du système de transmission transcutanée

et au secondaire :– un redresseur double alternance destiné à la récupération de puissance (tension

continue Vdc)– un comparateur RF récupérant les bits modulés– un comparateur mixte démodulant les bits Manchester afin de récupérer les données

modulantesLes données modulantes étant à 3 Mbps, les données Manchester ont, elles, un débit de 6Mbps (chaque bit modulant est représenté par "0" suivi de "1", ou l’inverse). Le systèmefonctionnant autour de 12 MHz, chaque bit Manchester sera donc représenté par deuxpériodes de signal à une des deux fréquences, suivies de deux périodes à l’autre fréquence(figure 2.5).Pour plus de détails techniques, le lecteur pourra se référer à la thèse de P. Doguet [25]ainsi qu’au travail de fin d’études d’O. Latte [49].

2.4.2 Modélisation

L’objectif de la modélisation VHDL-AMS du système est double :

1. vérifier la transmission correcte de l’information numérique de l’entrée à la sortie dusystème

2. étudier l’influence de divers paramètres (coefficient de couplage du transformateur,réseau déphaseur) sur la transmission de l’information ainsi que sur le rendementen puissance

L’intérêt de VHDL-AMS réside ici dans la possibilité de coder des modèles comportemen-taux mixtes sans dévoiler le circuit au niveau transistor, qui peut être confidentiel. Dans ceprojet, deux blocs répondent à ce critère de confidentialité : la capacité paramétrable (quiest brevetée) et le comparateur de démodulation. Ceci montre au passage tout l’intérêtdu langage pour la définition de blocs de propriété intellectuelle (IP) analogiques.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 56: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

36 Chapitre 2 : Introduction à la modélisation comportementale VHDL-AMS

Lchoke

CS

Rs1 Rs2

L2L1

C1

RF B

CF B

C2

470 nF

- Vout- Vdc

2 ∗ 1µF

oscil

Vcmd

clk12Vcmd

Vdd/2

k

]

M

-

manchester---

resetclk12load

frame8

Vout

Vdc/2

comp_demod

-

-

clk3

out_demodclk12rec

Génération de l’horloge d’émission

comp_rf

shift

Vdd

-reset -

reset_demod

Fig. 2.4 – Schéma bloc du système de transmission transcutanée

Capacité paramétrable

Une capacité paramétrable est une capacité pouvant commuter entre deux valeursdiscrètes selon l’état d’un signal de commande, la commutation s’effectuant sur un passageà zéro de la tension à ses bornes. Le schéma électrique est breveté par Neurotech S.A.,mais il est possible d’en donner un modèle comportemental VHDL-AMS, illustré par le

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 57: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

2.4 Un exemple d’utilisation de VHDL-AMS 37

"1"

"0"

Fig. 2.5 – Données Manchester encodées

schéma figure 2.6.

C1 C2

-

T1

T2

cmd

6

Vc

Fig. 2.6 – Capacité paramétrable

Le signal cmd_sync est obtenu à partir du signal d’entrée cmd par synchronisation dece dernier sur un passage par zéro de la tension aux bornes de la capacité, grâce à laconstruction WAIT ON Vc’above(0.0) ; c’est ce signal resynchronisé qui commute entreles valeurs C1 et C2 la capacité vue entre les bornes. Le code source VHDL-AMS en estdonné à l’annexe A.1.1.

Comparateurs RF et de démodulation

Le comparateur RF a pour objet de démoduler les données reçues au secondaire dutransformateur, par simple seuillage de la tension alternative Vout par rapport à la moitiéde la tension d’alimentation redressée Vdc. Ce modèle montre comment il est possiblede ne conserver dans un modèle que la fonction que l’on souhaite modéliser, en faisantabstraction du circuit réel. Son impédance d’entrée étant quasi-infinie et son impédancede sortie quasiment nulle, on se contente ici d’un modèle fonctionnel, et l’on considèreque la sortie est un signal numérique, ce qui rend plus simple l’écriture du modèle suivant(comparateur de démodulation) sans affecter la validité de la description. Le temps depropagation du comparateur RF, mesuré sur le circuit physiquement réalisé, est ici décritde la manière la plus simple par l’utilisation de l’attribut ’delayed du VHDL standard,comme indiqué à l’annexe A.1.2.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 58: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

38 Chapitre 2 : Introduction à la modélisation comportementale VHDL-AMS

Le principe du comparateur de démodulation est le suivant : les données modulées Man-chester (fig 2.5) ayant été récupérées par le comparateur RF, la démodulation s’effectuepar groupe de 4 impulsions ; on compare les largeurs cumulées de deux impulsions puisdes deux suivantes, ce qui permet de reconnaître l’état d’un bit modulant. La conditionindispensable, traitée par un bloc situé à un plus haut niveau hiérarchique et non évoquéeici, est de s’assurer que la première impulsion démodulée corresponde effectivement audébut d’un bit modulant.Le circuit réel repose sur la charge à courant constant de deux capacités (une par groupede deux impulsions) pendant la durée effective des deux impulsions, et la comparaisondes tensions finales aux bornes de ces capacités. Le modèle VHDL-AMS, lui, ne travaillequ’en numérique et réalise directement une mesure de temps sur le signal clk12rec pouren déduire le signal out_demod. On peut voir que ce modèle, codé sans machine d’étatpour des raisons de rapidité d’écriture, et qui ne repose absolument pas sur le principedu circuit à bas niveau, montre clairement le fonctionnement du dispositif sans en révélerl’architecture. Le source en est donné à l’annexe A.1.3 ; le premier process ne s’occupeque de la division par 4 du signal d’horloge clk12rec afin d’obtenir l’horloge bit clk3.

2.4.3 Résultats de simulation

La figure 2.7 montre à gauche les résultats de simulation obtenus pour les signauxnumériques et à droite ceux obtenus pour la tension aux bornes de la capacité C1.On constate que la trame frame présentée à l’entrée du codeur Manchester est bien ré-cupérée à la sortie out_demod du démodulateur. Le bon fonctionnement des capacitésparamétrables est également démontré par la continuité de la tension aux bornes de lacapacité C1 lors des commutations. Le signal freq_shift représente la commande de cescapacités, et l’on constate bien la variation de fréquence de l’horloge d’émission clk12,sortie du comparateur.La simulation SPICE a été effectuée par O. Latte pour l’oscillateur uniquement, et succes-sivement pour chaque fréquence. Les résultats obtenus avec VHDL-AMS sont tout à faitconformes à ceux obtenus avec SPICE pour cette partie ; il a été par contre possible ici desimuler entièrement le système, ce qui est impossible avec SPICE (du moins simplement).De plus, le temps de simulation du système complet est inférieur d’un facteur 5 à celui dela simulation SPICE de l’oscillateur seul.

2.4.4 Conclusion

Dans cet exemple, l’utilisation du langage VHDL-AMS nous a permis de valider en-tièrement le fonctionnement d’un système mixte avec un seul et même outil, et ce encombinant plusieurs types de description (fonctionnelle pour le comparateur RF, compor-tementale pour la capacité paramétrable et le démodulateur, structurelle pour l’oscillateurclasse E).

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 59: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

2.5 Conclusion générale 39

File : oscil.dou

0.0 1.0e-50.1 0.90.2 0.80.3 0.70.4 0.60.5s

:oscil_test:reset

0.0 1.0e-50.1 0.90.2 0.80.3 0.70.4 0.60.5s

:oscil_test:shift

0.0 1.0e-50.1 0.90.2 0.80.3 0.70.4 0.60.5s

:oscil_test:clk12

0.0 1.0e-50.1 0.90.2 0.80.3 0.70.4 0.60.5s

:oscil_test:load

0.0 1.0e-50.1 0.90.2 0.80.3 0.70.4 0.60.5s

:oscil_test:clk12rec

0.0 1.0e-50.1 0.90.2 0.80.3 0.70.4 0.60.5s

:oscil_test:clk3

0.0 1.0e-50.1 0.90.2 0.80.3 0.70.4 0.60.5s

:oscil_test:out_demod

0.0 1.0e-50.1 0.90.2 0.80.3 0.70.4 0.60.5s

:oscil_test:frame

U

U

xca

5.8 7.8e-66.0 7.66.2 7.46.4 7.26.6 7.06.8s

:oscil_test:oscil:freq_shift_1:3

5.8 7.8e-66.0 7.66.2 7.46.4 7.26.6 7.06.8s

:oscil_test:oscil:clk12_1:3

5.8 7.8e-66.0 7.66.2 7.46.4 7.26.6 7.06.8s

-60

60

-40

40

-20

20

0

S(:oscil_test:oscil:vc1)_1:4

Signaux numériques Tension aux bornes de C1

Fig. 2.7 – Résultats de simulation du système de transmission transcutanée

Des travaux similaires ont été présentés sur la simulation de systèmes multi-technologiques,qu’il s’agisse d’un disque dur [69] ou d’un système d’injection à rampe commune pour au-tomobile [3]. Ils permettent d’appréhender toute la puissance du langage et des outilsassociés.

2.5 Conclusion générale

Nous avons vu dans ce chapitre les principes de la modélisation comportementale ainsique son intérêt. Les modèles comportementaux de haut niveau permettent de décrireavec une précision suffisante les phénomènes physiques essentiels pour une applicationdonnée, sans requérir à une description structurelle bas niveau (de type SPICE) qui seraitpénalisante en termes non seulement de temps de simulation, mais aussi de confidentialité.Le langage VHDL-AMS est particulièrement bien adapté à ce niveau de modélisation ; ilpermet en outre la réutilisation de modèles numériques VHDL sans modification. Il s’agitdonc du langage de prédilection pour la modélisation de systèmes déjà mixtes, ou comme

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 60: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

40 Chapitre 2 : Introduction à la modélisation comportementale VHDL-AMS

dans le cas qui nous intéresse plus particulièrement, lorsqu’il s’agit d’adjoindre une partieanalogique à un système numérique existant.Les trois chapitres suivants seront par conséquent consacrés à la modélisation VHDL-AMSdu courant dynamique d’un microcontrôleur, tout d’abord au niveau du cœur, puis desmémoires et enfin des entrées/sorties.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 61: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Deuxième partie

Contribution originale

41

Page 62: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de
Page 63: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Chapitre 3

Modèle ICEM et modélisation

comportementale

3.1 Objectifs

Ce chapitre est consacré à la présentation générale du modèle ICEM (voir paragraphe1.2.2). La procédure de validation de ce modèle sur un exemple sert de point de départ àla mise en œuvre d’une première esquisse de modélisation comportementale, permettantd’obtenir une prédiction correcte des perturbations conduites générées par le circuit inté-gré.L’objectif du travail présenté dans ce chapitre est l’obtention par simulation de l’évolutiontemporelle des pics de courant consommés par un circuit intégré, à des fins de prédictionde ce courant avant fonderie. Afin d’accélérer les simulations, une première modélisationcomportementale de ce courant en VHDL-AMS est ensuite réalisée à des fins de compa-raison.Cette démarche a été menée en très étroite collaboration avec ATMEL Nantes.

3.2 Présentation générale du modèle ICEM

Seuls les principaux points du modèle ICEM sont présentés dans ce paragraphe ; lelecteur pourra se référer aux documents originaux [94] et [100] pour plus de détails.

3.2.1 Constitution interne d’un circuit intégré

Un circuit intégré, encapsulé dans son boîtier, comprend les éléments suivants :– la puce elle-même, dont les rails métalliques d’alimentation sont reliés à des pads

(ainsi que toutes les entrées/sorties d’ailleurs)

43

Page 64: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

44 Chapitre 3 : Modèle ICEM et modélisation comportementale

– un "bonding" reliant les pads de la puce au boîtier par l’intermédiaire de fils d’ord’une longueur pouvant atteindre quelques centimètres pour les boîtiers de typePGA (Pin Grid Array)

– le boîtier lui-même, dont les broches (ou billes pour les boîtiers BGA) sont reliées aubonding par des accès de longueur également importante (même ordre de grandeurque le bonding)

Lorsque la fréquence de fonctionnement du circuit intégré augmente, ceux-ci constituentdes sources de parasites dont il est nécessaire de tenir compte car leurs effets deviennentnon négligeables. Le modèle ICEM permet de tenir compte de tous ces éléments parasites.

Exemple d’une piste de métal Tout métal possède une résistivité intrinsèque ρ telleque la résistance équivalente d’une piste de ce métal soit :

R = ρL

S

où L est la longueur de la piste et S sa section. Pour les circuits intégrés, on utilise plutôtle concept de "résistance carrée" R2, exprimée en Ω/2 ; on a alors :

R = R2

L

W

où W est la largeur de la piste ou diffusion (considérée d’épaisseur constante). LW

est doncle "nombre de carrés" contenus dans celle-ci.Dans les circuits intégrés à très haute densité, les longueurs des rails d’alimentation de-viennent très importantes devant leurs largeurs. On peut donc observer des résistances derails pouvant atteindre des ordres de grandeur de plusieurs centaines de milliohms voirede quelques ohms.De même, toute piste peut être considérée comme une inductance, dont la valeur couram-ment admise est de l’ordre de 1 nH/mm, et ce jusqu’à ce que sa longueur s’approche dela longueur critique

lcritique =trc

6√

ǫr

où c est la vitesse de la lumière, tr le temps de montée du signal et ǫr la constante diélec-trique du matériau. Dans ce cas, un modèle lignes de transmission devient indispensable.Avec des longueurs de bonding pouvant atteindre plusieurs cm, les inductances corres-pondantes ont par conséquent une influence très importante en haute fréquence.

3.2.2 Modèle ICEM du circuit intégré

Le modèle ICEM du circuit intégré, représenté sur la figure 3.1, comprend principale-ment deux entités distinctes :

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 65: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.2 Présentation générale du modèle ICEM 45

1. un réseau de composants passifs R,L,C

2. un générateur de courant impulsionnel

RV DD LV DD

RV SS LV SS

CbCd

RpV DDLpV DD

RpV SS LpV SS

6

?

M Ib

Fig. 3.1 – Modèle ICEM du circuit intégré

Ce modèle est valable jusqu’à environ 300 MHz, en raison de l’utilisation d’éléments àconstantes localisées. Des recherches sont actuellement menées sur le développement d’unmodèle à constantes réparties, appelé ICEM-UHF, censé être valable jusqu’à plusieursGHz. Ceci sort du domaine de cette thèse, et afin de ne pas complexifier notre étude, seulle modèle à constantes localisées ("ICEM BF") sera par conséquent considéré dans toutce qui suit.

Réseau de composants passifs

Le réseau de composants passifs est une représentation de tous les éléments constitutifsdes rails d’alimentation du circuit intégré. Dans le modèle figure 3.1, on peut distinguer :

– le boîtier, qui est modélisé par une résistance Rp en série avec une inductance Lp

pour chacune des broches d’alimentation (VDD et VSS)– le bonding, qui est modélisé de la même manière que le boîtier, respectivement

avec R et L ; R comprend également la résistance totale du rail d’alimentationcorrespondant

– une capacité parasite Cd entre les broches VDD et VSS du boîtier, à laquelle peuts’ajouter une capacité de découplage interne à celui-ci ; en l’absence de cette dernière,cette capacité peut être négligée

– une capacité interne Cb, elle-même composée :

1. de la capacité dynamique MOS équivalente, entre VDD et VSS, de tous lestransistors de la puce en fonctionnement

2. de la capacité métallique totale entre VDD et VSS de tous les rails d’alimen-tation

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 66: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

46 Chapitre 3 : Modèle ICEM et modélisation comportementale

Modèle ICEM asymétrique En général, le modèle ICEM est simplifié en considérantun rail VSS parfait et en ramenant tous les éléments passifs sur le rail VDD1. On obtientdans ce cas le modèle ICEM asymétrique de la figure 3.2 qui sera utilisé tout au long decette étude. Nous avons ici séparé la capacité métallique Cmet de la capacité dynamiqueMOS CMOS car elles seront déterminées de façons totalement différentes.

R L

CMOS

Rp Lp

IbCmet

Fig. 3.2 – Modèle ICEM asymétrique simplifié

Remarque importante Dans le modèle ICEM tel qu’il est présenté, les rails d’alimen-tation sont représentés par une seule résistance/inductance localisée et une seule capacitélocalisée, ce qui permet de simplifier notablement le calcul des fonctions de transfert. Entoute rigueur, le maillage de la distribution des alimentations à l’intérieur d’un circuitintégré complexe (system-on-chip par exemple) entraîne que chaque bloc fonctionnel (parexemple CPU, mémoires) possède ses propres résistance, inductance et capacités (métal-lique et MOS) ainsi que son propre générateur de courant (figure 3.3). Les blocs ont été iciconnectés en étoile, mais d’autres topologies sont possibles en fonction de l’architectureinterne du composant.Ce résultat pourra être utilisé pour la définition de modèles ICEM "partiels" de blocsfonctionnels (type propriété intellectuelle).En particulier, l’influence des entrées/sorties peut être représentée par un générateur decourant supplémentaire en parallèle avec le modèle de l’entrée/sortie (IBIS ou IMIC), cequi permettra, au chapitre 5, d’exprimer la dépendance du courant vis-à-vis de l’activité.

Générateur de courant équivalent

Comme nous l’avons vu au paragraphe 1.2, l’émission conduite d’un circuit intégrénumérique trouve sa source dans le courant de commutation d’un très grand nombre deportes logiques, le plus souvent lors des transitions du signal d’horloge. Hirata [41] etChatzigeorgiou [8] montrent que ces courants peuvent être approximés par des formesd’onde triangulaires ; ICEM propose donc de modéliser ce courant de commutation par

1en fait la résistance et l’inductance du rail VSS sont environ le double de celles du rail VDD en raisonde la distribution des alimentations

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 67: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.2 Présentation générale du modèle ICEM 47

Rm1 Lm1

Cb1

Rb Lb

Ib1

Rm2 Lm2

Cb2 Ib2

Rp Lp

Fig. 3.3 – Modèle ICEM pour les circuits intégrés complexes

un générateur de courant linéaire par morceaux (PWL, Piece-Wise Linear). Dabrowski([20] et [21]) a déjà utilisé cette approche pour les circuits analogiques. Nous verrons parla suite que cette approximation est tout à fait correcte. Comme indiqué plus haut, dansun circuit intégré très complexe, on peut identifier un générateur de courant pour chaquebloc fonctionnel.La proposition de norme ICEM n’exige l’extraction du générateur que pour une activitédonnée du circuit, ce qui est réalisé par exemple par Courau [19] avec un seul patternde simulation2. Néanmoins, il semble particulièrement intéressant d’examiner commentse comporte le courant consommé par un circuit en fonction de son activité instantanée ;ceci permet :

– de considérer les pires cas de fonctionnement, sources d’un maximum de perturba-tions sur les rails d’alimentation

– d’envisager ensuite l’optimisation de l’activité du circuit afin de réduire ces pertur-bations

Ceci motive l’étude approfondie de l’activité en courant telle que nous allons la menerdans tout ce qui suit. Les deux principaux facteurs influençant l’émission conduite étantla valeur crête du courant ainsi que le di

dt, le modèle du générateur de courant devra traiter

ces deux grandeurs.

2et sans décomposer le circuit intégré en blocs fonctionnels

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 68: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

48 Chapitre 3 : Modèle ICEM et modélisation comportementale

3.2.3 Modèle ICEM du circuit intégré dans son environnement

Un circuit intégré est classiquement placé sur un circuit imprimé, comprenant le plussouvent un plan de masse, et alimenté par l’intermédiaire de pistes de cuivre. Si l’on veutcomparer simulations et mesures effectuées sur une carte, il est donc indispensable deprendre en compte l’environnement complet de la mesure, ce qui entraîne une complexi-fication du modèle ICEM total. Ceci sera étudié au paragraphe 3.3.3.

3.2.4 Utilisations possibles du modèle ICEM

Dimensionnement des réseaux de découplage

Connaissant la fonction de transfert liée au circuit intégré dans son environnement,il est possible d’étudier l’influence de différentes capacités de découplage sur l’impédancetotale du réseau d’alimentation [55]. Bien entendu, ceci nécessite de connaître parfaite-ment les modèles équivalents de ces capacités (avec leurs imperfections) ; on peut alorsremarquer dans certains cas (ce qui n’est pas évident a priori) que l’ajout de capacitéspeut dégrader l’impédance dans certaines bandes de fréquence.De même, ICEM peut être utilisé pour visualiser le rôle des plans de masse sur l’impédancedu réseau (ils agissent eux aussi comme des capacités de découplage).

Prédiction de l’émission conduite

Cette deuxième utilisation concerne plus directement notre étude. Par la connaissancedu courant interne, indépendant du réseau passif, il est possible de prédire le courantexterne en fonction du bonding et du boîtier utilisés.On peut également déterminer l’influence sur le courant d’une capacité de découplageinterne à la puce. En effet, en raison de la réduction de la taille de gravure (actuellement90 nm en production) ainsi que de l’augmentation du nombre d’entrées/sorties, un certainnombre de circuits intégrés sont "pad-limited", c’est-à-dire que la surface minimale de lapuce est fixée par celle des pads d’entrée/sortie qui forment un anneau autour du coeurlogique/analogique. Plutôt que de passiver le silicium inutilisé, on préfère maintenant leréutiliser pour constituer des capacités métal/substrat qui servent de découplage pour lesalimentations.Cette prédiction peut s’effectuer soit par extrapolation à partir de résultats de mesure,soit par simulation.

Par mesure Le courant interne est déduit du courant externe par une méthode basée surle passage dans le domaine fréquentiel [54], puis ce courant interne est ensuite réutilisécomme donnée avec de nouveaux paramètres pour le PCB, le boîtier. Ceci est rapide,mais présente l’inconvénient de n’être utilisable qu’après fonderie, et donc d’être limité àl’optimisation boîtier/PCB.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 69: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.3 Validation du modèle du réseau passif 49

Par simulation On cherche à s’affranchir autant que possible des mesures, de tellemanière à pouvoir effectuer l’optimisation de l’ensemble circuit/boîtier avant fonderie.En ce qui concerne le boîtier et le bonding, le fondeur peut se constituer une bibliothèquede modèles par caractérisation à partir de mesures, lesquels peuvent être réutilisés pourla simulation avant fonderie en fonction du boîtier envisagé.Quant à la puce elle-même, dans une optique "tout simulation", le concepteur doit êtrecapable de déterminer la capacité dynamique MOS, la capacité métallique et le générateurde courant.

Capacité dynamique MOS Elle est liée uniquement aux transistors eux-mêmes.On peut en avoir une bonne approximation par simulation sur la netlist de transistors,comme il sera montré au paragraphe 3.7.3.

Capacité métallique Cette capacité est plus difficile à déterminer que la précé-dente, et de plus ne peut être estimée qu’après placement/routage, en raison du maillagedes alimentations dans les circuits intégrés complexes. Des outils existent pour estimer lacapacité métallique totale du réseau, mais ils sont coûteux. Nous verrons au paragraphe3.3.5 qu’il est possible d’en obtenir une approximation assez grossière mais néanmoinsutile.

Générateur de courant La détermination et la modélisation de ce générateur decourant font l’objet de cette thèse.

3.2.5 Circuit utilisé pour l’étude

Le circuit utilisé pour cette étude est un microcontrôleur 8 bits ATMEL de la famille80C51, appelé "Viper" en interne, qui se présente en boîtier PLCC 44 broches. Il com-prend, outre le CPU (environ 100000 transistors), un bloc de 32 Koctets d’EEPROM(effaçable électriquement) pour le code (environ 600000 transistors) ainsi qu’un bloc de1280 octets de RAM statique (SRAM) pour les données (environ 70000 transistors).

3.3 Validation du modèle du réseau passif

3.3.1 Introduction

La détermination du modèle du réseau passif a été mise en œuvre principalementpar ATMEL Nantes. Cependant, sur un circuit intégré standard3, les mesures du cou-rant consommé ne pouvant s’effectuer qu’en externe au travers des rails d’alimentation

3sans "oscilloscope sur puce"

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 70: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

50 Chapitre 3 : Modèle ICEM et modélisation comportementale

complets (bonding, boîtier le cas échéant, circuit imprimé) ; les résultats obtenus lors decette étape sont donc indispensables pour la confrontation simulation/mesures du courantexterne. La méthodologie détaillée d’extraction de ces paramètres est décrite dans [53] et[55] pour un autre microcontrôleur ; nous n’en rappellerons ici que les principaux pointset résultats.

3.3.2 Dispositif de mesure

La carte de mesure utilisée est illustrée à gauche de la figure 3.4 et le dispositif completà droite. Le microcontrôleur nu ("chip on board") est placé sur un circuit imprimé (PCB)de 5 cm de côté, comprenant un plan de masse sur les deux faces. L’alimentation et lamesure des éléments passifs du réseau s’effectuent par l’intermédiaire d’un connecteurSMA dont l’âme est reliée à la broche VDD

– soit directement pour la mesure des éléments passifs du réseau– soit par l’intermédiaire d’une résistance externe Rmes, connectée directement entre

la piste et la broche VDD, pour la mesure du courant externe au moyen d’une sondedifférentielle

Les appareils de mesure utilisés sont :– un analyseur de réseaux vectoriel (VNA) relié à une alimentation continue, per-

mettant d’alimenter le microcontrôleur pour effectuer des relevés de paramètres enfonctionnement

– un oscilloscope rapide et une sonde différentielle pour la mesure du courant

3.3.3 Modèle ICEM avec environnement

Il a été établi [53] que le connecteur SMA peut être représenté par un circuit RL sérieet que le couplage entre la piste d’alimentation et le plan de masse du circuit imprimé estéquivalent à un circuit RLC série. Le modèle ICEM équivalent complet est donc celui dela figure 3.5, sur laquelle la boîte en pointillés représente le circuit intégré.

3.3.4 Méthode de mesure des éléments

Les éléments passifs du dispositif, autres que le circuit intégré, sont d’abord mesurésà part avec l’analyseur : SMA seul, puis SMA et PCB (ce qui permet de déduire lePCB). L’impédance en fonction de la fréquence permet de déduire un modèle équivalentde chaque composant. Les figures 3.6 et 3.7 donnent les profils d’impédance mesurés surla carte de test.Sur l’impédance totale, on peut observer de gauche à droite :

– la résonance de l’inductance du bonding avec la capacité du cœur– l’antirésonance de l’inductance du bonding avec la capacité du PCB– la résonance des inductances du SMA et du PCB avec la capacité du PCB

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 71: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.3 Validation du modèle du réseau passif 51

ConnecteurSMA (autreface)

Carte de test Dispositif de mesure (note : la carte photographiéen’est pas la carte de test)

Fig. 3.4 – Test de la carte Viper

R L

CMOS

Rp Lp

Ib

Rsma Lsma Rmes

Cpcb

CmetLpcb

Rpcb

Fig. 3.5 – Modèle ICEM complet avec environnement

Les perturbations de l’impédance observées au-delà du GHz correspondent à un com-portement de type ligne de transmission, la longueur d’onde devenant comparable auxdimensions physiques du circuit ; le modèle localisé considéré ici ne prend bien évidem-ment pas en compte ce phénomène.Deux autres remarques peuvent être faites. D’une part, lorsqu’un circuit est mis en boî-

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 72: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

52 Chapitre 3 : Modèle ICEM et modélisation comportementale

freq (Hz)

|Z| (ohms)

Inductance SMA (en H) Impédance PCB (module, en Ω)

Fig. 3.6 – Impédances de la carte de test (d’après ATMEL) en fonction de lafréquence

|Z| (ohms)

(Hz)

Fig. 3.7 – Impédance totale (module, en Ω) en fonction de la fréquence, vue del’alimentation avec circuit alimenté (d’après ATMEL) : modèle (trait plein)et mesures (pointillés)

tier, il est impossible de distinguer par une simple mesure à l’analyseur les éléments liésau boîtier et ceux liés au bonding ; à cet effet, une méthode de réflectométrie temporelle(TDR) est en cours de mise en œuvre à l’ESEO, méthode qui permettra également d’en-visager une modélisation en constantes réparties pour des fréquences supérieures à 300MHz. D’autre part, en ce qui concerne les capacités internes à la puce, il convient dedistinguer deux méthodes de mesure :

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 73: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.3 Validation du modèle du réseau passif 53

1. si la mesure est effectuée avec le circuit non alimenté, la capacité mesurée est uni-quement la capacité métallique Cmet, la capacité dynamique étant nulle

2. si l’on alimente le circuit par l’analyseur dans les conditions d’un fonctionnementnormal, on peut mesurer la somme des deux capacités Cmet et CMOS. Cette der-nière dépend de l’activité instantanée du circuit ; cependant des mesures ont montréqu’elle varie assez peu avec cette activité, et que l’on peut donc se contenter d’unemesure avec le microcontrôleur en mode RESET, ce qui est simple et rapide ; cecisera étudié au paragraphe 3.7.3

3.3.5 Résultats obtenus

A partir de la courbe figure 3.7, un modèle SPICE équivalent correspondant au modèlefigure 3.5 a été ajusté et simulé. La figure 3.8 illustre ces valeurs expérimentales.

1 nF

2.4 Ω 4.7 nH

Ib

0.044 Ω 1.2 nH 1.2 Ω

220 pF

1 nF1 nH

0.083 Ω

Fig. 3.8 – Modèle ICEM déterminé expérimentalement

Quelques remarques intéressantes peuvent être faites :

1. la valeur de l’inductance de bonding est tout à fait cohérente avec les résultatscouramment admis ; en effet, la longueur totale est d’environ 5 mm.

2. les capacités métallique et MOS sont du même ordre de grandeur ; ceci a été constatésur plusieurs microcontrôleurs ATMEL très différents (familles 8051, AVR). Il estdonc indispensable d’effectuer les deux mesures afin d’obtenir une valeur réaliste.

La première fréquence de coupure liée à l’ensemble bonding/capacités internes est :

fc =1

2π√

LCb

soit environ 50 MHz avec les valeurs expérimentales. Sachant que les temps de montéedes signaux sont de l’ordre de 3 ns, on peut donc s’attendre à un filtrage important desharmoniques du courant interne par ce réseau. Nous le verrons au paragraphe 3.6.4.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 74: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

54 Chapitre 3 : Modèle ICEM et modélisation comportementale

Les concepteurs ont désormais l’habitude (voir paragraphe 1.2.4) d’inclure des capacitésde découplage. Grâce au modèle ICEM, on peut voir qu’il est nécessaire de prêter uneattention toute particulière aux différents filtres LC constitués par le connecteur et lecircuit imprimé en couplage avec les capacités internes, et qui induisent des résonancesou antirésonances parasites pouvant dégrader l’intérêt de ce découplage.

3.4 Niveaux de détermination de l’activité en courant

d’un circuit intégré

3.4.1 Introduction

Le modèle du réseau passif ayant été validé, nous pouvons passer à la déterminationde l’activité en courant de notre circuit intégré. Auparavant, un point aussi complet quepossible sur les différentes niveaux de détermination de cette activité est indispensableafin de permettre le choix de la démarche la plus appropriée pour notre étude.

3.4.2 Niveaux d’abstraction

La détermination de l’activité peut s’effectuer soit au niveau transistor, soit au niveauporte, soit au niveau architectural. Chacun de ces niveaux possède ses avantages et sesinconvénients.

Niveau transistor

Le niveau transistor est a priori le plus simple à mettre en œuvre (d’un point devue outils) pour la détermination de l’activité en courant. Fondamentalement, le principeréside dans la simulation électrique d’une netlist structurelle de transistors, par exempleau format SPICE, en s’appuyant directement sur les équations de fonctionnement dutransistor MOS. Cependant, celle-ci possède deux inconvénients notables :

1. les circuits actuels peuvent comprendre jusqu’à plusieurs millions de transistors ; ce-pendant, la taille des matrices associées aux équations de fonctionnement augmentede façon exponentielle avec le nombre de transistors à simuler, ce qui rend cetteméthode de résolution inutilisable au-delà d’une dizaine de milliers de transistors

2. cette méthode purement structurelle ne fait pas du tout le lien avec l’architecturefonctionnelle du circuit ; de plus, il peut être intéressant de ne simuler que cer-taines parties au niveau transistor en en conservant d’autres au niveau le plus élevé.Considérons par exemple le microcontrôleur utilisé pour cette étude. Il peut sem-bler intéressant d’étudier séparément le courant consommé par le cœur (CPU), orce dernier vient chercher les instructions à exécuter dans la mémoire EEPROM : onne peut donc pas étudier complètement celui-ci sans le relier à la mémoire. Dans le

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 75: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.4 Niveaux de détermination de l’activité en courant d’un circuit intégré 55

cas de l’étude du cœur du µC, un modèle comportemental numérique de l’EEPROMsuffit, sans avoir besoin de descendre au niveau des 600000 transistors de celle-ci.

Afin de remédier à ces défauts, une génération d’outils plus performants a vu le jour,basés non plus sur la résolution d’équations des dispositifs, mais sur des tables de pointsde fonctionnement. Ceci permet d’accélérer de manière importante (10 à 12 fois en général)les simulations structurelles, au prix d’une légère imprécision (de l’ordre de 5 %) qui n’estabsolument pas ici un obstacle (rappelons qu’en CEM, les précisions demandées sontsouvent de l’ordre de 20 %). Les outils les plus utilisés sont PowerMill de Synopsys r© [84]et MachPA de Mentor Graphics r© [12]. Et récemment, des outils basés sur une analysehiérarchique avec reconnaissance automatique des cellules élémentaires ont vu le jour, enparticulier HSIM de Nassda r© [16].Tous ces outils rendent ce niveau de simulation utilisable pour de très gros circuits, ce quin’était absolument pas le cas il y a quelques années.Ces différents outils sont également capables d’inclure des modèles comportementaux etde les interfacer avec les descriptions au niveau transistor ; PowerMill peut travailler avecdes modèles écrits en C, HSIM avec des modèles C et Verilog-A, et MachPA (sous savariante ADVance-MS Mach) avec des modèles C, VHDL-AMS, VHDL et Verilog (etVerilog-AMS dans la toute dernière version ADVance-MS 3.0).

Niveau porte

Le niveau porte consiste à utiliser des modèles d’activité en courant de cellules de base(inverseurs, bascules) établis par le fondeur choisi, puis à utiliser ces modèles au niveau dela description RTL (Register Transfer Level) bas niveau. En effet, en connaissant, grâce àune simulation numérique rétroannotée, le profil temporel de commutation des différentsnœuds du circuit, il est possible d’associer à chaque commutation l’activité de la cellulecorrespondante.Cette méthode, utilisée entre autres par PrimePower de Synopsys r© [85], présente l’avan-tage d’être plus rapide que la précédente, et de permettre de déterminer rapidement unprofil de courant pour un bloc fonctionnel donné (Intellectual Property par exemple).Steinecke [83] en montre l’intérêt dans le domaine de la CEM.Cependant, contrairement au niveau transistor, actuellement aucun de ces outils ne per-met de travailler conjointement avec des modèles comportementaux mixtes établis parl’utilisateur4, c’est pourquoi cette méthode, intéressante dans son principe même, ne serapas envisagée ici.

Niveau architectural

Contrairement à l’estimation de puissance sur laquelle beaucoup de publications ontété réalisées (on peut citer en particulier [98] qui fournit également une bibliographie

4les fondeurs doivent donc travailler avec des modèles spécifiques à l’outil

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 76: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

56 Chapitre 3 : Modèle ICEM et modélisation comportementale

fournie sur le sujet), la détermination de l’activité en courant au niveau architectural n’apas fait l’objet d’un grand nombre de travaux. Il est vrai que la dépendance de cetteactivité par rapport à l’architecture, y compris même au niveau de l’implémentationphysique du circuit, rend le problème encore beaucoup plus complexe d’un point de vuegénéral. Néanmoins, dans des cas très précis, il est possible de s’appuyer sur un certainnombre de constantes architecturales pour construire des modèles génériques ; c’est cequi sera exposé au chapitre 4 en ce qui concerne les mémoires statiques (SRAM). Desmodèles architecturaux de haut niveau peuvent ensuite être combinés pour permettre desimuler rapidement de très gros circuits ; ceci est particulièrement intéressant pour lesSystems-On-Chip.

Comparaison des différents niveaux d’abstraction

Les principaux avantages et inconvénients des différents niveaux sont résumés dans letableau 3.1.

Niveau Avantages Inconvénients

Très précis LentTransistor Tient compte des effets parasites Pas de relation avec l’architecture

Peut utiliser des modèles comportementaux

Rapide Pas d’interfaçage avec les modèlesPorte Adapté au prototypage d’IP comportementaux mixtes

Formats propriétaires

Architectural Le plus rapide Difficile à modéliserUtilise des langages standards Ne s’applique pas à tous les blocs

Tab. 3.1 – Tableau résumé des niveaux d’abstraction

3.4.3 Problème des interconnexions

Dans les circuits intégrés en submicronique profond (moins de 0.25 µm), avec la ré-duction des tensions d’alimentation, les interconnexions vont jouer un rôle au moins aussiimportant que les transistors eux-mêmes dans les performances d’un circuit, y comprisd’un point de vue CEM. En effet, chacune d’elles, que ce soit pour les signaux ou lesalimentations, constitue un réseau RC qui a pour effet :

– dans le cas des signaux, de dégrader les temps de montée et de propagation entreles portes, et donc de désynchroniser les pics de courant

– dans le cas des alimentations, de générer des chutes de tension ("IR-drops") pré-judiciables car elles diminuent notablement les marges de bruit et augmentent lestemps de propagation

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 77: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.4 Niveaux de détermination de l’activité en courant d’un circuit intégré 57

Ces éléments parasites sur les interconnexions sont plutôt intéressants d’un point de vueCEM ; en effet, ils contribuent à l’étalement temporel des commutations des portes, cequi est bénéfique d’un point de vue spectral.Par contre, en ce qui concerne les rails d’alimentation, Steinecke [83] montre qu’il estégalement indispensable de prendre en compte leur caractère inductif. En effet, les appelsde courant dynamique di

dtvont alors eux-aussi y générer des chutes de tension de plusieurs

millivolts.Actuellement, tous les fournisseurs d’environnements de CAO offrent des outils capables decalculer les RC parasites des signaux actifs. Des standards permettent l’échange de fichiersde parasites entre les divers outils, entre autres le DSPF (Detailed Standard Parasitic File)pour les RC, et le RSPF (Reduced Standard Parasitic File) pour les capacités uniquement.En revanche, en ce qui concerne les résistances des alimentations, peu d’outils existentsur le marché ; on peut citer LEXSIM de Nassda r© [17]. Par contre, aucun outil actueln’extrait les inductances associées, et encore moins le couplage des rails avec le substrat,évoqué dans [105].Mais on peut remarquer que ceci a surtout son importance dans l’évaluation du bonfonctionnement logique du circuit ; en ce qui concerne l’aspect purement émission conduite,le fait de ne pas tenir compte de ces interconnexions va avoir tendance à grouper lescommutations, ce qui donnera un courant interne simulé dont les valeurs crête seront sansdoute légèrement plus élevées que sur le circuit réel ; on peut donc se contenter dans unpremier temps de travailler sans ces interconnexions.

3.4.4 Choix du niveau d’abstraction et de l’outil

Notre objectif étant la définition de modèles comportementaux d’activité en courant,l’usage d’une chaîne de CAO permettant de travailler avec des langages de descriptioncomportementale est indispensable. Notre optique est de permettre aux concepteurs d’uti-liser les outils commerciaux et non de réécrire un logiciel propriétaire. Pour deux raisons,nous avons donc choisi ADVance-MS Mach de Mentor Graphics r© :

– c’est le seul outil comprenant à la fois un simulateur rapide niveau transistor etun simulateur VHDL-AMS ; or ce langage est actuellement le plus en pointe pourl’établissement de modèles comportementaux mixtes (analogiques/numériques) ; ilpermet de plus la réutilisation directe des modèles numériques standard de mémoiresproposés par les fondeurs (écrits en VHDL ou en Verilog), ce qui a son importancedans la simulation de microcontrôleurs

– il permet de travailler directement avec les netlists des composants et les biblio-thèques du fondeur sans trop effectuer de modifications

Cet outil nous permettra de travailler à la fois au niveau transistor et au niveau architec-ture, comme indiqué par la suite.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 78: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

58 Chapitre 3 : Modèle ICEM et modélisation comportementale

3.5 Méthodologie de simulation

3.5.1 Présentation et objectifs

Après la validation du modèle de réseau passif effectuée dans ce qui précède, il s’agitici d’appliquer une méthode simple à mettre en œuvre, non nécessairement optimisée, quipermette de retrouver le courant externe mesuré à partir d’un courant interne uniquementextrait de la simulation de l’activité du circuit, et par la suite, d’utiliser (et réutiliser) desmodèles comportementaux de haut niveau. Pour ce faire, une décomposition de notrecircuit en blocs fonctionnels distincts est indispensable ; nous allons donc extraire et en-suite modéliser séparément le courant du cœur (CPU) du microcontrôleur puis celui desmémoires embarquées. Cependant, ces étapes doivent être précédées d’une confrontationsimulation/mesures permettant de vérifier la pertinence de l’utilisation de l’outil.Afin d’obtenir le courant externe, le générateur de courant interne, quel que soit son ni-veau de description, sera couplé au modèle de réseau passif obtenu. Cette démarche estégalement utilisé par Meresse dans un article à paraître [62], mais sur un circuit plussimple.Nous proposons donc dans le cadre de cette étude une méthodologie en trois points :

1. simulation du cœur sur un exemple simple à des fins de validation

2. simulation et modélisation du courant des blocs mémoire

3. simulation et modélisation du courant du cœur

3.5.2 Conditions de simulation

Toutes les simulations de cette thèse ont été effectuées sous ADVance-MS Mach r©, avecdifférents numéros de version selon l’évolution du produit. La dernière version utilisée estla 3.0_2.1, comprenant Eldo r© version 6.2_2.1 et MachPA r© version 3.3_0.5.Tous les modèles de transistors MOS utilisés sont des modèles BSIM3 fournis par ATMELpour la technologie AT56K8 de 0.35 µm. Le Viper étant un circuit bi-tension, deux typesde transistors sont utilisés : oxyde mince (3 V) et oxyde épais (tolérant 5 V).

3.5.3 Simulation simple du cœur

Principe de base

La démarche que nous allons entreprendre est illustrée figure 3.9.Dans cette étape, seul le courant consommé par le CPU sera considéré ; celui-ci doit doncêtre décrit au niveau transistor. Le problème est qu’afin de pouvoir modéliser ensuiteconvenablement ce courant en fonction de l’activité, le CPU doit être capable d’exécuterdu code machine ; en conséquence, il est nécessaire de l’interfacer, au niveau des businternes à la puce, avec les blocs mémoire EEPROM (code) et SRAM (données). Ces

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 79: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.5 Méthodologie de simulation 59

CORE

structural

netlist

(.CIR)

MEMORIES

VITAL (VHDL)

SRAM

(E)(E)PROM

A2D

D2A

- -

-code

?

Fig. 3.9 – Principe de simulation simple du cœur

derniers comprenant plus de transistors que le cœur lui-même, il n’est pas intéressant,et surtout pas rentable d’un point de vue temps de simulation, de les décrire eux-aussià ce niveau. L’objectif est donc d’utiliser une description comportementale numériquedes deux blocs mémoire, qui ne servira qu’à fournir au cœur les instructions et donnéesnécessaires à son fonctionnement.

Modèles numériques des mémoires

Tous les fondeurs proposent maintenant des modèles comportementaux VITAL (VHDLInitiative Towards ASIC Libraries) [28] de leurs mémoires embarquées. Une descriptionplus approfondie de ce standard est proposée au paragraphe 4.5. Ces modèles écrits enVHDL, pour l’instant réservés aux ROMs et RAMs statiques, permettent de prendre encompte les timings (avec indications d’éventuelles violations), mais aussi de simuler lefonctionnement réel, les données étant mémorisées dans un tableau instancié par le mo-dèle. De plus, dans le cas d’une ROM, il est possible de préciser quel en est le contenuinitial, ce qui permettra de faire facilement exécuter du code par le cœur.Dans le cas de l’EEPROM utilisée par le Viper, le modèle initial, écrit en Verilog, estencapsulé dans une surcouche VHDL destinée à la compatibilité VITAL.

Intégration de l’ensemble

Nous disposons par l’intermédiaire du fondeur (ATMEL) :– de la netlist du cœur au format SPICE extraite après l’étape de synthèse, dont les

sous-circuits sont les primitives de la bibliothèque fondeur– des bibliothèques fondeur au format SPICE

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 80: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

60 Chapitre 3 : Modèle ICEM et modélisation comportementale

– des fichiers de paramètres technologiques au format Eldo ; Mach étant capable delire directement ce format, aucune conversion n’est à réaliser ici

– des modèles VITAL de la SRAM et de l’EEPROMLa principale difficulté pourrait consister ici à combiner une description purement ana-logique, comprenant des nœuds de type SPICE, avec des modèles purement numériques.Fort heureusement, ADVance-MS Mach permet de définir, comme indiqué sur la fi-gure 3.9, des convertisseurs analogique/numérique et numérique/analogique virtuels, pou-vant être soit implicites, soit explicitement définis en VHDL-AMS. Ainsi, chaque signald’adresse/donnée/contrôle sera relié à son équivalent SPICE sur la netlist du cœur5.Nous avons instancié la netlist du CPU, les deux modèles comportementaux VITAL desmémoires, et un modèle numérique "testbench" permettant de générer en externe l’hor-loge du microcontrôleur ainsi que les signaux de contrôle de base comme le signal RESET.En ce qui concerne les convertisseurs numérique/analogique, il a été nécessaire de veiller àce que le temps de montée des signaux soit identique à celui observé en mesure ; en effet,comme l’indique Hirata [42], celui-ci influence directement les temps de propagation etsurtout la valeur crête du pic de courant lié à l’étage d’entrée.Bien évidemment, le courant obtenu dans cette première étape de simulation étant unique-ment délivré par le CPU, les comparaisons avec les mesures ne peuvent s’effectuer qu’enmode RESET, lorsqu’aucun des deux blocs mémoire n’est actif. Les étapes suivantes sontdestinées à remédier à cet inconvénient en permettant la simulation de l’ensemble.Les résultats obtenus sont présentés au paragraphe 3.6.4.

3.5.4 Simulation des mémoires

Dans un second temps, il s’agit de simuler puis modéliser le courant consommé par lesmémoires sans prendre en compte le cœur. Pour ce faire, la méthodologie de simulationva s’inspirer de celle utilisée pour ce dernier.Comme indiqué sur la figure 3.10, le principe consiste à effectuer une simulation au niveautransistor de la mémoire (ici la SRAM), grâce à un testbench. Le fait d’écrire ce dernieren VHDL apporte une très grande souplesse dans la définition des stimuli qui peuventêtre appliqués au bloc mémoire.Après une étude théorique du courant dynamique consommé par le bloc, ces résultatspermettent d’affiner la définition d’un modèle comportemental VHDL-AMS en courant,qui pourra être ensuite réinjecté dans la simulation globale du microcontrôleur, ce qui estproposé sur la figure 3.11.

5dans ADVance-MS Mach, l’entité de plus haut niveau ("top") peut être soit un circuit SPICE, soitune entité VHDL-AMS ; nous avons choisi la première solution car, à l’époque où cette démarche a étémise en place, l’outil présentait un grand nombre de défauts, par exemple des nœuds globaux SPICE nepouvaient pas être affectés à des bornes ("terminals") VHDL-AMS, ce qui empêchait l’alimentation ducœur

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 81: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.5 Méthodologie de simulation 61

SRAM

structural

netlist

(.CIR)

A2D

D2A

- -

?

VHDL

test

bench

Fig. 3.10 – Méthode d’extraction du courant des mémoires

CORE

structural

netlist

(.CIR)

MEMORIES

VHDL-AMS

SRAM

(E)(E)PROM

A2D

D2A

- -

-code

?

?

Fig. 3.11 – Simulation avec modèles VHDL-AMS des mémoires

L’inclusion de ces modèles comportementaux, en complément des modèles VITAL6, per-mettra d’effectuer des comparaisons simulations/mesures pour le microcontrôleur en fonc-tionnement normal (exécution de code, accès mémoire). L’étude et la définition de cesmodèles VHDL-AMS de mémoires fait l’objet du chapitre 4 de cette thèse.

6les signaux numériques restent générés en VITAL

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 82: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

62 Chapitre 3 : Modèle ICEM et modélisation comportementale

3.5.5 Simulation comportementale complète

Une fois les modèles comportementaux définis pour les mémoires, la dernière étapeconsiste à utiliser des modèles haut niveau également pour le CPU (figure 3.12).

CORE

behavioral

model

VHDL-AMS

MEMORIES

VHDL-AMS

SRAM

(E)(E)PROM

-code

?

?

-

Fig. 3.12 – Simulation avec modèles VHDL-AMS uniquement

Ici, la netlist SPICE du cœur est remplacée par l’association de son modèle comportemen-tal numérique VHDL (haut niveau ou RTL) et de son modèle comportemental en courantVHDL-AMS. La démarche utilisée va être semblable à celle utilisée pour les mémoires :le testbench en VHDL va être ici remplacé par un code exécutable dans l’EEPROM, etc’est donc le modèle VITAL de cette dernière qui servira de testbench.A priori, il semble tout à fait illusoire et inutile de chercher à modéliser le courantconsommé par l’ensemble des instructions du CPU ; cependant, on peut remarquer quecertaines ont sans doute plus d’importance ; par exemple, la commutation de ports desortie du microcontrôleur va créer des appels de courant plus importants sur les railsd’alimentation, en raison de la taille des transistors composant les étages de sortie. C’estce que nous verrons au chapitre 5.

3.6 Validation du générateur équivalent

3.6.1 Objectifs

Comme indiqué au paragraphe 3.5.3, on effectue une co-simulation entre la netlistSPICE du cœur et les modèles VITAL des deux blocs mémoire. La comparaison avecles résultats de mesure en mode RESET nous permettra de vérifier notre méthode desimulation globale.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 83: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.6 Validation du générateur équivalent 63

Il est à noter qu’il est indispensable d’exprimer la forme d’onde effective délivrée par cegénérateur, sans se contenter de le caractériser simplement par son Imax et son di

dt. En effet,

la synchronisation temporelle entre les différentes activités en courant des blocs internesjoue un grand rôle dans l’expression finale du courant interne.

3.6.2 Raffinement du modèle

Le modèle ICEM tel qu’il est défini considère l’existence d’un générateur de courantidéal ; or il a été montré [38] que le courant crête est directement proportionnel à la tensiond’alimentation du circuit. Deux phénomènes expliquent ce comportement :

1. la résistance des rails d’alimentation, qui réduit la tension aux bornes de la netlistde manière proportionnelle au courant circulant

2. la non-linéarité des caractéristiques des transistors MOS de la netlist

Selon la précision attendue, deux approches peuvent être considérées :

Approche avec résistance variable

On peut approximer la dépendance linéaire courant/tension en considérant un circuitnon invariant modélisé par une résistance variant au cours du temps en fonction desdifférentes commutations, comme indiqué sur la figure 3.13. Cette résistance est donc miseen parallèle avec la capacité MOS, en réalité distribuée, mais que l’on suppose localiséepour simplifier le modèle.

CMOS Rb(t)7

6Vsupply

Fig. 3.13 – Modèle du générateur avec résistance variable

Approche avec équation linéaire

Une autre possibilité consiste à modéliser la dépendance par une équation simplereliant le courant crête à la tension instantanée, sous la forme Icrete = A.Vcc + B. Cecinécessite des simulations supplémentaires en fonction de la tension d’alimentation, maisprésente l’avantage de la précision. Le langage VHDL-AMS permet d’écrire facilement unmodèle comportemental basé sur cette approche, comme nous le verrons au paragraphe3.7.3.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 84: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

64 Chapitre 3 : Modèle ICEM et modélisation comportementale

Intérêt du modèle affiné

La démarche d’ATMEL consiste à réduire l’impédance des rails d’alimentation pourdiminuer la chute de tension aux bornes de la netlist. Cependant Lochot et Calvet [57] ontmontré par la mesure que l’inclusion d’une résistance série supplémentaire dans les railsd’alimentation peut au contraire réduire l’émission conduite ; on peut en avancer deuxraisons :

1. elle contribue à réduire le coefficient de qualité des filtres, et donc à diminuer lesrésonances parasites

2. la réduction de la tension aux bornes du cœur (ici due à cette résistance) entraîneune diminution correspondante des valeurs crête du courant (mais il est nécessairede prêter attention à la marge de bruit en susceptibilité)

Les deux approches devront par conséquent être confrontées du point de vue rayonné etsusceptibilité.

3.6.3 Extraction du courant interne

Pour extraire le courant interne, nous allons connecter une source de tension continueidéale aux bornes de la netlist de transistors. Le courant passant dans la capacité MOSdu modèle est donc ici nul, ce qui permet de n’extraire que le courant passant dans larésistance. Le résultat de la simulation est donné figure 3.14.Après consultation des concepteurs du microcontrôleur, les pics de courant (de l’ordre de470 mA crête) sont tout à fait cohérents avec leurs attentes. Rappelons toutefois ici qu’ils’agit du courant interne non filtré par le réseau d’alimentation.

3.6.4 Courant externe

Maintenant, nous simulons la netlist avec le modèle ICEM complet obtenu au para-graphe 3.3.5. La capacité Cb explicitement ajoutée dans le réseau passif se réduit ici à lacapacité métallique, les capacités MOS étant déjà incluses par essence.Les résultats de simulation du courant externe sont présentés à gauche de la figure 3.15et peuvent être confrontés à la mesure présentée à droite de la même figure.Plusieurs remarques peuvent être faites sur ces résultats :

– les valeurs crête, temps de montée et de descente sont comparables sur la mesure etla simulation (25 mA, 3.3 ns, 5.5 A/µs)

– la mesure montre un autre pic de faible amplitude qui n’existe pas sur les résultatsde simulation

En ce qui concerne le pic supplémentaire, après avoir effectué plusieurs mesures sur lecircuit réel, il ressort que ce dernier est fonction des caractéristiques du signal d’horloge(tension et temps de montée) ; on peut supposer qu’il s’agit du driver global d’horloge, avec

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 85: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.6 Validation du générateur équivalent 65

File : Wave_ProcessorXelga 3.7_1.1

0.5 1.4e-70.6 1.30.7 1.20.8 1.10.9 1.0s

-0.1

0.6

-0.0

0.5

0.1

0.4

0.2

0.3

Ivdd

Fig. 3.14 – Simulation du courant interne

les entrées/sorties associées, et qui n’est pas simulé ici ; cette hypothèse retient égalementla faveur des concepteurs du circuit. Nous essaierons de la valider par la suite.L’influence positive du bonding, du boîtier et des découplages internes d’un point de vueCEM est ici clairement visible sur la simulation comme sur la mesure : par rapport aucourant interne, les valeurs crête sont divisées quasiment par 20 (donc perte de 20 log20 = 26 dB) et les temps de montée multipliés par 15 (3 ns contre 200 ps environ). Lecontenu spectral est donc également beaucoup moins riche.On peut donc valider la méthode de simulation en courant proposée. Les résultats obtenussont globalement de meilleure qualité que ceux obtenus par Caignet [7], qui a effectué dessimulations sur un circuit simple (VCO), car ils sont fondés sur une identification duréseau passif réel comprenant la capacité MOS.

3.6.5 Conclusion

Nous venons de valider la démarche d’obtention du courant externe d’un circuit inté-gré par simulation. Cependant, les temps de simulation restent beaucoup trop élevés (8

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 86: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

66 Chapitre 3 : Modèle ICEM et modélisation comportementale

25 Aug 200310:16:46

File : TopSimu_Cir_machpa_icem_5V.wdb

0.97 1.07e-60.98 0.99 1.051.00 1.041.01 1.031.02s

0.000

0.030

0.005

0.025

0.010

0.020

0.015

A I(RMEASC)

Driverd’horloge

Simulation Mesure

Fig. 3.15 – Courant externe du cœur en mode RESET

heures pour quelques microsecondes) pour pouvoir exploiter cette méthode dans le cadred’une investigation CEM sur une carte par exemple. Il est en conséquence nécessaired’utiliser une autre méthode pour diminuer ce temps ; elle consiste à utiliser des modèlescomportementaux en courant.

3.7 Modélisation simple ICEM du cœur

3.7.1 Intérêt de VHDL-AMS pour la modélisation en courant

Le langage VHDL-AMS, de par sa compatibilité ascendante avec VHDL, permet,comme nous l’avons dit au paragraphe 3.5.3, l’intégration de modèles numériques VHDLet VITAL. On peut donc effectuer conjointement la simulation fonctionnelle du circuitnumérique et la simulation analogique en courant orientée CEM.De plus, la norme IBIS, dans sa version IBIS-ML (voir 1.2.1) permet d’inclure des modèles

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 87: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.7 Modélisation simple ICEM du cœur 67

comportementaux VHDL-AMS des entrées/sorties. Il sera donc possible de les coupler di-rectement à ceux des blocs internes du circuit intégré, réalisant ainsi la simulation CEMet intégrité de signal de l’ensemble.C’est pour ces raisons nous avons suggéré et obtenu l’utilisation de VHDL-AMS dans laproposition de norme ICEM.Par ailleurs, l’écriture des modèles VHDL-AMS proposés en annexe est réalisée en fonc-tion du sous-ensemble du langage réellement implémenté dans l’outil ADVance-MS. Parconséquent, certaines parties pourraient éventuellement être plus optimisées si l’ensembledes constructions étaient disponibles.

3.7.2 Bibliothèque de base de modèles VHDL-AMS

Les composants minimaux nécessaires à la modélisation ICEM en VHDL-AMS sontles résistances, inductances, capacités, auxquelles s’ajoutent des générateurs de courantgénériques.Les composants passifs sont tout à fait classiques et sont présentés à l’annexe A.2.1. En cequi concerne les éléments actifs, la proposition de norme prévoit un générateur de courantimpulsionnel à temps de montée et de descente réglables, et un générateur de courantlinéaire par morceaux (PWL, Piece-Wise Linear).

Générateur impulsionnel périodique

Ce générateur de signaux triangulaires périodiques réalise la forme d’onde présentéefigure 3.16. Il comprend un courant de repos non nécessairement nul I1, et à chaquepériode, selon la proposition de norme ICEM :

– au début de la période, un pic positif de valeur crête I2p, de temps de montée trp

et de descente tfp

– au milieu de la période, un pic négatif de valeur crête I2n, de temps de montée trn

et de descente tfn

La période est indiquée par per, et le délai avant démarrage du signal par td.Pour ce faire, on utilise l’attribut ’ramp(tr,tf) de VHDL-AMS, qui transforme un signalréel (de temps de montée et descente nuls par définition) en une quantité de temps demontée tr et de descente tf donnés en arguments. A chaque période, des signaux réelsIb_dig1 et Ib_dig2, de temps de montée et de descente nuls, sont donc calculés dansun process. Afin d’obtenir un signal triangulaire, ils repassent à 0.0 au bout du temps demontée choisi ; la quantité associée aura donc juste atteint sa valeur crête à cet instant.Le source VHDL-AMS est donné à l’annexe A.2.2.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 88: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

68 Chapitre 3 : Modèle ICEM et modélisation comportementale

-

6

I1

I2p

I2n

-Td

-per

Trn Tfn----

Trp Tfp

Fig. 3.16 – Générateur impulsionnel périodique

Générateur PWL périodique

Ce générateur est codé de manière à être compatible avec tous les outils de simulationVHDL-AMS actuellement diffusés sur le marché, et facilement exploitable par les utilisa-teurs de l’outil Eldo (Mentor Graphics). A cet effet, on utilise la syntaxe SPICE pour lesgénérateurs PWL : un vecteur Ti indiquant les temps relatifs au début de la période etun vecteur Ii indiquant pour chaque temps l’intensité correspondante ; le dernier élémentdes vecteurs indique la fin de la période. La méthode consiste à effectuer une interpola-tion linéaire en temps continu (sous forme d’équation simultanée) entre des points sourceTstart et destination Tend, avec une variation de courant deltaI à partir du courantIstart, comme indiqué sur la figure 3.17.

-

Ti(T′i high)6

Tstart

6Tend

6

Istart

6

?

6

deltaI

pour une itération

Fig. 3.17 – Générateur PWL périodique

Ces différents points sont mis à jour de manière événementielle par un process à l’intérieurduquel les tableaux correspondants sont parcourus temporellement. Le source VHDL-AMScorrespondant est donné à l’annexe A.2.3.L’utilisation de la construction IF domain = quiescent_domain est due au simulateur,

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 89: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.7 Modélisation simple ICEM du cœur 69

qui n’implémente pas l’ensemble du langage VHDL-AMS. La syntaxe normalisée VHDL-AMS consisterait à ne conserver que la seconde équation et à utiliser BREAK Ib => Istart

qui permet de spécifier la condition initiale.La construction BREAK ON permet de réinitialiser le pas de simulation à chaque changementd’état des signaux, afin d’assurer une convergence rapide des algorithmes de résolution.L’avantage de ce type de modélisation est de permettre une adaptation simple au cas dessystèmes dont les appels de courant sont déclenchés par des transitions sur les signauxlogiques d’entrée ; c’est en particulier le cas du microcontrôleur avec son signal d’horloge.

3.7.3 Modélisation simple du cœur de microcontrôleur

Modèles

Afin de terminer la modélisation complète du cœur du microcontrôleur, nous allonsproposer une modélisation comportementale en courant très simple : nous ne considèreronsà cet effet que son comportement vis-à-vis du signal d’horloge.

Modèle avec résistance variable Pour ce faire, nous allons réutiliser directement legénérateur PWL présenté précédemment, en l’appliquant au cas d’une conductance va-riable au lieu du courant lui-même. Le générateur associé sera donc un "générateur deconductance" et non un générateur de courant, mais le principe est totalement identique.Contrairement au cas précédent dans lequel la période est donnée en paramètre indépen-damment de tout événement extérieur, chaque front montant d’horloge (XTAL1A dans lemodèle) va déclencher un pic dont les caractéristiques seront déduites de la simulationstructurelle réalisée au paragraphe 3.6.4. Le modèle correspondant se trouve à l’annexeA.2.4.

Modèle avec équation courant crête/tension Afin de déterminer la relation linéaireapprochée courant crête/tension [38], un certain nombre de simulations ont été réaliséesen changeant simplement la tension du générateur continu. En-dessous de 3 V, le circuitne fonctionne plus, sinon on peut déduire de ces simulations que :

Icrte = 0.173 ∗ Vdd − 0.376

Le modèle de l’annexe A.2.5 traduit directement en VHDL-AMS la relation présentée.Seule l’architecture est fournie, l’entité étant identique à la précédente.Ce modèle va inclure la capacité MOS, qui fait intrinsèquement partie du bloc fonctionnelsimulé ; il est nécessaire de pouvoir en déterminer sa valeur.

Détermination de la capacité MOS

Dans une optique de prédiction du courant, il est nécessaire de pouvoir déduire avantfonderie la capacité MOS dynamique du bloc fonctionnel entre les deux rails d’alimenta-

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 90: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

70 Chapitre 3 : Modèle ICEM et modélisation comportementale

tion.Pour ce faire, nous allons utiliser une méthode simple déjà évoquée dans la littérature [19]qui effectuer une simulation AC de la netlist complète, grâce au simulateur Eldo, pour endéduire son impédance dynamique. Nous allons pour cela superposer le signal d’analyseAC à la polarisation continue nominale (ici 5 V), et visualiser le module du courant circu-lant entre Vdd et Vss, dont on peut déduire l’impédance dynamique. La simulation utilisepour les transistors les modèles BSIM3, qui prennent par conséquent en compte l’ensembledes capacités présentes dans la netlist. Elle travaille autour d’un point de fonctionnementnominal, qui est celui obtenu au démarrage du circuit.Les résultats en sont présentés pour le cœur et la SRAM sur la figure 3.18.

File : Wave_ProcessorXelga 3.8_1.1

1 100MEG10 10MEG100 1MEG1K 100K10KHz

-50

250

0

200

50

150

100

Zcore

1.02 Base

194.75

651.38K 651.38K

137.83

1.02 Base

194.75

651.38K 651.38K

137.83

File : Wave_ProcessorXelga 3.8_1.1

1 100MEG10 10MEG100 1MEG1K 100K10KHz

-2.0

14.0MEG

0.0

12.0

2.0

10.0

4.0

8.0

6.0

Zsram

1.02 Base

11.10MEG

183.10 182.09

7.72MEG

1.02 Base

11.10MEG

183.10 182.09

7.72MEG

Cœur SRAM

Fig. 3.18 – Simulations AC petits signaux

On remarque que l’impédance dynamique est approximativement une fonction du premierordre, que l’on peut donc assimiler à un circuit RC parallèle équivalent7. Sur la figure, on

7il s’agirait en fait d’une association R en parallèle avec RC série

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 91: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.7 Modélisation simple ICEM du cœur 71

peut déterminer la résistance DC R0 et la fréquence de coupure fc, d’où l’on déduit lacapacité AC simulée :

Csimul =1

2πfcR0

Cependant, lorsque l’on travaille en transitoire, seule l’une des capacités est active à uninstant donné selon l’état du circuit logique. Nous allons considérer ici que les capacitésNMOS et PMOS ont un rapport 1 :2 ; d’ailleurs, un examen plus approfondi des netlistsSPICE des bibliothèques fondeur indique que les transistors PMOS sont sensiblement detaille double à l’intérieur d’une cellule ; comme la capacité est proportionnelle à la surfacede la grille, on peut donc raisonnablement valider cette hypothèse. On se propose doncd’approximer la capacité MOS du modèle ICEM par la mise en série des deux capacitésCsimul et 2 Csimul, soit :

CMOS =2

3Csimul =

1

3πfcR0

Les calculs effectués donnent CMOS = 0.84 nF pour le cœur, CMOS = 53 pF pour laSRAM. Il est à noter que ces valeurs sont indépendantes de la tension d’alimentation dubloc, ce qui a été montré par plusieurs simulations successives.Le temps de simulation total est d’environ 2 heures pour chacun des deux blocs. Les simu-lations effectuées sur le bloc de mémoire Flash, comprenant beaucoup plus de transistors,ont par contre été arrêtées au bout d’un mois de calcul ; nous ne connaissons donc pas lacapacité dynamique de ce dernier. Etant donné le réseau d’alimentation bien maillé duViper, on peut considérer que les résistances inter-blocs (voir figure 3.3) sont quasimentnégligeables et donc que toutes les capacités dynamiques sont en parallèle. A la capacitéMOS de la Flash près, on peut par conséquent affirmer que la capacité MOS mesurée auparagraphe 3.3.5, d’environ 1 nF, est bien approximée par simulation.

Banc de test

Afin de réaliser le banc de test, il suffit de reproduire le modèle ICEM de la figure 3.19(correspondant à la figure 3.8) en VHDL-AMS. Il s’agit d’une simple instanciation descomposants avec leurs valeurs respectives dans un modèle purement structurel, commeindiqué à l’annexe A.2.6. Il s’agit là d’un choix délibéré ; le temps de simulation est en effetidentique à celui d’un modèle comportemental (dans lequel les équations courant/tensionsont exprimées directement), et un modèle structurel est plus modulaire, et plus simple àécrire pour un non-spécialiste du langage8.L’entité numérique TestBench, écrite par ATMEL et dont le source n’est pas fourni pourraisons de confidentialité, permet de générer les signaux de contrôle externes, dont lesignal d’horloge XTAL1A.

8la méthodologie doit être exploitable rapidement par un concepteur n’ayant que des notions élémen-taires de VHDL-AMS

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 92: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

72 Chapitre 3 : Modèle ICEM et modélisation comportementale

1 nF

2.4 Ω 4.7 nH

Ib

0.044 Ω 1.2 nH 1.2 Ω

220 pF

1 nF1 nH

0.083 Ω

Fig. 3.19 – Modèle ICEM déterminé expérimentalement (rappel)

Résultats obtenus

Les résultats de simulation du modèle comportemental avec résistance variable sontillustrés figure 3.20. Il est à noter qu’ils sont obtenus avec un facteur d’environ 1 à 2500 auniveau temps de simulation par rapport à la netlist (4 secondes contre environ 3 heures).

On peut remarquer que la forme du courant externe est tout à fait comparable à celleobtenue avec la netlist structurelle SPICE, au niveau des amplitudes comme des di

dt; le

modèle ayant été très simplifié (un seul type de pic de courant), on ne retrouve pas lesdifférences d’amplitude entre les pics observées avec celle-ci. Cependant ceci permet :

– de valider complètement le modèle ICEM– de montrer qu’un modèle VHDL-AMS est utilisable pour décrire entièrement le

comportement dynamique en courant d’un circuit intégré vis-à-vis de l’alimentationLa prise en compte de cette capacité MOS explique également les meilleurs résultatsobtenus par rapport à [7].La simulation du modèle avec équation courant-tension donne des résultats superposables.En effet, on observe sur la simulation que la chute de tension aux bornes du générateurde courant ne dépasse pas 120 mV. Le courant crête chute donc de :

– 120/5 = 24 mA pour le modèle résistif– 120 ∗ 0.173 = 20.7 mA pour le modèle avec équation

soit une différence entre les deux modèles d’environ 0.6 % sur le courant crête (3 mAsur 470 mA). Si le réseau d’alimentation possède une faible impédance, le modèle résistif,évitant de multiples simulations à Vcc variable, peut donc suffire.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 93: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

3.8 Utilisation pour la prédiction en courant 73

27 Aug 200317:27:12

File : icemtest_core

0.0 2.0e-70.2 1.80.4 1.60.6 1.40.8 1.21.0s

-0.1

0.6

-0.0

0.5

0.1

0.4

0.2

0.3

A S(:icemtest_core:ib:isw)_1:2

0.0 2.0e-70.2 1.80.4 1.60.6 1.40.8 1.21.0s

-0.005

0.030

0.000

0.025

0.005

0.020

0.010

0.015

A S(:icemtest_core:rmeas:ir)_2:2

Courant interne (modèle)

Courant externe (modèle)

Fig. 3.20 – Courants interne et externe du modèle comportemental

3.8 Utilisation pour la prédiction en courant

Une fois le modèle ICEM entièrement validé, nous allons maintenant donner une mé-thode de prédiction de l’émission conduite.

3.8.1 Au niveau circuit intégré

En ce qui concerne le circuit intégré lui-même, un certain nombre de paramètresdoivent être extraits par mesure, d’autres peuvent l’être par simulation :

1. actuellement, les paramètres du boîtier et du bonding sont extraits par mesure ;nous travaillons actuellement (en collaboration avec ATMEL) sur une méthode deréflectométrie temporelle permettant de distinguer les deux et d’obtenir une modé-lisation en constantes réparties à des fréquences plus élevées. Néanmoins, le fondeurayant à sa disposition un certain nombre de boîtiers, une bibliothèque de modèlespeut être établie indépendamment de la puce elle-même.

2. la capacité MOS peut être extraite par simulation AC avec une relativement bonne

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 94: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

74 Chapitre 3 : Modèle ICEM et modélisation comportementale

précision.

3. le générateur de courant équivalent peut être extrait et modélisé par simulationstructurelle.

4. la résistance et la capacité métalliques, quant à elles, ne peuvent être actuellementextraites que par des outils coûteux et après layout ; on peut en prendre pour pre-mière approximation la capacité MOS dont on peut constater expérimentalementqu’elle est du même ordre de grandeur (entre une et deux fois sa valeur).

3.8.2 Au niveau carte

Le modèle ICEM étendu peut ensuite être utilisé pour vérifier les perturbations auniveau circuit imprimé, ainsi que l’influence des plans de masse et découplages. Le fait dedisposer d’un modèle comportemental du circuit, très rapide à simuler, permet à l’expertCEM d’effectuer ses prédictions en un minimum de temps pour de nombreux cas différents.

3.9 Conclusion générale

Dans ce chapitre, en collaboration avec ATMEL Nantes (Jean-Luc Levant pour laméthode de détermination du réseau passif, Eric Tinlot pour les mesures du réseau passifdu Viper), nous avons totalement validé le modèle ICEM, y compris sur la partie généra-teur de courant. Son utilité pour la prédiction avant fonderie des perturbations conduitesgénérées sur l’alimentation d’un circuit intégré a été démontrée.Notre approche permet de déterminer de manière séparée les activités en courant desdifférents blocs d’un circuit intégré. Nous avons également montré qu’un modèle com-portemental en VHDL-AMS permet de réduire les temps de simulation d’une manièreremarquable, ce qui rend les résultats utilisables pour un équipementier ou un expertCEM.Forts de ces résultats, nous allons maintenant établir une méthodologie d’écriture de mo-dèles comportementaux ICEM spécifiques. Le chapitre 4 sera consacré aux mémoires RAMstatiques (SRAM) tandis que le chapitre 5 traitera du cœur du microcontrôleur en tenantcompte du code exécuté et des entrées/sorties.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 95: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Chapitre 4

Modélisation comportementale ICEM

des mémoires SRAM

4.1 Préambule et objectifs

Dans le précédent chapitre, nous avons vu comment modéliser d’un point de vue CEM,grâce au modèle ICEM et au langage VHDL-AMS, le courant dynamique consommé parun cœur de microcontrôleur. Cependant, ce modèle ne tient aucunement compte de laconsommation dynamique des blocs mémoire, c’est-à-dire ici :

– le bloc de Flash EEPROM de 32 Koctets contenant le code exécutable– le bloc de RAM statique (SRAM) de 1280 octets contenant les données

Seule la prise en compte de ces blocs permettra une comparaison valable avec les mesureseffectuées en mode de fonctionnement nominal du circuit (hors mode RESET).

4.1.1 Comparaison des consommations

Afin de mieux appréhender l’opportunité de la modélisation de ces blocs, la premièreétape doit consister en une comparaison des consommations dynamiques des blocs mé-moire non seulement entre eux, mais aussi vis-à-vis du cœur.A cet effet, une première simulation très simple sous ADVance-MS Mach, utilisant leprincipe décrit au paragraphe 3.5.4, a été effectuée sur les deux blocs ; elle consiste en unaccès en écriture sur une cellule mémoire. Les résultats en sont présentés figure 4.1.On peut voir que le courant interne crête consommé par la Flash EEPROM est environ35 fois inférieur à celui consommé par la SRAM (qui lui-même est environ le vingtièmede celui du cœur), avec des temps de montée de même ordre de grandeur. On peut doncvalablement négliger le courant de la Flash, qui ne représentera qu’environ 0.15 % ducourant dynamique total.

75

Page 96: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

76 Chapitre 4 : Modélisation comportementale ICEM des mémoires SRAM

7.960 8.005e-67.965 7.970 7.9957.975 7.9907.980 7.985s

-2

7e-4

-1

6

0

5

1

4

2

3

Iflash

7.960 8.005e-67.965 7.970 7.9957.975 7.9907.980 7.985s

test_flash:ytestbench:add_18:1

7.960 8.005e-67.965 7.970 7.9957.975 7.9907.980 7.985s

test_flash:ytestbench:rdb_19:1

x3f x40

Cellule mémoire

0 8e-81 72 63 54s

-0.005

0.030

0.000

0.025

0.005

0.020

0.010

0.015

Isram

0 8e-81 72 63 54s

test_ramv:ytestbench:add_23:1

0 8e-81 72 63 54s

test_ramv:ytestbench:me_25:1

x0 x1

U

Cellules mémoire

Décodeur

Flash EEPROM SRAM

Fig. 4.1 – Simulation initiale d’un accès à une cellule mémoire

4.1.2 Intérêt de la simulation des SRAM

Le modèle ICEM est destiné à terme aux circuits intégrés à haute densité tels queles microprocesseurs et microcontrôleurs 32 bits, bien qu’il soit nécessaire de le valider enpremier sur des circuits plus simples comme celui utilisé dans notre étude. Ces circuits 32bits, de type RISC (Reduced Instruction Set Computer) ont la particularité (entre autres)de pouvoir exécuter au plus, pour chacune de leurs unités internes, une instruction parcycle d’horloge [74] ; ceci nécessite par conséquent de pouvoir accéder à la mémoire enun cycle également. Pour ce faire, ils utilisent des mémoires caches, contenant une imaged’une partie de la mémoire centrale à un instant donné, et qui sont des mémoires SRAMrapides synchrones ou asynchrones. La consommation de ce type de mémoire, si elle n’estpas primordiale pour un microcontrôleur 8 bits, le devient pour les processeurs modernes.Il semble donc prometteur d’étudier de manière approfondie le courant consommé par cesmémoires statiques.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 97: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

4.2 Architecture interne des mémoires SRAM 77

4.1.3 Approche utilisée

Après une présentation de l’architecture interne des mémoires SRAM au sens le plusgénérique, une étude théorique de chacun des blocs fonctionnels permettra d’en prédire lesprofils de courant associés. Ces prédictions seront confrontées à des simulations effectuéesau niveau transistor, ce qui permettra d’en déduire des modèles comportementaux VHDL-AMS génériques. Ces derniers seront codés dans l’esprit de la norme VITAL qui seradétaillée ci-après.

4.2 Architecture interne des mémoires SRAM

De manière générale, une mémoire SRAM, comme indiqué sur la figure 4.2, est consti-tuée d’une matrice de cellules mémoires, chacune étant composée de deux inverseurstête-bêche formant une bascule. Ces cellules sont reliées à des couples de "bitlines" autravers de transistors de passage.Chaque cellule mémoire élémentaire comprend donc généralement 6 transistors, plus unelogique de précharge qui peut être implémentée de plusieurs manières différentes ; unevariante est représentée figure 4.3. On peut également, si l’on peut s’accommoder d’uncourant statique plus important, remplacer les deux transistors PMOS de la cellule pardes résistances.Une SRAM comprend également :

– un décodeur de rangées activant des "wordlines", ces dernières servant à connecterles cellules de la rangée correspondante à leurs bitlines respectives.

– un décodeur de colonnes pilotant des multiplexeurs, ces derniers connectant le couplede bitlines sélectionné aux circuits d’entrée/sortie

– des amplificateurs de lecture ("sense amplifiers") qui ont pour objet l’amplificationdu signal différentiel présent sur les bitlines sélectionnées lors d’un accès en lecture

– des amplificateurs d’écriture forçant l’état des bitlines lors d’un accès en écriture– une logique de contrôle s’occupant de la sélection des amplificateurs et de la pré-

charge des bitlines, comme indiqué plus loin– des circuits d’entrée/sortie pilotant les bus d’adresses et de données

L’association du décodeur de rangées et du décodeur de colonnes forme le décodeurd’adresses proprement dit. Les bits de poids fort de l’adresse sont envoyés sur le pre-mier, les bits de poids faible sur le second.Les SRAMs de plus grande capacité peuvent être séparées en plusieurs blocs mémoireidentiques, eux-mêmes sélectionnés par un décodeur de blocs piloté par les bits de poidsle plus faible de l’adresse.Le principe de fonctionnement d’une SRAM est le suivant :

– en lecture, les bitlines sont d’abord préchargées à une tension voisine de celle del’alimentation ou bien à la moitié (et les tensions des deux bitlines sont égalisées) ;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 98: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

78 Chapitre 4 : Modélisation comportementale ICEM des mémoires SRAM

?6

wordline

bitline

amplificateur de lecture

(sense amplifier)

amplificateur d’écriture

données sortantesdonnées entrantes

multiplexeurs

de colonnes

décodeur de colonnes

décodeur de rangées

-

-

m

n

bus d’adresses

contrôle

--

-

-

enable

write

cellule mémoire

-2n

6

?

2m

Fig. 4.2 – Synoptique d’une mémoire SRAM (d’après [2])

lorsque la wordline correspondant à la rangée est ensuite activée, le transistor depassage devient conducteur, et la bitline reliée au nœud "0" de la cellule mémoire sedécharge par conséquent. Ceci crée une tension différentielle entre les deux bitlines,qui est amplifiée afin non seulement de piloter les circuits de sortie, mais aussid’accélérer notablement les transitions (la détection s’effectue pour la plus petitedifférence de tension décelable)

– en écriture, les données sont transférées par mise à la masse de l’une des bitlineset à l’alimentation de l’autre ; lorsque la donnée écrite est différente de la donnéeinitialement stockée, il y a décharge du nœud "1" de la cellule lorsque le transistor

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 99: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

4.3 Etude théorique succincte de l’activité en courant des différents blocs fonctionnels 79

e

e

e

e eprécharge

bitline bitline

wordline

cellule

circuit deprécharge

Fig. 4.3 – Schéma d’une cellule de mémoire SRAM

de passage devient actifRemarque : la précharge peut s’effectuer pendant le décodage d’adresses, jusqu’à valida-tion effective de la wordline correspondante.La conception du décodeur d’adresses joue un rôle important dans l’optimisation de laconsommation des SRAM [2] ; c’est donc un point sur lequel le concepteur va agir, etl’organisation interne d’un tel décodeur varie étroitement avec l’architecture envisagée..

4.3 Etude théorique succincte de l’activité en courant

des différents blocs fonctionnels

Ce travail est étroitement basé sur le document de référence de Wilton et Jouppi [104]qui décrit des modèles de séquencement et de temps d’accès pour les mémoires caches,dont une partie (la mémoire données) est une SRAM classique. Ce document a été résumépar Saillé [79] et exploité pour estimer l’énergie totale consommée lors d’un cycle ; nousl’utiliserons ici pour en déduire le comportement dynamique.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 100: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

80 Chapitre 4 : Modélisation comportementale ICEM des mémoires SRAM

4.3.1 Décodeur d’adresses

Généralités

Le bloc mémoire considéré dans cette étude est un bloc ARAM (Asynchronous RAM)ATMEL. Il possède une taille de 1280 octets, donc un bus d’adresses de 11 bits. Il estorganisé en 4 blocs de 4 colonnes et 80 rangées chacun ; chaque colonne contient doncun octet. Deux signaux de contrôle, WEN (signal de sélection du mode lecture/écriture,mode écriture sur un niveau bas) et ME (validation de la mémoire, actif au niveau haut)complètent l’interface de ce bloc.Le décodeur d’adresses, d’après la data-sheet du fondeur, est divisé en 3 sous-décodeurs :

1. un décodeur de blocs 2 vers 4, appelé Z

2. un décodeur de colonnes 2 vers 4 appelé Y ; ce décodeur est dédoublé, l’un servantpour la lecture, l’autre pour l’écriture

3. un décodeur de rangées 7 vers 128 appelé X ; pour ce dernier, seules les valeurs $00à $4F sélectionnent réellement une wordline (espace décodé)

Même si elle n’est pas explicitement mentionnée dans la documentation, l’assignation desbits d’adresses aux décodeurs est obligatoirement X,Y,Z du MSB au LSB ; dans le cascontraire, l’adressage ne serait pas contigu (le décodeur X n’est pas complet). Nous avonsdonc le schéma de décodage représenté sur la figure 4.4.

X Y

10 34 2

Z

1 0

Fig. 4.4 – Découpage de l’adresse selon les décodeurs

En fait, chaque bloc possède ses propres wordlines ; la sélection d’une wordline à l’intérieurde l’ensemble de la SRAM s’effectue donc par combinaison entre la sortie du décodeur Xet celle du décodeur Z.Ces décodeurs sont donc de complexité totalement différente comme nous allons le voirpar la suite.

Décodeur Z

Le décodeur de blocs Z est un simple décodeur 2 vers 4 à un étage utilisant des portesNAND et des inverseurs (figure 4.5), sélectionnant ensuite le décodeur X du bloc corres-pondant. Il y aura donc commutation s’il s’opère un changement d’état des bits 0 ou 1 del’adresse présentée à la SRAM.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 101: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

4.3 Etude théorique succincte de l’activité en courant des différents blocs fonctionnels 81

e ee ee

A0 A0

A0 A0A1 A1

A1 A1

A0 A0

A0A1 A0A1

2 inverseurs 4 NAND

Fig. 4.5 – Principe du décodeur Z

Dans ce cas, un pic de courant associé sera généré lors de la transition sur les adresses.Comme ce décodeur ne possède qu’un seul étage (mis à part le driver de wordline), lavaleur crête de ce pic sera proportionnelle au nombre de commutations des bits d’adresse,donc à la distance de Hamming entre la nouvelle adresse et l’adresse précédente sur lesdeux bits considérés. De plus, comme l’indiquent Hirata [42] et Chatzigeorgiou [8], le re-tard entre la commutation des bits d’adresse et le pic de courant sera une fonction affinedu temps de montée des signaux d’adresse. Ils montrent également que ce pic de courantest sensiblement triangulaire, ce qui rend possible son implémentation par une fonctionlinéaire par morceaux (PWL) comme pour le modèle de cœur.Une approximation plus précise du courant consommé est obtenue en considérant deuxcourants différents lors de la mise en conduction des transistors NMOS ou des transistorsPMOS, les capacités associées étant elles-aussi différentes. On peut donc plutôt définirdeux distances de Hamming, l’une concernant les transitions de 0 vers 1, l’autre les tran-sitions réciproques, et effectuer la somme pondérée des formes d’onde associées à chacuned’elles. C’est ce qui sera effectivement implémenté dans le modèle VHDL-AMS (voir 4.6).

Décodeur Y

Les décodeurs de colonnes Y sont identiques dans leur principe au décodeur Z, et ilsne possèdent également qu’un seul étage. La méthode proposée ci-dessus est donc direc-tement applicable et l’on peut s’attendre à un résultat totalement similaire. Cependantils dépendent du mode d’accès à la SRAM (lecture ou écriture) ; il y aura donc des com-mutations supplémentaires (donc des pics de courant), dues entre autres à la sélectionde ces décodeurs, lorsqu’un changement d’état aura lieu sur le signal WEN de mode

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 102: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

82 Chapitre 4 : Modélisation comportementale ICEM des mémoires SRAM

lecture/écriture.

Décodeur X

Le décodeur X est beaucoup plus complexe que les autres, étant donné qu’il s’occupeà lui seul de 7 bits d’adresses (bits 4 à 10). Il comprend donc plusieurs étages. Wilton etJouppi [104] en donnent une illustration générique, reprise figure 4.6.Ce décodeur est généralement constitué de prédécodeurs 3 vers 8 ou bien 2 vers 4 (consti-tués de portes NAND) qui forment le premier étage ; leurs sorties sont reliées à un étagede portes NOR, ces dernières attaquant les drivers de wordlines.Le bloc de SRAM étant obtenu à partir d’un générateur automatique de layout conçupar une tierce partie, ATMEL ne possède aucune information précise sur la constitutioninterne du décodeur X. Nous essaierons donc d’en extraire directement un modèle à partirdes simulations électriques.On peut néanmoins émettre l’hypothèse que les 3 bits de poids fort sont gérés par unprédécodeur 3 vers 8. En effet, seules 5 combinaisons de ces 3 bits parmi les 8 possiblesadressent réellement le plan mémoire (adresses $000 à $4FF) ; il n’est donc pas réalistepar exemple d’utiliser pour ce faire un prédécodeur 2 vers 4 pour les bits 10 et 9, noncorrélé avec ceux gérant les bits de poids inférieur. Une hypothèse plausible est donc :

– deux prédécodeurs 2 vers 4 gérant les bits 4 et 5 d’une part et 6 et 7 d’autre part– un prédécodeur 3 vers 8 gérant les bits 8 à 10

Les prédécodeurs 2 vers 4 sont de constitution similaire à celle des décodeurs Y et Z.En ce qui concerne la forme d’onde totale obtenue pour le décodeur X, on peut alorsconclure qu’elle se trouve être la somme de plusieurs pics successifs, l’un obtenu pour lesprédécodeurs, l’autre pour l’étage de portes NOR. Ces étages étant en cascade, l’influencedes temps de montée sera différente dans les deux cas. De plus, alors que pour les prédé-codeurs, le nombre de commutations est bien proportionnel aux distances de Hammingcomme pour les décodeurs Y et Z, il est identique pour le second étage quelles que soientles transitions sur les adresses (une seule porte NOR est à l’état logique actif à un instantdonné). On peut donc penser que cette proportionnalité ne s’appliquera qu’au premierpic de courant.

4.3.2 Cellules mémoire et amplificateurs

Comme nous l’avons dit précédemment, les bascules constituant les cellules mémoiresont reliées aux bitlines par l’intermédiaire de transistors de passage pilotés par les word-lines.En écriture, les bitlines sont pilotées par un amplificateur et vont commuter symétrique-ment, l’une vers 0, l’autre vers 1, à partir d’un niveau identique. Quelle que soit la donnéeécrite, on pourra donc observer une commutation identique qui génèrera un pic de courantde même amplitude.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 103: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

4.3 Etude théorique succincte de l’activité en courant des différents blocs fonctionnels 83

e

e

e

e

e

e

e

e

ee

e

e

e

e

e

e

e

e

e

e

e

e

e

in

driver de wordlineportes NOR

?vers autres décodeurs

Fig. 4.6 – Principe du décodeur X (d’après [104])

En lecture, ce sont les bitlines qui pilotent les amplificateurs de lecture puis les driversde sortie. Les amplificateurs de lecture vont donc commuter selon la donnée lue, maisl’intensité du pic de courant associé sera a priori moindre que celle observée pour les am-plificateurs d’écriture, puisque ceux-ci ont simplement pour objet l’amplification du signaldifférentiel sans pour autant délivrer un courant important. On peut donc s’attendre à

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 104: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

84 Chapitre 4 : Modélisation comportementale ICEM des mémoires SRAM

un pire cas, constant ou presque, lors des opérations d’écriture.D’autre part, la sélection des wordlines va s’effectuer de la même manière lors de la lectureet de l’écriture, ce qui va générer un autre pic de courant identique dans les deux cas.Cependant, dans la SRAM étudiée, certaines adresses ($500 à $7FF) n’ont pas de cellulemémoire associée ; les wordlines correspondantes ne pilotent donc pas de transistors depassage, et la charge capacitive en est fortement réduite ; le pic de courant sera doncd’amplitude réduite dans ce cas.

4.4 Validation par simulation électrique

4.4.1 Principe

La simulation électrique (niveau transistor) va permettre non seulement de valider leshypothèses formulées précédemment, mais aussi d’extraire tous les paramètres permettantde construire le modèle VHDL-AMS d’activité. Comme indiqué au paragraphe 3.5.4, elleconsiste à piloter la netlist de la SRAM, au niveau transistor, par des fichiers de test écritsen VHDL, au travers de convertisseurs numérique/analogique dont le temps de montéeest paramétrable. Ce principe est rappelé sur la figure 4.7.

SRAM

structural

netlist

(.CIR)

A2D

D2A

- -

?

VHDL

test

bench

Fig. 4.7 – Méthode d’extraction du courant des mémoires (rappel)

Un fichier de plus haut niveau ("top"), au format SPICE, va permettre cette connexion.Il aurait été possible de coder ce fichier en VHDL-AMS, mais cette possibilité n’était pasopérationnelle sur l’outil au moment de ce codage ; de plus, la toute dernière version del’outil (11/2003) permet maintenant de remplacer directement un fichier SPICE par unmodèle VHDL-AMS, facilitant encore la démarche. Un exemple de fichier "top" est donné

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 105: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

4.4 Validation par simulation électrique 85

à l’annexe A.3.1.Il s’agit donc d’un fichier Eldo "classique" dans lequel les modèles VHDL-AMS sontpris directement dans la bibliothèque dans laquelle ils ont été compilés (ici "ATMEL").On remarque qu’il est possible de paramétrer directement les temps de montée et dedescente des convertisseurs N/A, ce qui aura toute son importance par la suite. En effet,le fait d’inclure ces temps de montée en paramètres dans le modèle permet de s’affranchirtotalement de ce passage dans le monde analogique pour ne travailler qu’avec des signauxd’entrée exclusivement numériques lors de la simulation VHDL-AMS.Un premier exemple de simulation pour une écriture est présenté figure 4.8. On peut yvoir pour chaque accès :

– un pic de faible amplitude lié au changement d’adresse (et donc lié au décodeur)– un pic de plus forte amplitude lié au signal ME et donc aux cellules et amplificateurs

13 Dec 200308:06:49

File : test_RAM_decode_YZ.wdb

0.0 2.0e-70.2 1.80.4 1.60.6 1.40.8 1.21.0s

-0.005

0.030

0.000

0.025

0.005

0.020

0.010

0.015

A I(RVDD1)_13:7

0.0 2.0e-70.2 1.80.4 1.60.6 1.40.8 1.21.0s

test_ram_decode_yz:ytestbench:add_15:7

0.0 2.0e-70.2 1.80.4 1.60.6 1.40.8 1.21.0s

test_ram_decode_yz:ytestbench:me_16:7

x0 x1 x2 x3

Fig. 4.8 – Simulation préliminaire de la SRAM en écriture

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 106: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

86 Chapitre 4 : Modélisation comportementale ICEM des mémoires SRAM

L’écriture des fichiers de test découle directement de l’étude architecturale préliminaire dé-crite plus haut. Elle est propre à chaque catégorie de mémoire (SRAM, DRAM, Flash/EEPROM...) mais il est envisageable de la généraliser à l’ensemble des composants appartenant àune même famille. Elle consiste à exciter séparément les différentes unités fonctionnellesafin de décorréler complètement leurs activités et les influences de chacun des signauxd’entrée.

4.4.2 Décodeurs d’adresses

Décodeurs Y et Z

Les fichiers de test pour les décodeurs Y et Z sont très simples :

1. un premier fichier balaie les deux décodeurs en code Gray afin de déterminer l’in-fluence des temps de montée ainsi que les valeurs crête des pics de courant pour lesdeux types de transitions

2. un deuxième fichier les balaie en binaire pur afin de vérifier les proportionnalités desvaleurs crête des pics de courant avec la distance de Hamming entre les adresses

Le code du fichier test en code Gray est donné à l’annexe A.3.2, et les résultats de simu-lation obtenus sont représentés figure 4.9.On peut voir que les pics de courant sont moins importants pour les transitions vers 0 quepour celles vers 1, et qu’il y a comme prévu proportionnalité directe avec les distances deHamming calculées pour chaque transition (lors de la transition d’adresse $001 vers $002,l’amplitude crête est bien la somme de celle des pics associés aux deux transitions).Il a été également remarqué, lors de tests effectués avec plusieurs temps de montée tr, quele retard td entre le basculement de l’adresse dans le fichier de test VHDL (numérique) etla crête du pic de courant associé est une fonction affine de tr

2(ici td = tr

2+ 0.54 ns), ce

qui correspond au résultat déjà énoncé.Afin de valider l’hypothèse d’une commutation entre les deux décodeurs Y lors d’un pas-sage lecture/écriture et inversement, une simulation a été effectuée avec un simple bascu-lement du signal WEN, toutes choses étant égales par ailleurs. La figure 4.10 montre lecourant obtenu pour deux temps de montée différents.On observe effectivement deux pics de courant d’amplitude crête non négligeable devantcelle du pic associé aux cellules (10 mA en commutation vers lecture), et dont le retardest là encore une fonction affine de la moitié de temps de montée.

Décodeur X

Le décodeur X, de constitution non précisée par le fondeur, est plus complexe à tester.Nous avons donc fait l’hypothèse, évoquée plus haut, d’un décodeur de type 3-2-2. Lesfichiers de test associés vont par conséquent être fondés sur le même principe que ceuxutilisés pour les décodeurs Y et Z, chaque sous-décodeur étant testé séparément. Ici,

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 107: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

4.4 Validation par simulation électrique 87

19 Dec 200308:43:16

File : test_RAM_decode_YZ.wdb

200.0 260.0N210.0 250.0220.0 240.0230.0s

-400

800U

-200

600

0

400

200

A I(RVDD1)_13:1

203.4226N Base

733.4895U

253.5177N 50.0951N

599.1300U

200.0 260.0N210.0 250.0220.0 240.0230.0s

test_ram_decode_yz:ytestbench:add_15:1

200.0 260.0N210.0 250.0220.0 240.0230.0s

test_ram_decode_yz:ytestbench:me_16:1

x3 x1

203.4226N Base

733.4895U

253.5177N 50.0951N

599.1300U

Cellules mémoire

Transition 0−>1 (1 bit)

Transition 1−>0 (1 bit)

Désélection (non

prise en compte)

13 Dec 200311:09:40

File : test_RAM_decode_YZ_bin.wdb

40.0 110.0N50.0 100.060.0 90.070.0 80.0s

-0.2

1.8M

0.0

1.6

0.2

1.4

0.4

1.2

0.6

1.0

0.8

A I(RVDD1)_13:9

53.5284N Base

737.3646U

103.5461N 50.0177N

1.3627M

40.0 110.0N50.0 100.060.0 90.070.0 80.0s

test_ram_decode_yz:ytestbench:add_15:9

40.0 110.0N50.0 100.060.0 90.070.0 80.0s

test_ram_decode_yz:ytestbench:me_16:9

x0 x1 x2

53.5284N Base

737.3646U

103.5461N 50.0177N

1.3627M

Cellules mémoire

somme des 2 amplitudesTransitions 0−>1 et 1−>0 :

Transition 0−>1

Code Gray Code binaire pur

Fig. 4.9 – Simulation des décodeurs Y et Z

étant donnée la constitution interne du décodeur (plusieurs étages), il est indispensablede vérifier, pour différents temps de montée, la relation temporelle entre les pics associésaux prédécodeurs (portes NAND) et ceux relatifs au deuxième étage (portes NOR). Lessimulations ont donc été menées pour une large gamme de temps (200 ps, 1, 2, 6, 8.5 et11 ns).Quelques résultats en sont illustrés sur la figure 4.11.Les résultats obtenus pour le prédécodeur X2 (bits 6 et 7) ne sont pas représentés car ilssont identiques à ceux observés pour X1. Dans tous les cas, les deux pics séparés pour leprédécodeur et le second étage sont clairement visibles sur la figure. En raison de la miseen cascade des deux étages, les coefficients de proportionnalité entre le temps de montéeet le retard des pics sont différents ( tr

2pour le premier et environ 3tr

5pour le second,

ce dernier dépendant des caractéristiques électriques du premier) ; lorsque le temps demontée du signal d’adresse se réduit, ces deux pics ont par conséquent tendance à seconfondre en un seul, ce qui est clairement observé sur la simulation.Un autre résultat intéressant est la constance du second pic quelle que soit la succession

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 108: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

88 Chapitre 4 : Modélisation comportementale ICEM des mémoires SRAM

2.495 2.545U2.500 2.505 2.5352.510 2.5302.515 2.5252.520s

-0.005

0.030

0.000

0.025

0.005

0.020

0.010

0.015

A I(RVDD)_28:2 I(RVDD)_17:3

2.5000U Base

720.2049N 4.7293U

2.5038U 3.7653N

9.9411U

5.7650M

2.5249U 24.9562N

600.6788N-2.8131U

2.5289U 28.8967N

-13.0697U

10.2174M

2.495 2.545U2.500 2.505 2.5352.510 2.5302.515 2.5252.520s

test_ramv_rw:ytestbench:datain_32:2

2.495 2.545U2.500 2.505 2.5352.510 2.5302.515 2.5252.520s

test_ramv_rw:ytestbench:dataout_33:2

2.495 2.545U2.500 2.505 2.5352.510 2.5302.515 2.5252.520s

test_ramv_rw:ytestbench:me_34:2

2.495 2.545U2.500 2.505 2.5352.510 2.5302.515 2.5252.520s

test_ramv_rw:ytestbench:wen_35:2

x31 x32

x31 x32

2.5000U Base

720.2049N 4.7293U

2.5038U 3.7653N

9.9411U

5.7650M

2.5249U 24.9562N

600.6788N-2.8131U

2.5289U 28.8967N

-13.0697U

10.2174M

Cellules

Décodeur YWEN : 0 −> 1

Décodeur YWEN : 1 −> 0

Fig. 4.10 – Simulation de la commutation lecture/écriture

des adresses, ce qui corrobore la réflexion du paragraphe 4.3.1 selon laquelle le secondétage du décodeur X est uniquement constitué de portes NOR dont une seule est activequelle que soit l’adresse sélectionnée.Cependant, une simulation effectuée sur le bit de poids fort (A10) de l’adresse (figure4.12) révèle que les poids forts ne sont pas gérés par un décodeur 3 vers 8 contrairementà notre hypothèse de départ, mais visiblement par un autre décodeur 2 vers 4 (bits 8 et9) et un étage supplémentaire de décodage pour le bit 10. En effet, la commutation dece bit ajoute deux pics supplémentaires totalement décorrélés de ceux observés pour lesbits 8 et 9 (retards égaux respectivement à environ 3tr

5et 2tr

3). Nous en tiendrons compte

séparément lors de la modélisation.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 109: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

4.4 Validation par simulation électrique 89

49.0 59.0N50.0 58.051.0 57.052.0 56.053.0 55.054.0s

-0.5

4.5M

0.0

4.0

0.5

3.5

1.0

3.0

1.5

2.5

2.0

A

I(RVDD)_12:2 I(RVDD)_12:3 I(RVDD)_12:4 I(RVDD)_12:5

I(RVDD)_12:6

50.0018N Base

347.6587N-167.1227N-1.7612U 84.4863N-276.5589N

51.1543N 1.1525N

3.9992M

125.9781U 16.4319U

782.4726N 782.4726N

51.7305N 1.7287N

8.6072U

4.0070M

39.9061U 24.2567U 8.6072U

53.9113N 3.9096N

44.4736N 782.4726N

2.9898M

141.6275U 79.0297U

54.1507N 4.1489N

44.4736N 8.6072U

1.3229M

154.3533U 94.6792U

55.2234N 5.2216N

44.4736N 8.6072U 782.4726N

2.9429M

157.2770U

55.6135N 5.6117N

-230.0811N 8.6072U 782.4726N

1.2919M

188.5759U

56.5443N 6.5426N

-230.0811N 782.4726N 3.6319U 782.4726N

2.8333M

57.1472N 7.1454N

-230.0811N 782.4726N-569.2989N 8.6072U

1.3466M

49.0 59.0N50.0 58.051.0 57.052.0 56.053.0 55.054.0s

test_ram_decode_x_ms:ytestbench:add_14:2

49.0 59.0N50.0 58.051.0 57.052.0 56.053.0 55.054.0s

test_ram_decode_x_ms:ytestbench:me_15:2

x0 x10

50.0018N Base

347.6587N-167.1227N-1.7612U 84.4863N-276.5589N

51.1543N 1.1525N

3.9992M

125.9781U 16.4319U

782.4726N 782.4726N

51.7305N 1.7287N

8.6072U

4.0070M

39.9061U 24.2567U 8.6072U

53.9113N 3.9096N

44.4736N 782.4726N

2.9898M

141.6275U 79.0297U

54.1507N 4.1489N

44.4736N 8.6072U

1.3229M

154.3533U 94.6792U

55.2234N 5.2216N

44.4736N 8.6072U 782.4726N

2.9429M

157.2770U

55.6135N 5.6117N

-230.0811N 8.6072U 782.4726N

1.2919M

188.5759U

56.5443N 6.5426N

-230.0811N 782.4726N 3.6319U 782.4726N

2.8333M

57.1472N 7.1454N

-230.0811N 782.4726N-569.2989N 8.6072U

1.3466M

Prédécodeurs

Portes NOR

399.00 409.00N401.00 407.00402.00 406.00403.00 405.00404.00s

-0.5

4.5M

0.0

4.0

0.5

3.5

1.0

3.0

1.5

2.5

2.0

A

I(RVDD)_12:2 I(RVDD)_12:3 I(RVDD)_12:4 I(RVDD)_12:5

I(RVDD)_12:6

400.0018N Base

32.7835N-958.4672N-177.9763N-415.6619N 56.8033N

403.9113N 3.9096N

1.1224U 8.6072U

2.9116M

141.6275U 79.0297U

404.1241N 4.1223N

1.1224U 8.6072U

1.5501M

157.2770U 94.6792U

405.2145N 5.2128N

-152.9668N-3.0571U 782.4726N

2.8881M

157.2770U

405.6135N 5.6117N

-152.9668N-3.0571U 782.4726N

1.3701M

180.7512U

406.5177N 6.5160N

-152.9668N 782.4726N 8.6072U 782.4726N

2.7864M

407.0762N 7.0745N

-152.9668N 782.4726N 512.3399N 8.6072U

1.3545M

399.00 409.00N401.00 407.00402.00 406.00403.00 405.00404.00s

test_ram_decode_x_ms:ytestbench:add_14:2

399.00 409.00N401.00 407.00402.00 406.00403.00 405.00404.00s

test_ram_decode_x_ms:ytestbench:me_15:2

x0 x40

400.0018N Base

32.7835N-958.4672N-177.9763N-415.6619N 56.8033N

403.9113N 3.9096N

1.1224U 8.6072U

2.9116M

141.6275U 79.0297U

404.1241N 4.1223N

1.1224U 8.6072U

1.5501M

157.2770U 94.6792U

405.2145N 5.2128N

-152.9668N-3.0571U 782.4726N

2.8881M

157.2770U

405.6135N 5.6117N

-152.9668N-3.0571U 782.4726N

1.3701M

180.7512U

406.5177N 6.5160N

-152.9668N 782.4726N 8.6072U 782.4726N

2.7864M

407.0762N 7.0745N

-152.9668N 782.4726N 512.3399N 8.6072U

1.3545M

Prédécodeurs

Portes NOR

Prédécodeur X1 (bits 4 et 5) Prédécodeur X3 (bits 10 à 8)

Fig. 4.11 – Simulation des sous-décodeurs X

4.4.3 Cellules mémoire et amplificateurs

Lors de la commutation lecture/écriture évoquée précédemment, on peut s’intéresserégalement à la nature du pic associé aux cellules et amplificateurs. La figure 4.13 présenteles résultats obtenus pour une écriture suivie d’une lecture (à gauche) et pour des écrituresdans des zones décodées ou non (droite).On peut remarquer :

– le pic supplémentaire induit par la commutation des amplificateurs d’écriture lorsde cette dernière opération ; lors des lectures, les pics observés à cet endroit sonteffectivement fonction des données contenues dans la mémoire, mais sans jamaisatteindre l’amplitude observée en écriture

– la réduction effective de l’amplitude du pic associé aux wordlines pour les adressesnon décodées

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 110: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

90 Chapitre 4 : Modélisation comportementale ICEM des mémoires SRAM

749.00 758.00N751.00 756.00752.00 755.00753.00 754.00s

-0.5

3.0M

0.0

2.5

0.5

2.0

1.0

1.5

A

I(RVDD)_12:2 I(RVDD)_12:3 I(RVDD)_12:4 I(RVDD)_12:5

I(RVDD)_12:6

749.9973N Base

-1.4472U-3.0252U-211.9206N 174.9838N 68.5944N

753.2606N 3.2633N

693.2886N 1.1122U

2.3427M

135.3678U 80.5947U

753.8750N 3.8777N

969.4408N 857.5333N

2.5892M

294.2097U

113.4585U

754.3777N 4.3803N

969.4408N 857.5333N 31.2989U

2.2715M

162.7543U

755.1755N 5.1782N

13.5473N 857.5333N 3.9124U

2.5947M

485.9155U

755.4867N 5.4894N

13.5473N 184.3943N 3.9124U 146.3224U

2.1072M

756.4761N 6.4787N

13.5473N 184.3943N 637.9647N 9.3897U

2.5837M

749.00 758.00N751.00 756.00752.00 755.00753.00 754.00s

test_ram_decode_x_ms:ytestbench:add_14:2

749.00 758.00N751.00 756.00752.00 755.00753.00 754.00s

test_ram_decode_x_ms:ytestbench:me_15:2

x0 x400

749.9973N Base

-1.4472U-3.0252U-211.9206N 174.9838N 68.5944N

753.2606N 3.2633N

693.2886N 1.1122U

2.3427M

135.3678U 80.5947U

753.8750N 3.8777N

969.4408N 857.5333N

2.5892M

294.2097U

113.4585U

754.3777N 4.3803N

969.4408N 857.5333N 31.2989U

2.2715M

162.7543U

755.1755N 5.1782N

13.5473N 857.5333N 3.9124U

2.5947M

485.9155U

755.4867N 5.4894N

13.5473N 184.3943N 3.9124U 146.3224U

2.1072M

756.4761N 6.4787N

13.5473N 184.3943N 637.9647N 9.3897U

2.5837M

1er étage

2ème étage

Fig. 4.12 – Simulation du bit de poids fort (A10) du décodeur X

4.4.4 Conclusion

Les résultats des simulations au niveau transistor concordent bien avec les prédic-tions d’activité exposées auparavant. Cependant, pourquoi prendre en compte, au niveaumodélisation, les différentes activités du décodeur d’adresses et non les données ? Deuxexplications peuvent être fournies :

1. le programmeur qui conçoit un logiciel embarqué sur un microcontrôleur a touteliberté d’agir sur le schéma d’adressage des données en mémoire afin de minimi-ser l’activité en courant du décodeur d’adresses. Il serait par contre beaucoup pluscomplexe, voire irréaliste, de sélectionner les données elles-mêmes à écrire pour réa-liser une minimisation similaire au niveau des cellules mémoire ; c’est pourquoi il estpossible de ne prendre en compte que le pire cas de l’écriture de données

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 111: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

4.4 Validation par simulation électrique 91

13 Dec 200311:26:41

File : test_RAMv_RW_3ns.wdb

1.705 1.740U1.710 1.7351.715 1.7301.720 1.725s

-0.005

0.035

-0.000

0.030

0.005

0.025

0.010

0.020

0.015

A I(RVDD)_28:7

1.705 1.740U1.710 1.7351.715 1.7301.720 1.725s

test_ramv_rw:ytestbench:me_34:7

1.705 1.740U1.710 1.7351.715 1.7301.720 1.725s

test_ramv_rw:ytestbench:wen_35:7

Wordline (écriture)

Wordline (lecture)

Décodeur

Amplificateurd’écriture

19 Dec 200309:24:43

File : test_RAM_decode_good.wdb

4.66 4.73U4.67 4.724.68 4.714.69 4.70s

-0.005

0.030

0.000

0.025

0.005

0.020

0.010

0.015

A I(RVDD)_12:6

4.6670U Base

26.8569M

4.7184U 51.3047N

12.4070M

4.66 4.73U4.67 4.724.68 4.714.69 4.70s

test_ram_decode:ytestbench:add_15:6

4.66 4.73U4.67 4.724.68 4.714.69 4.70s

test_ram_decode:ytestbench:me_16:6

x4f0 x500

4.6670U Base

26.8569M

4.7184U 51.3047N

12.4070M

Cellule mémoire présente

Cellule mémoire absente

Accès mémoire en lecture/écriture Influence des wordlines

Fig. 4.13 – Simulation des cellules mémoire et amplificateurs

2. ne travailler que sur les adresses permet de ne pas modifier le modèle comportemen-tal numérique de la mémoire, qui devrait alors inclure la possibilité pour le modèleVHDL-AMS d’obtenir les données à lire avant qu’elles ne sortent effectivement surle bus (les commutations liées aux amplificateurs de lecture se produisent avant queles données soient stables en sortie). Ceci rentre en contradiction avec le modèleVITAL présenté au 4.5

3. une réduction des temps de montée des signaux d’entrée a tendance à concentrer lespics de courant du décodeur d’adresses en un seul pic de valeur crête importante :lorsque tous les bits d’adresse commutent simultanément et que le temps de montéeest inférieur à 1 ns, la valeur crête du pic lié au décodage peut atteindre 25 mA, soitle même ordre de grandeur que celui du pic lié aux cellules

Comme les temps de montée des pics de courant, eux, ne sont pas modifiés par les tempsde montée des signaux de commande, le courant externe suit la même progression quele courant interne lorsque ces derniers diminuent. L’influence de cette réduction sur le

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 112: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

92 Chapitre 4 : Modélisation comportementale ICEM des mémoires SRAM

courant externe, bénéfique d’un point de vue purement consommation totale, est plutôtnéfaste d’un point de vue CEM, ce qui constitue un résultat intéressant et utile auxconcepteurs de mémoires.Nous allons donc modéliser cette activité dynamique en VHDL-AMS de la même manièreque pour le cœur, mais le modèle en sera beaucoup plus complexe car il dépend beaucoupplus largement de l’état des entrées. L’un des atouts fondamentaux du modèle VHDL-AMS est la possibilité de le co-simuler avec le modèle numérique qui, lui, s’occupe dela mémorisation et de la lecture effective des données. Ce modèle numérique est le plussouvent un modèle VITAL que nous allons présenter ci-après.

4.5 Introduction succincte aux modèles VITAL

La norme VITAL (VHDL Initiative Towards ASIC Libraries), définie par l’IEEE sousla référence 1076.4 [28], est initialement destinée à unifier le développement de biblio-thèques de simulation VHDL de macrocellules destinées à l’implantation dans des ASIC,en particulier pour la gestion des timings.La principale application de cette norme est la modélisation de mémoires, pour l’instantlimitée au cas des SRAM et des ROM. Dans ce contexte, elle apporte une représentationstandard de ces mémoires, des procédures et fonctions destinées à les manipuler.Les modèles VITAL pour les mémoires permettent entre autres :

– la prise en compte des caractéristiques temporelles (temps d’accès, d’établissement,de maintien ...)

– la vérification par le modèle lui-même d’éventuelles violations de ces caractéristiques– la gestion, à l’intérieur du modèle, du stockage et de la restitution des données,

grâce à des tableaux internes au modèle ; pour les ROM, il est possible de définirdirectement un contenu initial

Les deux premiers points constituent le niveau 0 VITAL, qui peut être appliqué à d’autresmacrocellules que les mémoires. L’ensemble de ces informations temporelles sont regrou-pées dans les GENERICs des modèles, qui permettent non seulement de paramétrer di-rectement ces derniers, mais aussi de les rétroannoter d’après les fichiers SDF (StandardDelay Format) obtenus après placement/routage du bloc ; ceci permet d’obtenir des mo-dèles temporellement réalistes.Notre modèle VHDL-AMS devra s’appuyer sur le modèle VITAL de la mémoire considé-rée. Ceci implique qu’il n’aura lui-même besoin de gérer ni les violations temporelles, nila mémorisation des données.Il semble par contre extrêmement complexe de définir une entité VHDL-AMS standard(comme le fait VITAL en VHDL) pour tous les types de SRAM, avec des GENERICs pré-cisant les amplitudes et timings pour les pics de courant ; en effet, si ceci est envisageableà la rigueur pour les cellules mémoire, la constitution des décodeurs d’adresse varie troplargement d’une SRAM à l’autre. Néanmoins, à l’intérieur d’une famille de SRAM d’un

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 113: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

4.6 Modèle VHDL-AMS de la SRAM 93

même fondeur, cette démarche serait réalisable a priori.Nous allons maintenant définir le modèle comportemental en courant de la SRAM en nousappuyant sur ce modèle VITAL.

4.6 Modèle VHDL-AMS de la SRAM

4.6.1 Principe de codage

Le principe de codage de la SRAM s’inspire largement de celui utilisé pour le modèlede courant de cœur (paragraphe 3.7.3). Là encore, une interpolation linéaire est utiliséeet tous les coefficients de l’interpolation sont calculés en temps réel dans des processesséparés, à partir d’un tableau de points (T,G) passé en constante pour chacun des picsgénériques liés à une activité interne (décodeurs, cellules). Tous les pics de courant sontensuite sommés pour obtenir la forme d’onde complète.Cette méthode est moins compacte en termes d’écriture, mais elle présente l’avantaged’être plus simple à écrire. Il aurait été possible de tout traiter dans un seul process ;cependant, tous les pics de courant étant susceptibles d’être absents ou non et de toutemanière entrelacés temporellement, il aurait été nécessaire d’effectuer un tri temporel surtous les éléments des tableaux en fonction des entités actives, ce qui est beaucoup pluscomplexe.

4.6.2 Codage

Le modèle VHDL-AMS pour la SRAM est présenté à l’annexe A.3.3. Il est à no-ter l’utilisation de la fonction DualHamming qui calcule les distances de Hamming entredeux adresses pour chacune des deux transitions possibles de chaque bit. Ceci est rendunécessaire par les contributions différentes des transistors PMOS et NMOS lors des com-mutations.Les entrées de ce modèle sont identiques à celles du modèle VITAL correspondant, confor-mément au souci de compatibilité exposé plus haut. Il est à remarquer la réinitialisationdu simulateur par BREAK ON pour tout événement générant un pic de courant.

4.6.3 Résultats obtenus

Courant interne

La figure 4.14 représente un exemple de résultat pour un accès mémoire.Le temps de simulation SPICE pour obtenir ce résultat est d’environ 1 heure (avec lepartitionnement), alors qu’il est de 2 secondes pour le modèle comportemental ; on voitque la précision du modèle, y compris sur les décodeurs d’adresses, est tout à fait conformeaux besoins d’une simulation CEM. Ceci rend le modèle VHDL-AMS tout à fait utilisable

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 114: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

94 Chapitre 4 : Modélisation comportementale ICEM des mémoires SRAM

05 Mar 200309:59:46

File : test_RAM_decode_YZ.wdb

0.0 1.6e-70.2 1.40.4 1.20.6 1.00.8s

-0.005

0.035

-0.000

0.030

0.005

0.025

0.010

0.020

0.015

A I(RVDD1)_13:1

0.0 1.6e-70.2 1.40.4 1.20.6 1.00.8s

-0.005

0.035

-0.000

0.030

0.005

0.025

0.010

0.020

0.015

A I(RVDD2)_1:1

0.0 1.6e-70.2 1.40.4 1.20.6 1.00.8s

test_ram_decode_yz:ytestbench:add_15:1

0.0 1.6e-70.2 1.40.4 1.20.6 1.00.8s

test_ram_decode_yz:ytestbench:me_16:1

x0 x1 x2

Netlist SPICE

Modèle VHDL−AMS

Fig. 4.14 – Simulation de la netlist SPICE (haut) et du modèle VHDL-AMS(bas) pour un accès

dans le cas d’une expertise CEM, en simulation conjointe avec les autres modèles dumicrocontrôleur comme nous le verrons ultérieurement.La figure 4.15 illustre deux autres simulations du modèle VHDL-AMS, l’une traitant descommutations lecture/écriture et l’autre du décodeur X. Elles peuvent être comparéesaux simulations niveau transistor des figures 4.10 et 4.12 respectivement.Tous les avantages de VHDL-AMS pour la modélisation de l’activité dynamique en courantsont démontrés dans cette étude : compatibilité VHDL/VITAL, facilité d’écriture, rapiditéde simulation, réutilisabilité.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 115: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

4.6 Modèle VHDL-AMS de la SRAM 95

13 Dec 200311:41:47

File : test_RAMv_RW

2.70 3.15e-72.75 2.80 3.052.85 3.002.90 2.95s

0.000

0.035

0.005

0.030

0.010

0.025

0.015

0.020

A S(:test_ram_rw:ib:isw)_6:1

2.70 3.15e-72.75 2.80 3.052.85 3.002.90 2.95s

:test_ram_rw:tb:me_2:1

2.70 3.15e-72.75 2.80 3.052.85 3.002.90 2.95s

:test_ram_rw:tb:wen_3:1

Commutations

décodeur Y

Cellules mémoire

13 Dec 200311:45:32

File : test_RAMv_RW

3.34 3.43e-63.35 3.36 3.413.37 3.403.38 3.39s

0.000

0.030

0.005

0.025

0.010

0.020

0.015

A S(:test_ram_rw:ib:isw)_16:1

3.34 3.43e-63.35 3.36 3.413.37 3.403.38 3.39s

:test_ram_rw:add_1:1

3.34 3.43e-63.35 3.36 3.413.37 3.403.38 3.39s

:test_ram_rw:me_2:1

x300 x100 x500

Décodeur X

Cellule présente

Cellule absente

Modèle comportemental VHDL−AMS

Accès mémoire en lecture/écriture Décodeur X

Fig. 4.15 – Quelques autres résultats de simulation du modèle VHDL-AMS

Courant externe

Nous avons ensuite couplé le modèle ICEM du Viper, présenté au chapitre 3, avec legénérateur de courant de la SRAM, afin d’obtenir une prévision du courant externe générépar cette dernière. La capacité MOS totale introduite comprend également celle du cœur,afin de se placer dans les mêmes conditions sans pour autant introduire pour le momentle modèle du générateur associé au cœur. Le fichier de test en est donné annexe A.3.4, etla figure 4.16 représente une simulation pour une activité donnée.On peut constater que le courant externe est beaucoup plus faible que celui généré par lecœur (2 mA crête au lieu de 30 mA environ). Les temps de montée du courant étant qua-siment identiques pour la SRAM et le cœur, il est logique d’obtenir un filtrage comparabledans les deux cas. De plus, étant donné le microcontrôleur utilisé, la SRAM n’est accédéeque tous les 12 cycles d’horloge au maximum, ce qui en réduit encore l’influence. Cettedernière serait nettement plus visible dans un microcontrôleur 32 bits (caches rapides).

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 116: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

96 Chapitre 4 : Modélisation comportementale ICEM des mémoires SRAM

10 Apr 200309:41:08

File : icem_sram

0.0 1.6e-70.2 1.40.4 1.20.6 1.00.8s

0.000

0.030

0.005

0.025

0.010

0.020

0.015

? S(:icemtest_sram_h:ib:ib)_15:2

0.0 1.6e-70.2 1.40.4 1.20.6 1.00.8s

-0.5

2.5e-3

0.0

2.0

0.5

1.5

1.0

A S(:icemtest_sram_h:rmeas:ir)_16:2

0.0 1.6e-70.2 1.40.4 1.20.6 1.00.8s

:icemtest_sram_h:add_1:2

0.0 1.6e-70.2 1.40.4 1.20.6 1.00.8s

:icemtest_sram_h:me_2:2

x0 x1 x2 x3

U

Courant interne (modèle)

Courant externe (modèle)

Fig. 4.16 – Courant interne (haut) et courant externe (bas) pour une activitéde la SRAM

4.7 Conclusion générale

Dans ce chapitre, nous avons totalement modélisé l’activité dynamique en courantd’une SRAM à l’aide du langage VHDL-AMS. L’ensemble des activités possibles liées auxentrées (adresses, commandes) a été pris en compte, mise à part la dépendance vis-à-visdes données en lecture, dont nous avons pu constater la faiblesse de la contribution ; deplus, il s’agit d’un paramètre sur lequel le concepteur de logiciel embarqué peut difficile-ment agir.Le modèle est co-simulable avec les modèles numériques VITAL, et sa rapidité de simu-lation le rend utilisable pour des bilans CEM. C’est ainsi que nous avons pu vérifier quela contribution de la SRAM au courant externe total du microcontrôleur est relativementfaible (6 % au maximum sur le courant crête).

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 117: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

4.7 Conclusion générale 97

Si dans ce cas précis la mémoire ne joue pas un rôle important, il ne faudrait pas oublierque les microprocesseurs et microcontrôleurs plus performants possèdent des mémoirescaches, de type SRAM (synchrones ou non), beaucoup plus rapides et activées à chaquecycle, pour lesquelles on peut s’attendre à une activité beaucoup plus perturbatrice. Ladémarche illustrée ici prend donc tout son sens dans ce cadre.Nous avons modélisé les activités du cœur du microcontrôleur (de manière simplifiée) etdu bloc mémoire le plus consommateur. La dernière étape consiste maintenant à prendreen compte les différentes activités possibles du cœur ainsi que celles des entrées/sorties,qui ne sont pas à négliger étant donné le courant qu’elles sont susceptibles de délivrer etd’absorber. Ceci fait l’objet du dernier chapitre de cette thèse.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 118: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

98 Chapitre 4 : Modélisation comportementale ICEM des mémoires SRAM

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 119: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Chapitre 5

Approche de modélisation

comportementale ICEM d’un

microcontrôleur complet

5.1 Objectifs

Dans le chapitre 3, une modélisation VHDL-AMS très simple de l’activité en courantdu cœur d’un circuit intégré a été proposée. Celle-ci ne tient pas compte du détail destâches effectuées par ce dernier (autrement dit, dans le cas du microcontrôleur, les ins-tructions machine exécutées).Parallèlement à cela, le précédent chapitre a montré l’établissement d’un modèle de mé-moire SRAM dépendant de l’activité interne.Ce dernier chapitre sera lui consacré à une approche de la modélisation comportementaleen courant de l’ensemble du microcontrôleur.Dans un premier temps, le choix de certaines activités en courant à modéliser sera effectuéen fonction de critères basés sur la mesure. Nous verrons que l’activité des entrées/sortiesest la première source additionnelle de perturbations ; elle sera donc ensuite modéliséeainsi que son couplage avec le cœur. Enfin, tous les modèles développés dans ce mémoireseront couplés et permettront ainsi une estimation de l’activité totale en courant du circuitintégré.

5.2 Méthodologie proposée pour le cœur

5.2.1 Choix des activités en courant à modéliser

La modélisation du cœur de microcontrôleur présentée dans le troisième chapitre aété traitée indépendamment de l’activité. En fait, seul le mode RESET a effectivement

99

Page 120: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

100Chapitre 5 : Approche de modélisation comportementale ICEM d’un microcontrôleur

complet

été inclus. Le premier travail complémentaire a ici consisté en une étude comparativeexpérimentale de l’activité en courant en fonction de l’exécution de différentes instructionsmachine, par des mesures effectuées sur la puce en collaboration avec ATMEL.Pour ce faire, quatre modes de fonctionnement ont été étudiés :

– mode RESET– exécution d’instructions NOP (No OPeration) : seul le décodeur d’instructions fonc-

tionne– exécution d’instructions RRA (Rotate Right Accumulator) : l’UAL (Unité Arith-

métique et Logique) fonctionne à son tour– exécution d’instructions MOV @R0, #55h (stockage de la donnée immédiate $55

en mémoire SRAM, pointée par le registre R0) : utilisation de l’unité de générationd’adresses pour la SRAM ainsi que de cette dernière

Les mesures temporelles effectuées pour ces différents modes sont présentées figure 5.1.On peut remarquer que :

– l’amplitude des pics ainsi que l’offset (courant DC) sont légèrement augmentés (del’ordre de 3 mA) lorsque le microcontrôleur exécute du code (non en mode RESET)

– il n’y a aucune différence observable entre le courant généré par un NOP (en haut àdroite) et celui généré par un RRA (en bas à gauche), l’influence de l’UAL est doncnégligeable

– l’accès à la SRAM (en bas à droite) n’est quasiment pas visible non plusCeci trouve principalement son explication dans l’architecture CISC (Complex InstructionSet Computer) du microcontrôleur utilisé. Dans ce type de processeur, c’est essentielle-ment l’arbre d’horloge qui est responsable des pics de courant observés, alors que les unitésde calcul et d’adressage sont nettement moins rapides (prédivision par 12 de la fréquencede base).Dans le cas d’une architecture de type RISC (Reduced Instruction Set Computer), onpourrait s’attendre au contraire à une dépendance plus forte due à la rapidité des unitésinternes ; ces processeurs utilisent en effet des techniques de "pipeline". Rappelons queces dernières consistent à découper les unités internes en plusieurs étages ; à chaque cycled’horloge, l’instruction ou la donnée à traiter franchit un étage, ce qui permet d’aug-menter notablement la fréquence d’horloge (par diminution des temps de propagation) etd’obtenir un résultat par cycle en régime établi.En ce qui concerne la SRAM, rappelons que l’amplitude crête des pics de courant externeest de l’ordre de 2 mA et leur largeur d’environ 20 ns, donc comparable à celle des picsgénérés par le cœur. De plus, nous avons fait l’hypothèse que le générateur de courantéquivalent de la SRAM se trouve directement aux bornes de celui du cœur, ce qui nousdonne le cas le plus défavorable pour les perturbations. Or l’existence d’une résistancesérie due aux pistes de métal entre le cœur et le bloc mémoire est envisageable, ce quidiminuerait l’influence de la SRAM sur le courant externe.En revanche, il est tout à fait vraisemblable que les instructions d’entrée/sortie (E/S)aient une influence notable sur l’émission conduite. En effet, chaque broche d’E/S doit

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 121: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

5.2 Méthodologie proposée pour le cœur 101

Fig. 5.1 – Mesures pour différents modes de fonctionnement

pouvoir, dans la grande majorité des cas, débiter ou absorber un courant maximal del’ordre de 4 mA. Sachant que plusieurs broches d’un même port sont susceptibles de com-muter simultanément, on peut donc s’attendre à des appels de courant externe dont lavaleur crête serait du même ordre de grandeur que celle du courant de cœur ; en effet,les constantes de temps étant beaucoup plus longues que celles du cœur, le filtrage par leréseau d’alimentation sera a priori moins important. Il semble donc primordial de cher-cher à modéliser plus finement les broches d’E/S sans bien entendu négliger les relationsqu’elles entretiennent avec le cœur.Dans les paragraphes qui suivent, nous nous attacherons donc à définir des modèles com-portementaux ICEM VHDL-AMS réalistes du courant consommé par les entrées/sorties,

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 122: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

102Chapitre 5 : Approche de modélisation comportementale ICEM d’un microcontrôleur

complet

compatibles avec les modèles déjà définis dans les précédents chapitres.

5.2.2 Méthodologie de simulation proposée

Une fois les modèles VHDL-AMS des entrées/sorties définis, il sera possible de lescoupler avec le modèle ICEM afin d’obtenir le courant total généré par le circuit. Pour cefaire, nous allons utiliser simultanément les modèles numériques et les modèles d’activité.Le principe global est décrit figure 5.2 dans le cas général.

RmcoreLmcore

Cbcore

Rb Lb

Ibcore

RmE/SLmE/S

CbE/S IbE/S

Rp Lp

E/S

Modèle VHDL-AMS d’une E/S

Modèle VHDL-AMS du cœur

VHDL

Modèle

numérique

x N

-

-

Sorties du modèle

du cœurCommandes E/S

6

6Commandes E/S

-Entrées

Entrées

Fig. 5.2 – Principe de la simulation globale CEM d’un circuit intégré

Les modèles numériques des différents blocs fonctionnels composant le cœur et leurs mo-dèles d’activité VHDL-AMS possèdent les mêmes entrées, ce qui permet d’exprimer ladépendance du courant dynamique en fonction de ces entrées. Le modèle numérique deplus haut niveau, en plus des entrées/sorties logiques, fournit les signaux de commandedes buffers d’E/S, qui attaquent les modèles d’activité de ces derniers.Tous ces modèles VHDL-AMS sont couplés électriquement par l’intermédiaire du modèleICEM. Il est à remarquer qu’il n’est pas toujours possible de caractériser parfaitement lesrésistances et inductances métalliques RmE/S et LmE/S relatives aux entrées/sorties, àmoins de connaître parfaitement le floorplanning du circuit. Ceci présente l’avantage, etnous y reviendrons dans la conclusion de ce travail, de prévoir l’influence de ce floorplan-ning et du maillage des alimentations sur l’activité externe à des fins d’optimisation deces paramètres.Dubreuil et al. [27] ont proposé une méthode comparable pour un circuit très simple (uneporte logique). Cependant :

– l’outil utilisé (SABER r©) ne permet pas de coupler les modèles d’activité aux modèlesfonctionnels numériques

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 123: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

5.3 Les modèles d’entrées/sorties en détail 103

– il est fait abstraction du temps de montée des signaux de commande, alors quecelui-ci a une grande influence sur le courant de sortie

Nous allons donc profiter de l’unification de la représentation des activités du cœur etdes E/S, apportée par l’utilisation de VHDL-AMS, pour tenter de remédier à ces inconvé-nients. A ces fins, nous allons prendre comme point de départ quelques modèles d’intégritéde signal existants.

5.3 Les modèles d’entrées/sorties en détail

5.3.1 Introduction

Comme nous l’avons déjà vu au paragraphe 1.2.1, il existe depuis 1993 des modèlesgénériques d’entrées/sorties, tels que IBIS et IMIC. Ces modèles sont avant tout orientésintégrité de signal : ils permettent de vérifier qu’un signal généré par un buffer de sortielogique se propage correctement, sans trop de déformation, dans une piste de circuit im-primé modélisée par son impédance.Le principe général de ces modèles consiste à remplacer les semiconducteurs (diodes ettransistors) par des tables de caractéristiques, afin de préserver la confidentialité tech-nologique, et d’ajouter les éléments passifs constitutifs du bonding et du boîtier pourles broches d’E/S, exactement comme le modèle ICEM pour les rails d’alimentation.Rappelons que le principal inconvénient de ces deux modèles est de faire l’impasse surl’influence du courant interne de cœur sur ces entrées/sorties ; IMIC permet tout de mêmeau contraire de modéliser l’influence des entrées/sorties sur le courant d’alimentation.Nous allons donc proposer un modèle, complétant IBIS et IMIC, permettant de tenircompte des deux influences réciproques. De plus, ce modèle sera écrit en VHDL-AMS, cequi permettra de l’interfacer avec les modèles de cœur. Auparavant, nous allons présenteren détail les modèles IBIS et IMIC, dont notre proposition s’inspirera largement.

5.3.2 Le modèle IBIS

Comme indiqué dans le premier chapitre, IBIS est un modèle comportemental, présentésous une forme ASCII. Il est à noter qu’il ne s’agit pas d’un modèle directement simu-lable, mais d’un formatage particulier des données, destiné à être interprété par un outilde simulation qui, lui, définira les actions à effectuer. Rappelons (figure 5.3) le schémaéquivalent d’une entrée et d’une sortie selon IBIS (gauche : entrée, droite : sortie). Ilcomprend :

– les éléments passifs Rpkg, Lpkg, Cpkg de l’ensemble bonding+boîtier– pour les entrées, la capacité d’entrée du composant Ccomp et les tables I(V) pour

chacune des diodes de clamping V CCclamp et GNDclamp

– pour les sorties, la capacité de sortie du composant Ccomp, les tables I(V) pour

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 124: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

104Chapitre 5 : Approche de modélisation comportementale ICEM d’un microcontrôleur

complet

chacune des diodes de clamping V CCclamp et GNDclamp, les tables I(V) pour chacundes transistors de sortie pullup et pulldown (obtenues pour |VGS| = Vdd), et les tablesV(t) en sortie ; lorsque ces dernières caractéristiques sont linéaires, elles peuvent êtreremplacées par les valeurs des rampes dV

dt

Rpkg Lpkg

CcompCpkg

V CCClamp

GNDClamp Cpkg

Rpkg Lpkg

V CCClamp

GNDClampCcomp

eI(V)

I(V) -

N

V(t)

?IN OUT

Fig. 5.3 – Modèles IBIS : entrée (gauche) et sortie (droite)

Pour chaque élément, les valeurs typique, minimum et maximum sont précisées, avec unpas de 100 mV entre -Vcc et 2Vcc pour les tables I(V), et de 70 ps jusqu’à stabilisationde la tension pour les temps.L’extraction de ces tables s’effectue de la manière suivante :

– pour les tables I(V) des transistors de sortie, la broche est attaquée par une rampede tension très lente, et les mesures ou simulations sont effectuées pour la sortiecommandée successivement à l’état haut et à l’état bas (de telle manière que l’undes transistors soit toujours bloqué)

– la même méthode que précédemment est utilisée pour celles des diodes de clamping ;s’il s’agit d’une sortie, elle est placée en haute impédance afin de désactiver les deuxtransistors

– les tables V(t) en sortie (ou bien les pentes) sont obtenues en chargeant cette dernièrepar une résistance de valeur précisée dans le modèle, reliée soit à la masse pour lestransitions montantes, soit au Vcc pour les transitions descendantes

Comme on peut le voir, le principal problème de ce modèle pour notre application résidedans ces tables V(t). En effet, non seulement ces dernières dépendent de la charge ensortie, mais surtout la caractérisation doit être effectuée en attaquant le driver (les deuxtransistors) avec un signal dont le temps de transition doit être rigoureusement égal àcelui de la logique réelle de commande au niveau transistor.Cette particularité diminue notablement la précision du modèle IBIS dans le cas de varia-tions de charge en entrée/sortie du composant, et pire encore, ne permet pas de vérifierl’influence des temps de transition du signal de commande sur les perturbations générées.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 125: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

5.3 Les modèles d’entrées/sorties en détail 105

5.3.3 Le modèle IMIC

Le modèle IMIC, lui aussi évoqué au 1.2.1 et rappelé figure 5.4, est moins largementdiffusé mais beaucoup mieux adapté à notre étude, étant à la frontière de l’intégrité designal et de la CEM. Il correspond presque en fait à un modèle ICEM de circuit intégrédans lequel le cœur n’aurait aucune activité propre en courant.

eR

R L

R L

R L

R L

Buffer

Buffer

-

-

R

R

R

R

Signal

Signal

Masses

Circuit intégré Boîtier

Modèle d’un buffer

+

Fig. 5.4 – Modèle IMIC

Nous allons donc reprendre un certain nombre d’idées ayant présidé à sa définition :– il considère les modèles tabulés des transistors de sortie, mais aussi en fonction des

tensions de grille (contrairement à IBIS)– les stimuli d’entrée pour les buffers peuvent être décrits par des formes d’onde– les rails d’alimentation sont modélisés de manière semblable à ICEM

Dans le cas des buffers de sortie, IMIC prend donc partiellement en compte les signaux decommande, non pas dans leurs paramètres analogiques comme le temps de montée, maisau moins dans leur représentation temporelle numérique (formes d’onde numériques).

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 126: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

106Chapitre 5 : Approche de modélisation comportementale ICEM d’un microcontrôleur

complet

5.3.4 Expression des besoins

Comme nous l’avons vu au paragraphe 5.2.2, le modèle ICEM pour les entrées/sortiesest destiné à être contrôlé par les signaux issus du cœur. Il doit par conséquent, tout enconservant la simplicité du modèle IBIS, prendre en compte les signaux de commandede manière analogue au modèle IMIC, mais en intégrant leurs imperfections. En effet,dans le cas d’une sortie, le chemin direct de l’alimentation vers la masse, dû à la conduc-tion simultanée et partielle des deux transistors MOS lors de la transition du signal degrille, est une source de perturbations conduites qu’il ne faut pas négliger. De plus etréciproquement, les perturbations venant du cœur sont susceptibles d’être réinjectées surles entrées/sorties au travers des conductances drain-source des MOS, ce qui n’est pas dutout évoqué dans les deux modèles précédents.Une partie de notre travail va par conséquent consister à unifier les représentations IMICet ICEM, en permettant l’interopérabilité du cœur et des entrées/sorties.

5.3.5 Modèle ICEM générique proposé pour les entrées/sorties

Le modèle que nous proposons, présenté figure 5.5 (gauche : entrée, droite : sortie),reprend intégralement le schéma structurel du modèle IBIS. On considère que la résistanceet l’inductance des rails d’alimentation des E/S sont prises en compte par le modèle globaldu composant, de niveau supérieur.

Rpkg Lpkg

CcompCpkg

V CCClamp

GNDClamp Cpkg

Rpkg Lpkg

V CCClamp

GNDClampCcomp

eI(V)

I(Vd,Vg) I(V)-

N

Vg(t)

6

?

IN OUT

Fig. 5.5 – Approche ICEM de la modélisation des E/S : entrée (gauche) etsortie (droite)

Le modèle se distingue cependant d’IBIS par la modélisation des transistors de commande(constituant le driver) : ils sont ici décrits par leur courant drain/source exprimé enfonction de leur tension de grille Vg et de leur tension drain/source Vd ; ceci permet ensuite,par une description de l’évolution temporelle Vg(t) de cette dernière, de prendre en comptel’influence des signaux de commande, considérés non idéaux (temps de montée et de

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 127: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

5.3 Les modèles d’entrées/sorties en détail 107

descente finis). Il s’agit d’une approche alternative à celle utilisée par Tehrani [86], laquellea pour objet l’extraction directe des modèles comportementaux transitoires depuis IBIS,mais qui ne tient pas compte de la charge (or celle-ci peut avoir une répercussion sur lespoints de fonctionnement).Les diodes de protection sont par contre décrites par leur I(V) comme dans IBIS ; ceciimplique d’ailleurs que les modèles des entrées sont identiques en IBIS et en ICEM.

5.3.6 Extraction des paramètres ICEM des entrées/sorties

Réseau passif

Le réseau passif comprend les éléments parasites RLC dus au boîtier et au bonding,qui peuvent être extraits par mesures ou bien estimés en fonction des longueurs, et lacapacité MOS due aux transistors de sortie.Cette dernière peut être extraite par une méthode de simulation AC totalement identiqueà celle exposée au paragraphe 3.7.3, et sur laquelle nous ne reviendrons pas par conséquent.

Diodes de protection

Dans la majorité des cas, elles sont matérialisées par des transistors MOS montés endiodes (Vgs = Vds). L’extraction des caractéristiques I(V) s’effectue donc très simplementpar simulation Eldo.Pour ce faire, on polarise le transistor par une rampe de tension lente, qui permet d’obtenirle courant de drain en fonction du temps en s’affranchissant des effets dynamiques ; une re-présentation X-Y tension/courant permet ensuite d’obtenir directement la caractéristique.Afin de se conformer autant que possible au modèle IBIS, l’extraction de caractéristiquessera réalisée pour |Vds| compris entre 0 et Vcc, soit pour des tensions d’entrée de la brochepar rapport à la masse allant de -Vcc à 2Vcc.

Driver de sortie

Afin d’obtenir une approximation aussi précise que possible des caractéristiques Id(Vd)en fonction de Vg, une simulation paramétrique Eldo est mise en œuvre. Celle-ci sera donceffectuée pour un nombre réduit de valeurs de |Vg| allant de 0 à Vcc, et une interpolationsera mise en place par la suite dans le modèle. Les variations de Vds sont opérées demanière totalement identique à celle utilisée pour les diodes de protection.Cette méthode offre une meilleure précision que celle utilisée par Dubreuil [27] ; ce derniermodélise l’espace drain/source par de simples résistances variant au cours du temps, sansnécessairement préjuger des différentes zones de fonctionnement des transistors (ohmique,pincée) qui dépendent nécessairement de la charge et surtout de la tension de drain.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 128: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

108Chapitre 5 : Approche de modélisation comportementale ICEM d’un microcontrôleur

complet

Cas concret : exemple du VIPER

L’extraction des caractéristiques a été effectuée pour le microcontrôleur VIPER déjàévoqué dans les précédents chapitres. Ce dernier possède 4 ports d’entrée/sortie 8 bits deconstitutions différentes, ainsi que des buffers spécifiques pour les autres broches de sortietelles que le driver d’horloge attaquant le quartz.Afin de pouvoir valider facilement les résultats de simulation par la mesure, le port 0 a étéchoisi pour sa simplicité tant de conception interne que de mise en œuvre au niveau ducode exécutable. La figure 5.6 représente l’architecture interne d’une broche de ce port.

Cpkg

RpkgR Lpkg

PKeep

NKeep NprotCcomp

e

vers trigger

Fig. 5.6 – Architecture interne d’une broche du port 0 du VIPER

Cette architecture est tout à fait classique. On peut cependant noter la présence d’unerésistance série R de protection et de limitation de courant, d’un seul transistor de pro-tection en sortie de buffer (le NMOS Nprot) et de deux transistors de protection Pkeep etNkeep, tous montés en diodes (et représentés ainsi sur le schéma). Il est donc nécessaired’extraire 3 caractéristiques I(V).Le réseau passif est donné par ATMEL et a pour valeurs Rpkg = 0.102 Ω, Lpkg = 10.1 nH,Cpkg = 1.89 pF et R = 615 Ω.La figure 5.7 représente les caractéristiques des deux transistors de protection Pkeep etNkeep, la figure 5.8 celle du transistor de protection Nprot ; la tension représentée en abs-cisses est celle présente sur le drain du transistor considéré par rapport à la masse.L’extraction du driver de sortie s’effectue pour |Vgs| allant de 0 à Vcc (ici 5 V) par pas de0.5 V ; il serait naturellement possible de relever plus de valeurs de Vgs pour une meilleureprécision. Dans le cas du Viper, un ensemble de transistors identiques sont placés enparallèle pour minimiser la dispersion technologique. Les résultats de simulation sont re-présentés figure 5.9 en fonction du temps, avec une rampe de 1V/ns.On peut remarquer d’après les courbes qu’il est possible de décomposer, avec une bonneprécision, chaque caractéristique en plusieurs zones pouvant chacune être approchée par

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 129: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

5.4 Modélisation VHDL-AMS d’une entrée/sortie 109

27-Oct-200313:56:33

File : Simu_diodepkeep.couELDO v6.0_1.1 (Production version) : * Simulation du PMOS de garde

4 105 96 87V

-6

1

-5

0

-4

-1

-3

-2

A I(VPAD)(V(VCCB))

27-Oct-200313:53:35

File : Simu_diodenkeep.couELDO v6.0_1.1 (Production version) : * Simulation du NMOS de garde

-6 1-5 0-4 -1-3 -2V

-1

7

0

6

1

5

2

4

3

A I(VPAD)(V(VCCB))

Transistor PMOS Transistor NMOS

Fig. 5.7 – Caractéristiques Id(Vd) des transistors Pkeep et Nkeep montés en diodes

une fonction affine (linéaire pour la zone ohmique). Ceci permettra de simplifier notable-ment la modélisation VHDL-AMS.

5.4 Modélisation VHDL-AMS d’une entrée/sortie

5.4.1 Généralités

L’objectif de ce paragraphe est la définition d’un modèle simple en VHDL-AMS pourles entrées/sorties, compatible avec les interfaces d’entrée/sortie VHDL du cœur. Pour cefaire, nous allons utiliser un modèle à 3 broches (TERMINALs) représentant l’alimenta-tion, la masse et la broche d’E/S, et 3 signaux numériques représentant l’entrée du bufferainsi que les 2 commandes des transistors de sortie, comme indiqué sur la figure 5.10.Cette architecture présente l’avantage d’être directement pilotable par le modèle VHDLdu Viper qui peut fournir directement les commandes MOS.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 130: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

110Chapitre 5 : Approche de modélisation comportementale ICEM d’un microcontrôleur

complet

28-Oct-200309:44:42

File : Simu_diode.couELDO v6.0_1.1 (Production version) : * Simulation du NMOS de protection mon

-6 1-5 0-4 -1-3 -2V

-0.01

0.07

-0.00

0.06

0.01

0.05

0.02

0.04

0.03

A I(VPAD)(V(VCCB))

Fig. 5.8 – Caractéristique Id(Vd) du transistor Nprot monté en diode

5.4.2 Modélisation du driver

Comme indiqué au paragraphe précédent, nous allons interpoler les caractéristiquesdes deux MOS constituant le driver. A cet effet, pour chaque valeur de Vgs, ces dernièresseront découpées en 3 zones en fonction de Vds (les tensions étant considérées en valeurabsolue que ce soit pour le PMOS ou le NMOS), représentées sur la figure 5.11 :

1. la zone ohmique, allant de 0 V à Vsat1 (associée au courant Isat1)

2. une première zone de saturation, allant de Vsat1 à Vsat2, définie par les valeursIsat1 et Isat2 du courant à Vsat1 et Vsat2

3. une deuxième zone de saturation, au-delà de Vsat2, définie par sa résistance Rsat2

Cette modélisation présente l’avantage de la simplicité tout en restant fidèle aux courbesrelevées sur le composant réel.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 131: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

5.4 Modélisation VHDL-AMS d’une entrée/sortie 111

27-Nov-200316:06:45

File : Simu_pmos.couELDO v6.2_2.1 (Production version) : * Simulation du PMOS de sortie

0 6e-91 52 43s

-0.02

0.12

0.00

0.10

0.02

0.08

0.04

0.06

A

I(V5)_1:2 I(V5)_2:2 I(V5)_3:2 I(V5)_4:2 I(V5)_5:2 I(V5)_6:2

I(V5)_7:2 I(V5)_8:2 I(V5)_9:2 I(V5)_10:2 I(V5)_11:2

27-Nov-200316:06:39

File : Simu_nmos.couELDO v6.2_2.1 (Production version) : * Simulation du NMOS de sortie

0 6e-91 52 43s

-0.07

0.01

-0.06

0.00

-0.05

-0.01

-0.04

-0.02

-0.03

A

I(V5)_1:1 I(V5)_2:1 I(V5)_3:1 I(V5)_4:1 I(V5)_5:1 I(V5)_6:1

I(V5)_7:1 I(V5)_8:1 I(V5)_9:1 I(V5)_10:1 I(V5)_11:1

Transistors PMOS Transistors NMOS

Fig. 5.9 – Caractéristiques Id(Vd,Vg) des transistors de sortie

-- broche

Vdd

Vss

entrée

commande PMOS

commande NMOS

Modèle

VHDL-AMS

du buffer

Fig. 5.10 – Accès d’un buffer d’E/S

Après examen des simulations électriques précédentes, les tensions Vsat ne varient pas enfonction de Vgs, elles seront donc exprimées par des réels et non des vecteurs de réels.Le modèle du driver va donc être composé de deux modèles de dipôles en série ; ils seront

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 132: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

112Chapitre 5 : Approche de modélisation comportementale ICEM d’un microcontrôleur

complet

-

6Id

VdsVsat1 Vsat2

Isat1

Isat2 1Rsat2

Fig. 5.11 – Paramètres d’interpolation de la caractéristique du MOS

décrits par leurs relations Id(Vds), qui seront obtenues à partir d’une fonction d’inter-polation à laquelle seront passées les tensions de grille. Ces tensions seront des rampesde temps de montée (et de descente) paramétrables, générées grâce à l’attribut ’ramp

de VHDL-AMS, qui seront déclenchées par les commutations des signaux de commandenumériques (ici modélisés par un seul signal trois états). Le modèle en est présenté àl’annexe A.4.1.A partir des tensions instantanées Vds et Vgs, nous allons donc estimer le courant Id parla fonction interpolate_mos que nous allons maintenant décrire.

5.4.3 Interpolation des caractéristiques du MOS

Afin d’obtenir la valeur de Id en fonction de Vds et Vgs, on utilise l’algorithme suivant :

1. si le Vgs actuel n’est pas dans un intervalle compris dans la table, on extrapole lesvaleurs des Isat et Rsat par l’intermédiaire de la pente de la caractéristique entreles deux dernières valeurs de Vgs de la table

2. sinon, on recherche les deux valeurs de Vgs de la table encadrant la valeur actuelle,puis on calcule pour chacun de ces deux Vgs les valeurs de Id interpolées par rapportà Vds actuel, en utilisant la partie adéquate de la caractéristique en fonction du Vds

3. on effectue une nouvelle interpolation sur Id, cette fois-ci en fonction du Vgs actuelpar rapport aux deux bornes de l’intervalle

Cette démarche est assez simple à implémenter en VHDL-AMS et permet une bonneprécision (meilleure que 5 %). Le listing de la fonction est donné à l’annexe A.4.2.Le principal intérêt de cette méthode est la prise en compte directe des temps de montéedes commandes de grilles pour la conduction simultanée des deux transistors, et ce sansdivulgation technologique. Si cette dernière clause n’était pas impérative d’un point devue diffusion du modèle (c’est là un des principaux arguments d’IBIS par exemple), lemodèle EKV (Enz-Krummenacher-Vittoz) pourrait être également utilisé avec une bonnefacilité de programmation [48] et des résultats comparables.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 133: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

5.4 Modélisation VHDL-AMS d’une entrée/sortie 113

5.4.4 Modélisation du buffer complet et du pad

Conformément au schéma 5.6, il est nécessaire d’ajouter au driver modélisé ci-dessusles parasites dus au boîtier ainsi et surtout que les composants de protection (garde). Lelisting est présenté à l’annexe A.4.3.La modélisation des caractéristiques I(V) des 3 transistors montés en diodes s’effectueégalement par l’intermédiaire d’interpolations linéaires réalisées sur des tables de carac-téristiques passées en GENERICs. La fonction interpolate décrite à l’annexe A.4.4accomplit cette fonctionnalité.On peut remarquer que le principe est très proche de celui utilisé pour l’interpolationdes MOS du driver. Parallèlement à cela, un process s’occupe de la génération du signalnumérique vers le cœur en fonction de la tension présente sur le pad lorsqu’il est en modeentrée (les deux transistors du driver bloqués).

5.4.5 Résultats de simulation

Dans un premier temps, nous allons simuler un port d’entrée/sortie complet (8 bits)successivement dans ses deux modes de fonctionnement : tout d’abord en sortie avecplusieurs temps de montée de la tension de grille, puis en entrée avec application d’uneimpulsion de tension négative (-5V) puis positive (10V) afin de vérifier les protections.Chaque pad sera chargé par une capacité de 3 pF correpondant à une entrée de circuitlogique, et toutes les commutations seront simultanées.D’autre part, afin d’étudier l’influence sur le courant externe, nous allons reprendre lemodèle ICEM vu au chapitre 3, sans le générateur de courant du cœur pour l’instant, maispar contre en prenant soin d’y inclure l’ensemble de la capacité équivalente (métallique etMOS) du cœur et des mémoires (soit 2 nF). Le listing correspondant est donné à l’annexeA.4.5.Le temps de simulation est très réduit (moins de 10 secondes pour l’ensemble).

Port en sortie

En sortie, deux simulations ont été effectuées avec des temps de montée des signauxde commande égaux à 1 ns et 3 ns ; les résultats en sont présentés figure 5.12, avec dehaut en bas le courant externe dans la résistance de mesure, le courant dans le PMOS dudriver et le courant dans le NMOS du driver.Plusieurs remarques peuvent être faites sur ces résultats :

– le courant externe crête est voisin de celui généré par le cœur, même si les courantsdans les PMOS et NMOS ont des valeurs crête beacoup plus faibles que celles dece dernier (50 mA contre 500 mA). Par contre, les temps de montée sont beaucoupplus élevés pour les entrées/sorties, ce qui entraîne que celles-ci génèrent sur les railsd’alimentation un spectre de perturbations en plus basse fréquence que le coeur ;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 134: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

114Chapitre 5 : Approche de modélisation comportementale ICEM d’un microcontrôleur

complet

0.8 2.4e-71.0 2.21.2 2.01.4 1.81.6s

0.000

0.035

0.005

0.030

0.010

0.025

0.015

0.020

A

S(:viperibisicemkeep:rmeas:ir)_4:1

S(:viperibisicemkeep:rmeas:ir)_4:2

0.8 2.4e-71.0 2.21.2 2.01.4 1.81.6s

-0.01

0.06

0.00

0.05

0.01

0.04

0.02

0.03

A

S(:viperibisicemkeep:portio__0:bufferio:totem_pole:ipmos)_2:1

S(:viperibisicemkeep:portio__0:bufferio:totem_pole:ipmos)_2:2

0.8 2.4e-71.0 2.21.2 2.01.4 1.81.6s

-0.01

0.06

0.00

0.05

0.01

0.04

0.02

0.03

A

S(:viperibisicemkeep:portio__0:bufferio:totem_pole:inmos)_1:1

S(:viperibisicemkeep:portio__0:bufferio:totem_pole:inmos)_1:2

Tr = 1 nsTr = 3 ns

Tr = 3 nsTr = 1 ns

Tr = 1 nsTr = 3 ns

Courant externe dans l’alimentation

Courant dans le transistor PMOS

Courant dans le transistor NMOS

Fig. 5.12 – Simulations VHDL-AMS du port en sortie pour Tr = 1 ns (4 :1)et 3 ns (4 :2) : courant externe dans l’alimentation, courant dans le PMOS,courant dans le NMOS (de haut en bas)

nous avions déjà évoqué ce résultat au paragraphe 1.2.1– sur le microcontrôleur utilisé, les commutations à 1 (à gauche de la courbe) sont

plus pénalisantes pour le courant externe que les commutations à 0 (à droite)– l’augmentation des temps de montée des signaux de commande entraîne parallèle-

ment une augmentation de la valeur crête du courant externe ainsi que de l’énergietotale (en raison de la phase de conduction simultanée des deux transistors), sanspour autant que le temps de montée du courant externe suive la même progression ;cependant, le courant débité sur la broche d’E/S elle-même est alors moins richespectralement comme on peut le voir d’après l’allure des courants dans le driver.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 135: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

5.4 Modélisation VHDL-AMS d’une entrée/sortie 115

Il ressort de cette simulation que les temps de montée des tensions de commande du dri-ver ont une influence très différente sur les perturbations générées dans les entrées/sortieselles-mêmes et dans les rails d’alimentation. Il s’agit par conséquent d’un paramètre im-portant dans la conception orientée CEM d’un circuit intégré, que le modèle IBIS seul,couramment utilisé, ne permet pas de mettre en évidence.

Port en entrée

Dans un but de validation des modèles I(V) des diodes, les résultats de simulationavec application des impulsions de tension sur l’entrée sont représentées figure 5.13.

0.8 2.4e-71.0 2.21.2 2.01.4 1.81.6s

0.000

0.035

0.005

0.030

0.010

0.025

0.015

0.020

A

S(:viperibisicemkeep:rmeas:ir)_4:1

S(:viperibisicemkeep:rmeas:ir)_4:2

0.8 2.4e-71.0 2.21.2 2.01.4 1.81.6s

-0.01

0.06

0.00

0.05

0.01

0.04

0.02

0.03

A

S(:viperibisicemkeep:portio__0:bufferio:totem_pole:ipmos)_2:1

S(:viperibisicemkeep:portio__0:bufferio:totem_pole:ipmos)_2:2

0.8 2.4e-71.0 2.21.2 2.01.4 1.81.6s

-0.01

0.06

0.00

0.05

0.01

0.04

0.02

0.03

A

S(:viperibisicemkeep:portio__0:bufferio:totem_pole:inmos)_1:1

S(:viperibisicemkeep:portio__0:bufferio:totem_pole:inmos)_1:2

Tr = 3 ns

Tr = 3 ns

Tr = 3 ns

Courant dans le PMOS

Courant dans le NMOS

Tr = 1 ns

Tr = 1 ns

Tr = 1 ns

Courant dans le rail d’alimentation

13 Dec 200310:46:37

File : viperibisicemkeep

4.8 6.4e-75.0 6.25.2 6.05.4 5.85.6s

-6

12

-4

10

-2

8

0

6

2

4

V S(:viperibisicemkeep:vpin[0])_7:4

4.8 6.4e-75.0 6.25.2 6.05.4 5.85.6s

-0.030

0.010

-0.025

0.005

-0.020

-0.000

-0.015

-0.005

-0.010

A S(:viperibisicemkeep:portio__0:bufferio:idiode)_2:4

4.8 6.4e-75.0 6.25.2 6.05.4 5.85.6s

-5e-3

1e-3

-4

0

-3

-1

-2

A S(:viperibisicemkeep:portio__0:bufferio:inkeep)_3:4

4.8 6.4e-75.0 6.25.2 6.05.4 5.85.6s

-6e-3

1e-3

-5

0

-4

-1

-3

-2

A S(:viperibisicemkeep:portio__0:bufferio:ipkeep)_4:4

Tension sur la broche

Courant dans la diode

Courant dans le NMOS de garde

Courant dans le PMOS de garde

Tension sur la broche, courant dans la broche,courant d’alimentation et tension sur le pad

Tension sur la broche, courant dans la diode,courants dans les PMOS et NMOS de protection

Fig. 5.13 – Simulation VHDL-AMS du port en entrée

Ces simulations montrent bien la validité des modèles de diodes pour la protection duport. On remarque que la tension présente sur le pad est légèrement atténuée en valeurabsolue par rapport à celle présente sur la broche, ce qui prouve l’intérêt du dispositif.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 136: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

116Chapitre 5 : Approche de modélisation comportementale ICEM d’un microcontrôleur

complet

5.5 Simulation avec driver d’horloge

Dans un second temps, cette modélisation des entrées/sorties va maintenant nouspermettre de répondre au problème soulevé au paragraphe 3.6.4, relatif à la différenceobservée (pic supplémentaire) entre la simulation transistor du cœur (sans ses pads) et lamesure. Pour ce faire, nous allons reprendre le modèle VHDL-AMS du courant de cœurdu chapitre 3 (CoreGenerator), mais en lui adjoignant les drivers d’horloge en entréeet en sortie (bufferin et bufferout). Nous allons générer un signal d’horloge réel avecdes temps de montée de 3 ns, identiques aux conditions expérimentales, et adjoindreune sortie supplémentaire bufferio (chargée par C = 3 nF) qui sera commutée pendantle fonctionnement du circuit. Par contre, n’ayant pas d’idée précise sur le maillage duréseau d’alimentation du Viper, nous allons placer les modèles en parallèle sur les railsd’alimentation (voir figure 5.2).En plus de la corrélation avec les mesures du chapitre 3, cette simulation présente undouble intérêt :

1. montrer l’influence de la commutation d’une E/S sur le courant externe

2. et réciproquement, visualiser l’effet d’injection du courant de cœur sur les en-trées/sorties

Le modèle du test bench VHDL-AMS est présenté à l’annexe A.4.6, et les résultats obtenussont illustrés sur la figure 5.14, où se trouvent le courant externe, le courant dans la broched’E/S et la tension sur cette même broche.Ces résultats laissent clairement apparaître le pic supplémentaire occasionné par le driver,corroborant ainsi l’hypothèse formulée au troisième chapitre. De même, la commutationde la sortie est visible sur le second pic de courant externe. On peut également remarquerque le courant de cœur est réinjecté sur la sortie, perturbant la tension sur cette broche(de l’ordre de 100 mV crête).Cependant, un certain nombre de points restent dans l’ombre et peuvent expliquer lesdifférences d’amplitude observées sur le second pic :

– la charge effective sur la sortie d’horloge (due au PCB) n’a pas été mesurée et n’estpas prise en compte

– les temps de montée des commandes du driver ne sont pas précisément connus– si les alimentations des entrées/sorties sont en réalité plus proches de l’origine du

rail d’alimentation que ne l’est le cœur, l’effet du driver est plus visible.Ce modèle permet donc de mettre clairement en évidence les problèmes liés au couplageentre le réseau d’alimentation des blocs internes et celui des entrées/sorties :

1. d’une part, la commutation des entrées/sorties génère des impulsions de courantdans les rails d’alimentation, de temps de montée plus élevé et de plus grandepériode, et contribue par conséquent à la partie basse fréquence du spectre

2. d’autre part et réciproquement, les commutations liées à l’activité interne se couplentaux entrées/sorties par l’intermédiaire du réseau RL d’alimentation, générant des

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 137: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

5.5 Simulation avec driver d’horloge 117

13 Dec 200310:35:45

File : viperibisicemkeep

0.0 3.5e-70.5 3.01.0 2.51.5 2.0s

0.000

0.025

0.005

0.020

0.010

0.015

A S(:viperibisicemkeep:rmeas:ir)_8:2

0.0 3.5e-70.5 3.01.0 2.51.5 2.0s

-0.020

0.020

-0.015

0.015

-0.010

0.010

-0.005

0.005

0.000

A S(:viperibisicemkeep:ipin)_7:2

0.0 3.5e-70.5 3.01.0 2.51.5 2.0s

-1

6

0

5

1

4

2

3

V S(:viperibisicemkeep:vpin)_9:2

0.0 3.5e-70.5 3.01.0 2.51.5 2.0s

:viperibisicemkeep:output1_2:2

0.0 3.5e-70.5 3.01.0 2.51.5 2.0s

:viperibisicemkeep:outputio_3:2

Z

Courant dans l’alimentation

Commutation d’E/S Driver d’horloge

Partie zoomée sur la fig. de droite

Courant dans la broche d’E/S

Tension sur la broche d’E/S

Signal d’horloge

Commande de l’E/S

18 Dec 200315:56:52

File : viperibisicemkeep

1.0 2.2e-71.2 2.01.4 1.81.6s

4.80

5.15

4.85

5.10

4.90

5.05

4.95

5.00

V S(:viperibisicemkeep:vpin)_5:1

1.0 2.2e-71.2 2.01.4 1.81.6s

-0.025

0.025

-0.020

0.020

-0.015

0.015

-0.010

0.010

-0.005

0.005

0.000

A S(:viperibisicemkeep:ipin)_3:1

1.0 2.2e-71.2 2.01.4 1.81.6s

0.000

0.030

0.005

0.025

0.010

0.020

0.015

A S(:viperibisicemkeep:rmeas:ir)_4:1

1.0 2.2e-71.2 2.01.4 1.81.6s

:viperibisicemkeep:outputio_1:1

Tension sur la broche d’E/S

Courant dans la broche d’E/S

Courant dans l’alimentation

Réinjection du courant de coeur

Commutation d’E/S

Résultat complet : courant externe dansl’alimentation, courant dans la broche d’E/S,tension sur la broche d’E/S (de haut en bas)

Zoom sur la commutation de l’E/S : tension sur labroche d’E/S, courant dans la broche d’E/S,

courant externe dans l’alimentation (de haut enbas)

Fig. 5.14 – Simulation VHDL-AMS du cœur avec le driver d’horloge et uneE/S

perturbations d’amplitude non négligeable (ici 2 % pour un microcontrôleur 8 bits,on peut supposer beaucoup plus pour un processeur 32 bits) sur les signaux utiles ;cette réinjection du courant de cœur sur les entrées/sorties dépend également de larésistance série du rail d’alimentation entre les deux entités, qui n’est ici pas connue ;il s’agit ici du cas le plus défavorable

Afin de quantifier réellement l’interaction entre le cœur et les entrées/sorties, la connais-sance précise du réseau d’alimentation interne est indispensable, ce qui n’est malheureu-sement pas le cas pour le circuit étudié.Il est à noter que cette méthode pourrait également s’appliquer aux entrées/sorties analo-giques, en particulier les amplificateurs et convertisseurs ; elle peut par conséquent aiderà l’estimation de la précision et de la résolution de ces fonctions analogiques en fonction-

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 138: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

118Chapitre 5 : Approche de modélisation comportementale ICEM d’un microcontrôleur

complet

nement réel.En conclusion, même s’il subsiste quelques imperfections dues pour l’essentiel à des gran-deurs inconnues et estimées pour la simulation, on peut voir que la méthodologie suggéréeici est fort bien adaptée à la simulation complète d’un circuit intégré et permet de mettreen évidence, avec un minimum de temps de simulation, un certain nombre de phénomènesCEM et les paramètres qui les influencent. Elle apporte par conséquent des informationscomplétant utilement celles fournies par le modèle IBIS.

5.6 Méthode de simulation de l’activité en courant du

microcontrôleur complet

5.6.1 Principes généraux

La simulation globale du microcontrôleur, et d’un circuit intégré complexe en général,comme nous l’avons vu aux paragraphes 3.5.5 et 5.2.2, s’appuie sur la co-simulation desmodèles (numériques ou non, synthétisables ou non) réalisant la fonctionnalité propre ducircuit avec les modèles d’activité VHDL-AMS ; même si ce n’est pas le cas ici, on peutd’ailleurs remarquer que les premiers cités peuvent être analogiques ou mixtes (cas decircuits contenant des convertisseurs analogique/numérique par exemple) sans remettreen cause les principes de la méthode.Nous disposons pour cette étude des modèles comportementaux VITAL complets des deuxblocs mémoire (SRAM et Flash EPROM), des modèles structurels VHDL du cœur et desE/S, et des modèles comportementaux VHDL-AMS du cœur, des E/S et de la SRAM. Leprincipe global en est exposé sur la figure 5.15, sur laquelle les éléments passifs RL dusau réseau d’alimentation ne sont pas représentés.Il est donc fait abstraction du courant consommé par la Flash en mode lecture, commeindiqué au précédent chapitre. De plus, les résistances et inductances métalliques entreles blocs sont considérées nulles, en raison de connaissances parcellaires du réseau d’ali-mentation de la puce existante1 ; les influences des différents blocs sur le courant serontdonc vraisemblablement surestimées par rapport au circuit réel.

5.6.2 Généralisation au cas des fortes dépendances d’activité encourant par rapport au code

Principe

Rappelons ici qu’il a été montré que le microcontrôleur choisi pour cette étude voitson activité dynamique en courant influencée presque uniquement par l’arbre d’horloge,

1il n’en sera bien sûr pas de même lors de la conception d’un circuit utilisant cette méthodologie

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 139: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

5.6 Méthode de simulation de l’activité en courant du microcontrôleur complet 119

Rm Lm

Cbcore

+ CbF lashCbSRAM

Ibcore IbSRAM

CbE/S

IbE/S

Rp, b Lp, b

E/S

E/SVHDLVHDL VHDL VHDL VHDL

ModèleTest bench Modèle Modèle Modèle

numériquenumérique numérique numérique numérique

x N

x Ndu cœur de la SRAM de la Flash des E/S

6 6 6

-Signaux

XTAL1, RESET

du cœur

de contrôle

A,D,ME,WEN

-- -

-

Fig. 5.15 – Simulation en courant du microcontrôleur complet

quel que soit le programme en cours d’exécution. Si au contraire le code exécuté possédaitune forte influence sur l’activité, il serait indispensable d’implémenter dans le modèleVHDL-AMS d’activité un bus d’entrée pour le code instruction en cours d’exécution, quidevra être présent sur un bus de sortie du modèle VHDL numérique (ce dernier devradonc être légèrement modifié). Un découpage par classes d’instructions (en fonction desunités internes utilisées) pourra être mis en œuvre et intégré dans le modèle VHDL-AMS.

Critique et proposition de solution

Le seul inconvénient notable de cette approche séduisante dans son principe résidedans sa possible mise en échec pour des cœurs à base de pipeline, c’est-à-dire pour lesquelsl’exécution d’une instruction est décomposée en plusieurs phases. Ceci implique qu’à uninstant donné, plusieurs instructions peuvent se trouver à l’intérieur du processeur à desdegrés divers de leur exécution ; l’activité en courant dépend alors du flot d’exécution.Au prix d’une complexification du modèle, il serait possible d’y remédier en disposant del’instruction effectivement présente à tout instant à l’entrée de chaque unité d’exécution duprocesseur. Cependant une telle démarche restreint l’utilisation du modèle au concepteurpour des raisons de confidentialité.Néanmoins un grand nombre d’études CEM, au niveau système, peuvent se contenter d’unpire cas d’activité, lorsque toutes les unités d’un processeur fonctionnent simultanément.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 140: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

120Chapitre 5 : Approche de modélisation comportementale ICEM d’un microcontrôleur

complet

5.7 Méthode générique de simulation de l’activité en

courant d’un circuit intégré

5.7.1 Description générale du flot

La démarche présentée ci-dessus peut être généralisée au cas d’un circuit intégré com-plexe quelconque. Le principe général de la modélisation du courant interne peut en êtrerésumé comme suit :

1. une fois la fonctionnalité du circuit validée par simulation (et synthèse pour la partienumérique), générer les netlists SPICE des différents blocs fonctionnels

2. extraire les capacités MOS de ces blocs par simulation AC de leur netlist (avec desoutils standard basés sur SPICE)

3. extraire les capacités métalliques de ces blocs si l’on dispose de l’outil adéquat, sinonen prendre une valeur approximative en utilisant la capacité MOS

4. effectuer des simulations en transitoire de chaque bloc pour en extraire l’activité encourant

5. modéliser en VHDL-AMS l’activité de chaque bloc (interne ou entrée/sortie)

6. au fur et à mesure de l’avancement de ces modélisations, remplacer les netlistsSPICE par leurs équivalents VHDL-AMS afin d’accélérer la simulation du circuitcomplet

7. modéliser le réseau passif d’alimentation interne du circuit selon le floorplanningenvisagé ; ceci sera évoqué ci-après

Cette démarche de modélisation du courant interne peut être effectuée à n’importe quelniveau de la hiérarchie du circuit (bloc ou même primitive). Cependant, la complexité dumodèle VHDL-AMS complet augmentera au fur et à mesure que l’on descendra dans lahiérarchie.La modélisation du courant externe peut alors être réalisée à partir de la connaissancedes modèles du boîtier et du bonding. Ces modèles peuvent être exprimés à partir demesures effectuées à l’analyseur de réseaux ou au réflectomètre temporel ; il est à noterque le fondeur peut à terme les regrouper dans une bibliothèque mise à disposition duconcepteur.Dans le cas où la première version du circuit intégré ne répond pas aux spécifications d’unpoint de vue CEM, des simulations peuvent être effectuées tout d’abord avec un nombreplus important de broches d’alimentation (réduisant la résistance et l’inductance) ou mêmed’autres boîtiers, en utilisant le modèle du courant interne déterminé précédemment. Puis,si les résultats ne sont toujours pas satisfaisants, une étude hiérarchique peut être menéegrâce à cette méthode, tout d’abord en ajustant le réseau d’alimentation interne commenous le verrons ci-après, puis en dernier ressort en reprenant la conception des blocs

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 141: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

5.7 Méthode générique de simulation de l’activité en courant d’un circuit intégré 121

eux-mêmes. Les blocs les plus perturbateurs peuvent ainsi être identifiés puis modifiés sinécessaire.

5.7.2 Modélisation du floorplanning et de la distribution des ali-mentations

Le modèle ICEM permet d’effectuer facilement une prédiction d’émission conduite enfonction du floorplanning et du réseau d’alimentation. La réduction du temps de simula-tion apportée par la modélisation haut niveau en VHDL-AMS permet d’envisager rapide-ment plusieurs combinaisons possibles, en insérant dans le modèle ICEM global, présentésur les figures 5.2 et 5.15, les résistances et inductances relatives aux rails d’alimentationentre les différents blocs. Selon la distribution des alimentations, les contributions abso-lues et relatives des blocs (internes et entrées/sorties) pourront donc être modifiées dansun but de minimisation des perturbations conduites.Comme nous l’avons indiqué au paragraphe 3.6.2, les deux stratégies (réduction ou aug-mentation) des impédances des rails d’alimentation sont actuellement discutées et utiliséesdans l’industrie :

– la réduction des impédances permet une diminution des chutes de tension ("IRdrops") aux bornes des blocs, et par conséquent une meilleure précision des blocsanalogiques et mixtes (convertisseurs intégrés par exemple) ainsi qu’une augmenta-tion de l’immunité au bruit

– une augmentation des impédances, par contre, permettrait d’obtenir des coefficientsde qualité plus faibles pour les différents filtres présents dans le modèle ICEM, etpar conséquent une réduction (ou suppression) des oscillations observées sur lesperturbations conduites dans certains cas [62] ; de plus, la réduction de la tensiond’alimentation induite sur les blocs concernés (numériques) va dans le sens d’uneplus faible consommation

Cette démarche de simulation permet d’étudier très rapidement l’influence de ces para-mètres, ainsi que le dimensionnement d’une éventuelle capacité de découplage interne àla puce.

5.7.3 Paramétrage des modèles

Afin d’apporter une aide à la conception du circuit, les modèles VHDL-AMS peuventêtre paramétrés en vue d’une étude de sensibilité du design aux valeurs de certains compo-sants. Dans cette thèse a été traité le cas des temps de montée des signaux de commande,auxquels l’activité en courant est extrêmement sensible, mais d’autres paramètres peuventêtre pris en compte : charge capacitive des signaux internes, température ...Il va sans dire que les vecteurs de points décrivant la forme d’onde font également partiedes paramètres du modèle. Cependant, la mise en œuvre d’un outil automatique d’extrac-tion de ces derniers à partir de simulations électriques semble assez facilement réalisable

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 142: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

122Chapitre 5 : Approche de modélisation comportementale ICEM d’un microcontrôleur

complet

uniquement lorsque l’activité en courant ne dépend que d’un événement sur un signalunique (comme pour le modèle de courant de cœur déclenché sur le signal d’horloge). Ilparaît en revanche possible d’envisager des modèles génériques liés à une classe donnéede blocs fonctionnels (exemple : SRAM, entrées/sorties) et de définir une méthode d’ex-traction des paramètres liées à cette classe.Il serait en outre possible grâce au langage VHDL-AMS, dans de futurs travaux quidépassent le cadre de cette thèse, de prolonger l’étude par l’utilisation de modèles multi-technologiques, susceptibles de prendre en compte l’influence de la température, voire del’auto-échauffement, et pourquoi pas du vieillissement.

5.8 Conclusion : vers un modèle ICEM-IP

De nos jours, la conception de circuits intégrés complexes se fonde de plus en plus surla réutilisation de blocs fonctionnels à forte valeur ajoutée, le plus souvent conçus par destierces-parties, et appelés de ce fait IP (pour Intellectual Property). Ces IP permettentde gagner un temps précieux en mettant à la disposition du concepteur des modèles déjàvalidés fonctionnellement, ce qui peut être plus rentable financièrement que de redévelop-per en interne la fonction correspondante. Elles peuvent exister sous forme de "soft-IP"(netlists VHDL ou Verilog synthétisables et implémentables) ou de "hard-IP" (blocs déjàimplémentés dans une technologie donnée, également validés temporellement).L’application de cette méthodologie de réutilisation au cas des modèles d’activité en cou-rant va également dans le sens de l’amélioration de la conception des circuits intégrésmodernes. En conclusion de l’ensemble de ces travaux, nous proposons ainsi un modèleréutilisable, que nous appellerons ICEM-IP, présenté sur la figure 5.16.

(Rint) (Lint)

Cmetal CMOS Ib E/S éventuelles

6Commandes numériques

Fig. 5.16 – Proposition de modèle ICEM-IP

Une expression générique VHDL-AMS d’un tel modèle (sauf pour les entrées/sorties) enest donnée ci-après :

ENTITY ICEM_IP_Model IS

GENERIC (Tr : real); -- temps de montée

PORT (controls : IN std_logic; -- * N

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 143: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

5.8 Conclusion : vers un modèle ICEM-IP 123

TERMINAL Vdd, Vss : electrical);

END ENTITY ICEM_IP_Model;

ARCHITECTURE ICEM OF ICEM_IP_Model IS

CONSTANT Cmos : real := ...; -- capacité MOS

CONSTANT Cmetal : real := ...; -- capacité métallique

CONSTANT Rint : real := ...; -- résistance interne

CONSTANT Lint : real := ...; -- inductance interne

TERMINAL Vddgen : electrical;

QUANTITY Vb ACROSS Isw,Ic THROUGH Vddgen TO Vss; -- Isw : générateur

QUANTITY Vrl ACROSS Irl THROUGH Vdd TO Vddgen; -- circuit RL

BEGIN

-- Ici, calcul de Isw en fonction des entrées

-- selon la méthode la plus appropriée

Ic == (Cmos + Cmetal) * Vb’dot;

Vrl == Rint * Irl + Lint * Irl’dot;

END ARCHITECTURE ICEM;

Ce modèle est paramétré par le temps de montée des signaux de commande, dont nousavons vu qu’il peut jouer un rôle capital dans l’amplitude crête et les temps de transitiondu courant consommé. Comme indiqué au paragraphe précédent, d’autres paramètres sontégalement envisageables.Dans le cas des entrées/sorties, le lecteur peut se référer à la modélisation présentée dansles précédents paragraphes.Le concepteur doit modéliser le courant généré en fonction des entrées du modèle VHDL-AMS, qui sont identiques à celles du modèle VHDL (ou même Verilog) numérique associé ;cependant, afin d’éviter une perte de temps inutile, seules les entrées possédant une in-fluence notable sur l’activité doivent être considérées. Dans des cas plus complexes, ilpeut s’y ajouter des grandeurs internes au modèle numérique, qui doivent par conséquentêtre présentes sur l’interface de l’entité. Sauf dans ce dernier cas, les modèles ICEM-IPpourraient être inclus dans des modèles publics car ils ne contiennent aucun élément confi-dentiel d’un point de vue fonctionnel.Il serait même possible, à partir de l’activité en courant, de déterminer l’auto-échauffementdu bloc et d’utiliser les capacités multi-technologiques de VHDL-AMS pour intégrer cettecaractéristique dans le modèle afin de déduire le comportement en température du circuit.En assemblant les différents modèles ICEM-IP des blocs constituant un circuit intégré autravers d’un réseau d’alimentation donné, le concepteur de circuits intégrés peut donc pré-dire les performances en émission et étudier leur sensibilité aux paramètres de conception

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 144: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

124Chapitre 5 : Approche de modélisation comportementale ICEM d’un microcontrôleur

complet

évoqués plus haut. Une fois le placement/routage effectué, il obtient ainsi le modèle ICEMcomplet du circuit intégré. Il est donc possible, à partir des différents blocs ICEM-IP, d’endéduire le pire cas de fonctionnement du circuit. Le modèle de pire cas, éventuellementsimplifié et non paramétré pour éviter tout problème de confidentialité, peut être mis àla disposition du concepteur de cartes qui souhaite effectuer une simulation complète etrapide des perturbations conduites au niveau circuit imprimé, que ce soit sur les railsd’alimentation ou les signaux actifs.Ce modèle constitue donc un trait d’union entre la CEM des circuits intégrés et celledes circuits imprimés. Il permet de passer de l’approche "bottom-up" utilisée pour l’éta-blissement des modèles à l’approche prédictive fondée sur le "top-down", typiquementemployée pour les circuits intégrés complexes.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 145: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Conclusion générale

Dans cette thèse, une méthodologie cohérente de simulation orientée CEM pour lescircuits intégrés, fondée sur l’utilisation du langage VHDL-AMS et du modèle ICEM (In-tegrated Circuit Electromagnetic Model), a été proposée, mise en œuvre et validée sur unexemple industriel, en collaboration avec ATMEL Nantes. Cette méthodologie peut êtreintégrée dans le flot de conception standard d’un circuit intégré.Nous avons complété les travaux déjà menés sur le modèle ICEM, concernant son uti-lisation pour le dimensionnement des plans de masse et des découplages sur un circuitimprimé, par la démonstration de son utilisation pour la prédiction avant fonderie del’émission conduite.Nous avons examiné quelques cas particuliers de blocs fonctionnels pouvant être modéli-sés et simulés, à savoir un cœur de microcontrôleur simple, une mémoire SRAM, et desentrées/sorties numériques. Une méthode simple d’extraction du courant réel à modéliser,au niveau transistor, a été proposée ; elle apporte une aide appréciable à l’écriture dechaque modèle.Dans tous les cas, le langage VHDL-AMS se révèle parfaitement adapté à cette modéli-sation ; en effet, il permet de prendre en considération l’activité des entrées du modèlenumérique du bloc pour l’établissement des modèles d’activité en courant, et autoriseainsi une co-simulation fonctionnelle et en courant s’appuyant sur des outils industrielsexistants. Les résultats obtenus par simulation électrique niveau transistor, puis par si-mulation du modèle VHDL-AMS, se révèlent conformes à ceux observés par mesure surle circuit réel et donc exploitables pour la prédiction d’activité.Ces différents modèles étudiés sont tout à fait généralisables au cas des circuits plus com-plexes, y compris les Systems-on-Chip. En particulier, la modélisation en courant desSRAM peut servir de base à celle des mémoires caches qui sont présentes dans l’ensembledes microprocesseurs et microcontrôleurs performants.Nous avons ainsi pu voir que l’établissement, pour chaque bloc fonctionnel du circuit inté-gré, d’un modèle de haut niveau de l’activité dynamique en courant autorise une démarchede conception CEM tout à fait similaire à celle qui préside à la conception fonctionnellede circuits intégrés complexes autour des modèles numériques de propriété intellectuelle(IP). C’est pourquoi nous proposons un modèle ICEM de propriété intellectuelle, que nousappellerons ICEM-IP.

125

Page 146: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

126 Chapitre 5 : Conclusion générale

Tout le travail du concepteur, qui n’est pas nécessairement un expert CEM, consiste àrenseigner ce modèle ICEM-IP en fonction de l’activité des signaux d’entrée du modèlefonctionnel associé (du moins ceux dont l’influence sur le courant est la plus significative),du temps de montée de ces signaux, et éventuellement d’autres paramètres tels que lacharge capacitive interne des entrées des différents blocs. Une limitation par contre decette méthode est qu’elle n’autorise pas la génération automatique de modèles dépendantde l’activité d’entrées autres qu’un signal d’horloge (ceci pourrait cependant s’envisagerpour un modèle événementiel simple sur un seul signal). De plus, les capacités métalliquesdu réseau d’alimentation ne peuvent être déterminées, au contraire de celles des signauxutiles, que par des outils très spécifiques ; nous avons cependant proposé une approxima-tion de celles-ci, vérifiée sur plusieurs circuits différents. Il paraît par contre possible dedéfinir des modèles ICEM-IP génériques pour chaque classe de blocs fonctionnels (classeSRAM par exemple), qui devraient cependant être paramétrés manuellement par le four-nisseur du bloc correspondant.L’activité dynamique externe en courant du circuit intégré peut alors être déduite del’activité interne de chaque bloc fonctionnel, mais aussi du réseau d’alimentation interne,du bonding et du boîtier utilisé. En assemblant les différents modèles ICEM-IP des blocsconstituant un circuit intégré au travers d’un réseau d’alimentation donné, le concep-teur de circuits intégrés peut donc étudier les performances en émission en même tempsqu’il effectue une simulation numérique (ou même mixte) fonctionnelle. Une fois le pla-cement/routage effectué, il obtient ainsi le modèle ICEM complet du circuit intégré. Leconcepteur peut alors, en cas de nécessité, agir soit sur le nombre de broches d’alimen-tation, soit sur le routage interne des alimentations, soit sur les paramètres auxquelsl’activité est sensible (temps de montée ou charges capacitives par exemple), soit encoremodifier la structure du bloc perturbateur si les autres solutions ne donnent pas de ré-sultats significatifs. Une fois le circuit conforme, le modèle ICEM complet peut être misà la disposition du concepteur de cartes qui souhaite effectuer une simulation complèteet rapide des perturbations conduites au niveau circuit imprimé, que ce soit sur les railsd’alimentation ou les signaux actifs, grâce au modèle ICEM niveau carte développé parailleurs.Ce modèle constitue donc un trait d’union entre la CEM des circuits intégrés et celledes circuits imprimés. Il apporte une aide appréciable au développement de circuits déjà"conformes par conception".Les modèles VHDL-AMS développés pourront par la suite inclure d’autres paramètres telsque la température ou le vieillissement, et éventuellement calculer l’auto-échauffement.Même si les circuits étudiés dans cette thèse sont numériques, il ne faudrait pas restreindrel’utilisation de cette méthode à ces derniers, et plus encore, à l’émission conduite. Ces tra-vaux peuvent également trouver leur application dans l’étude de l’émission rayonnée ainsique dans celle de la susceptibilité, entre autres par l’intermédiaire du modèle ICIM (In-tegrated Circuit Immunity Model) auquel il est envisageable d’étendre cette démarche.Ceci permettrait de vérifier l’auto-perturbation d’un circuit intégré, par exemple la perte

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 147: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

127

de résolution d’un convertisseur analogique/numérique due aux variations d’alimentation.La suite logique des travaux menés dans cette thèse consiste par conséquent en l’écriturede modèles comportementaux de susceptibilité.La méthodologie décrite dans cette thèse va prochainement être directement appliquéeau cas d’un nouveau microcontrôleur ATMEL 8 bits de type RISC, cette fois-ci avantfonderie et dès la phase de conception.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 148: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

128 Chapitre 5 : Conclusion générale

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 149: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Annexe A

Sources des modèles

Dans cette annexe sont présentés les différents modèles VHDL-AMS utilisés. Ils res-pectent la syntaxe et les limitations de l’outil de simulation utilisé (ADVance-MS 3.0_2.1de Mentor Graphics, version de novembre 2003).

A.1 Sources du chapitre 2

A.1.1 Capacité paramétrable

LIBRARY IEEE_PROPOSED;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

ENTITY caparam IS

GENERIC (C1, C2 : real);

PORT (TERMINAL T1, T2 : electrical;

cmd : IN bit);

END ENTITY caparam;

ARCHITECTURE beh OF caparam IS

QUANTITY Vc ACROSS Ic THROUGH T1 TO T2;

SIGNAL cmd_sync : boolean;

BEGIN

PROCESS

BEGIN

WAIT ON Vc’Above(0.0);

IF cmd = ’1’ THEN

cmd_sync <= true;

ELSE

129

Page 150: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

130 Chapitre A : Sources des modèles

cmd_sync <= false;

END IF;

END PROCESS;

IF cmd_sync = true USE

Ic == C1 * Vc’dot;

ELSE

Ic == C2 * Vc’dot;

END USE;

END ARCHITECTURE beh;

A.1.2 Comparateur RF

LIBRARY IEEE,IEEE_PROPOSED;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY comp_rf IS

PORT (TERMINAL Tout,Tdc : electrical;

clk12rec : OUT std_logic);

END ENTITY comp_rf;

ARCHITECTURE behavioral OF comp_rf IS

QUANTITY Vout ACROSS Tout;

QUANTITY Vdc ACROSS Tdc;

SIGNAL clkdemod : std_logic;

BEGIN

PROCESS

BEGIN

WAIT ON Vout’Above(Vdc/2.0);

IF Vout’Above(Vdc/2.0) THEN

clkdemod <= ’1’;

ELSE

clkdemod <= ’0’;

END IF;

END PROCESS;

clk12rec <= clkdemod’delayed(10ns); -- temps de propagation

END ARCHITECTURE behavioral;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 151: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.1 Sources du chapitre 2 131

A.1.3 Démodulateur

LIBRARY IEEE,IEEE_PROPOSED;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

ENTITY comp_demod IS

PORT (clk12rec,reset,reset_demod : IN std_logic;

clk3,out_demod : OUT std_logic);

END ENTITY comp_demod;

ARCHITECTURE behavioral OF comp_demod IS

SIGNAL clk6,clk3int : std_logic;

BEGIN

-- Division d’horloge par 4

PROCESS (clk12rec,clk6,reset)

BEGIN

IF reset = ’1’ THEN

clk6 <= ’0’; clk3int <= ’0’;

ELSE

IF clk12rec’event AND clk12rec = ’1’ THEN

clk6 <= NOT clk6;

END IF;

IF clk6’event AND clk6 = ’1’ THEN

clk3int <= NOT clk3int;

END IF;

END IF;

END PROCESS;

clk3 <= clk3int;

-- Generation du bit demodule

PROCESS

VARIABLE Tini,DeltaT1,DeltaT2,DeltaT : time;

BEGIN

LOOP

WAIT UNTIL clk12rec = ’1’ AND reset_demod = ’0’;

Tini := now;

WAIT UNTIL clk12rec = ’0’;

DeltaT1 := now - Tini;

WAIT UNTIL clk12rec = ’1’;

Tini := now;

WAIT UNTIL clk12rec = ’0’;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 152: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

132 Chapitre A : Sources des modèles

DeltaT1 := DeltaT1 + now - Tini;

WAIT UNTIL clk12rec = ’1’;

Tini := now;

WAIT UNTIL clk12rec = ’0’;

DeltaT2 := now - Tini;

WAIT UNTIL clk12rec = ’1’;

Tini := now;

WAIT UNTIL clk12rec = ’0’;

DeltaT2 := DeltaT2 + now - Tini;

DeltaT := abs(DeltaT1 - DeltaT2);

IF DeltaT1 < DeltaT2 THEN

out_demod <= ’1’;

ELSE

out_demod <= ’0’;

END IF;

END LOOP;

END PROCESS;

END ARCHITECTURE behavioral;

A.2 Sources du chapitre 3

A.2.1 Composants passifs du modèle ICEM

-- Resistor

LIBRARY IEEE_PROPOSED;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

ENTITY Resistor IS

GENERIC (R : real := 1.0);

PORT (TERMINAL p,n : electrical);

END ENTITY Resistor;

ARCHITECTURE a OF Resistor IS

QUANTITY Vr ACROSS Ir THROUGH p TO n;

BEGIN

Vr == R * Ir;

END ARCHITECTURE a;

-- Capacitor

LIBRARY IEEE_PROPOSED;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 153: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.2 Sources du chapitre 3 133

ENTITY Capacitor IS

GENERIC (C : real := 1.0e-12);

PORT (TERMINAL p,n : electrical);

END ENTITY Capacitor;

ARCHITECTURE a OF Capacitor IS

QUANTITY Vc ACROSS Ic THROUGH p TO n;

BEGIN

Ic == C * Vc’dot;

END ARCHITECTURE a;

-- Inductor

LIBRARY IEEE_PROPOSED;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

ENTITY Inductor IS

GENERIC (L : real := 1.0e-6);

PORT (TERMINAL p,n : electrical);

END ENTITY Inductor;

ARCHITECTURE a OF Inductor IS

QUANTITY Vl ACROSS Il THROUGH p TO n;

BEGIN

Vl == L * Il’dot;

END ARCHITECTURE a;

-- Constant voltage generator

LIBRARY IEEE_PROPOSED;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

ENTITY VoltageSource IS

GENERIC (V : real := 0.0);

PORT (TERMINAL Vdd, Vss : electrical);

END ENTITY VoltageSource;

ARCHITECTURE a OF VoltageSource IS

QUANTITY Vgen ACROSS Igen THROUGH Vdd TO Vss;

BEGIN

Vgen == V;

END ARCHITECTURE a;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 154: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

134 Chapitre A : Sources des modèles

A.2.2 Générateur de courant impulsionnel périodique

-- Pulse generator

LIBRARY IEEE_PROPOSED;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

ENTITY IbPulseGenerator IS

GENERIC (I1 : real := 0.0;

I2p : real := 1.0;

I2n : real := -1.0;

trp : real := 1.0e-9;

tfp : real := 1.0e-9;

trn : real := 1.0e-9;

tfn : real := 1.0e-9;

td : real := 1.0e-9;

per : real := 5.0e-9);

PORT (TERMINAL Vdd_n2, Vss_n2 : electrical);

END ENTITY IbPulseGenerator;

ARCHITECTURE a OF IbPulseGenerator IS

QUANTITY Vb ACROSS Ib THROUGH Vss_n2 TO Vdd_n2;

SIGNAL Ib_dig1 : real := I1;

SIGNAL Ib_dig2 : real := 0.0;

BEGIN

ASSERT per >= tfp+trp+trn+tfn

REPORT "Period must be greater than rise times + fall times.";

pos : PROCESS

BEGIN

WAIT FOR td;

LOOP

Ib_dig1 <= I2p-I1;

WAIT FOR trp;

Ib_dig1 <= 0.0;

WAIT FOR per-trp;

END LOOP;

END PROCESS;

neg : PROCESS

BEGIN

WAIT FOR td+per/2.0;

LOOP

Ib_dig2 <= I2n-I1;

WAIT FOR trn;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 155: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.2 Sources du chapitre 3 135

Ib_dig2 <= 0.0;

WAIT FOR per-trn;

END LOOP;

END PROCESS;

Ib == I1+Ib_dig1’ramp(trp,tfp)+Ib_dig2’ramp(trn,tfn);

END ARCHITECTURE a;

A.2.3 Générateur de courant PWL périodique

-- PWL current generator

-- Ti(0) = 0

LIBRARY IEEE_PROPOSED;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

ENTITY IbPWLGenerator IS

GENERIC (Ti : real_vector;

Ii : real_vector);

PORT (TERMINAL Vdd_n2, Vss_n2 : electrical);

END ENTITY IbPWLGenerator;

ARCHITECTURE a OF IbPWLGenerator IS

QUANTITY Vb ACROSS Ib THROUGH Vss_n2 TO Vdd_n2;

SIGNAL Istart : real := Ii(Ii’low);

SIGNAL Tstart : real := 0.0;

SIGNAL Tend : real := Ti(Ti’low+1);

SIGNAL deltaI : real := Ii(Ii’low+1)-Ii(Ii’low);

BEGIN

ASSERT Ti(Ti’low) = 0.0

REPORT "Error : Ti(Ti’low) should be equal to 0.0."

SEVERITY ERROR;

ASSERT Ii(Ii’high) = Ii(Ii’low)

REPORT "Error : first and last I values should be the same."

SEVERITY ERROR;

PROCESS

VARIABLE PeriodStart : real := 0.0;

BEGIN

LOOP

FOR n IN Ti’low+1 TO Ti’high LOOP

Istart <= Ii(n-1);

deltaI <= Ii(n)-Ii(n-1);

Tstart <= PeriodStart + Ti(n-1);

Tend <= PeriodStart + Ti(n);

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 156: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

136 Chapitre A : Sources des modèles

WAIT FOR Ti(n)-Ti(n-1);

END LOOP;

PeriodStart := PeriodStart + Ti(Ti’high);

END LOOP;

END PROCESS;

IF domain = quiescent_domain USE

Ib == Istart;

ELSE

Ib == Istart + deltaI*(now-Tstart)/(Tend-Tstart);

END USE;

BREAK ON Tstart;

END ARCHITECTURE a;

A.2.4 Générateur de courant de cœur, version conductance va-riable

-- VHDL-AMS macromodel library for ICEM modeling

-- PWL current generator for microcontroller core

LIBRARY IEEE,IEEE_PROPOSED;

USE IEEE.STD_LOGIC_1164.ALL,IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

ENTITY CoreGenerator IS

GENERIC (Tr : real); -- rise time for control signals

PORT (XTAL1A : IN std_logic;

TERMINAL Vdd, Vss : electrical);

END ENTITY CoreGenerator;

ARCHITECTURE a OF CoreGenerator IS

CONSTANT Cmos : real := 1.0e-9; -- capacite MOS du coeur

CONSTANT Gmos : real := 0.0; -- conductance MOS du coeur

QUANTITY Vb ACROSS Isw,Ic THROUGH Vdd TO Vss;

-- Pic de conductance associe

CONSTANT PulseTi : real_vector :=

(0.0,2.88e-10,4.13e-10,6.23e-10,7.13e-10,9.60e-10,1.25e-9,1.26e-9);

CONSTANT PulseGi : real_vector :=

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 157: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.2 Sources du chapitre 3 137

(Gmos,2.82e-2,0.99e-2,3.01e-2,1.60e-2,8.80e-2,Gmos,Gmos);

SIGNAL Gstart : real := 0.0;

SIGNAL Tstart : real := 0.0;

SIGNAL Tend : real := 1.0;

SIGNAL deltaG : real := 0.0;

-- Calcul des pics de conductance

BEGIN

ASSERT PulseTi(PulseTi’low) = 0.0

REPORT "Error : PulseTi(PulseTi’low) should be equal to 0.0."

SEVERITY ERROR;

ASSERT PulseGi(PulseGi’high) = PulseGi(PulseGi’low)

REPORT "Error : first and last PulseGi values should be the same."

SEVERITY ERROR;

PROCESS

VARIABLE PeriodStart : real := 0.0;

BEGIN

LOOP

WAIT UNTIL XTAL1A = ’1’;

WAIT FOR Tr/2.0; -- en fonction du temps de montee des signaux

PeriodStart := now;

FOR n IN PulseTi’low+1 TO PulseTi’high LOOP

Gstart <= PulseGi(n-1);

deltaG <= PulseGi(n)-PulseGi(n-1);

Tstart <= PeriodStart + PulseTi(n-1);

Tend <= PeriodStart + PulseTi(n);

WAIT FOR PulseTi(n)-PulseTi(n-1);

END LOOP;

deltaG <= 0.0;

Gstart <= Gmos;

-- Attente de la fin du cycle

WAIT UNTIL XTAL1A = ’0’;

END LOOP;

END PROCESS;

-- Generation du courant

IF domain = quiescent_domain USE

Ic == 0.0;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 158: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

138 Chapitre A : Sources des modèles

Isw == Gstart * Vb;

ELSE

Ic == Cmos * Vb’dot;

Isw == (Gstart + deltaG*(now-Tstart)/(Tend-Tstart)) * Vb;

END USE;

BREAK ON Tstart;

END ARCHITECTURE a;

A.2.5 Générateur de courant de cœur, version équation courant/tension

ARCHITECTURE a OF CoreGenerator_nl IS

CONSTANT Cmos : real := 1.0e-9; -- capacite MOS du coeur

CONSTANT Icc : real := 2.0e-3; -- intensite continue

QUANTITY Vb ACROSS Isw,Ic THROUGH Vdd TO Vss;

QUANTITY Mfactor : real; -- facteur de ponderation du courant

-- Pic de conductance associe

CONSTANT PulseTi : real_vector :=

(0.0,2.88e-10,4.13e-10,6.23e-10,7.13e-10,9.60e-10,1.25e-9,1.26e-9);

CONSTANT PulseIi : real_vector :=

(0.0,0.168,0.088,0.163,0.079,0.498,0.0,0.0);

CONSTANT Ipeak : real := 0.498; -- valeur crete du courant

SIGNAL Istart : real := 0.0;

SIGNAL Tstart : real := 0.0;

SIGNAL Tend : real := 1.0;

SIGNAL deltaI : real := 0.0;

-- Calcul des pics de courant

BEGIN

ASSERT PulseTi(PulseTi’low) = 0.0

REPORT "Error : PulseTi(PulseTi’low) should be equal to 0.0."

SEVERITY ERROR;

ASSERT PulseIi(PulseIi’high) = PulseIi(PulseIi’low)

REPORT "Error : first and last PulseIi values should be the same."

SEVERITY ERROR;

PROCESS

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 159: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.2 Sources du chapitre 3 139

VARIABLE PeriodStart : real := 0.0;

BEGIN

LOOP

WAIT UNTIL XTAL1A = ’1’;

WAIT FOR Tr/2.0; -- en fonction du temps de montee des signaux

PeriodStart := now;

FOR n IN PulseTi’low+1 TO PulseTi’high LOOP

Istart <= Icc + PulseIi(n-1);

deltaI <= PulseIi(n)-PulseIi(n-1);

Tstart <= PeriodStart + PulseTi(n-1);

Tend <= PeriodStart + PulseTi(n);

WAIT FOR PulseTi(n)-PulseTi(n-1);

END LOOP;

deltaI <= 0.0;

Istart <= Icc;

-- Attente de la fin du cycle

WAIT UNTIL XTAL1A = ’0’;

END LOOP;

END PROCESS;

-- Facteur de ponderation

Mfactor == (0.173 * Vb - 0.376) / Ipeak;

-- Generation du courant

IF domain = quiescent_domain USE

Ic == 0.0;

Isw == Istart * Mfactor;

ELSE

Ic == Cmos * Vb’dot;

IF Vb’above(3.0) USE

Isw == (Istart + deltaI*(now-Tstart)/(Tend-Tstart)) *

Mfactor;

ELSE

Isw == 0.0; -- le circuit ne fonctionne plus

END USE;

END USE;

BREAK ON Tstart;

END ARCHITECTURE a;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 160: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

140 Chapitre A : Sources des modèles

A.2.6 Banc de test pour le modèle ICEM du cœur

-- LIB_ADMS test bench with PWL generator

LIBRARY IEEE,IEEE_PROPOSED,LIB_ADMS;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

USE LIB_ADMS.ALL;

ENTITY icemtest_core IS

END ENTITY icemtest_core;

ARCHITECTURE test OF icemtest_core IS

TERMINAL Vdd_n2, Vdd_n1, Vdd_ic, Vdd_pcb, Vdd,

t1pcb, t2pcb, tsma : electrical;

SIGNAL PConfig,VppFlash,VSSCORE1_T,VSSBUF1_T,VCCCORE1_T,

VCCBUF1_T,VCCREG_T,RST,XTAL1A,XTAL1B,EaB,Scl,Sda,

Ale,PsenB,XTAL2A,XTAL2B : std_logic;

SIGNAL P0,P1,P2,P3 : std_logic_vector(7 DOWNTO 0);

BEGIN

XTAL2A <= ’0’;

-- Test bench

TB : ENTITY LIB_ADMS.TestBench(ARCHI_TESTBENCH)

PORT MAP (PConfig,VppFlash,VSSCORE1_T,VSSBUF1_T,VCCCORE1_T,

VCCBUF1_T,VCCREG_T,RST,XTAL1A,XTAL1B,EaB,P0(0),P0(1),P0(2),

P0(3),P0(4),P0(5),P0(6),P0(7),P1(0),P1(1),P1(2),P1(3),P1(4),

P1(5),P1(6),P1(7),P2(0),P2(1),P2(2),P2(3),P2(4),P2(5),P2(6),

P2(7),P3(0),P3(1),P3(2),P3(3),P3(4),P3(5),P3(6),P3(7),Scl,Sda,

Ale,PsenB,XTAL2A,XTAL2B);

-- Generateur de courant

Ib : ENTITY LIB_ADMS.CoreGenerator(a)

GENERIC MAP (Tr=>3.0e-9)

PORT MAP (XTAL1A, Vdd_n2, electrical_ref);

-- Capacite Cb -- capa metallique du circuit complet

Cb : ENTITY LIB_ADMS.Capacitor(a)

GENERIC MAP (1.0e-9)

PORT MAP (Vdd_n2, electrical_ref);

-- RL (rail Vdd)

Lvdd : ENTITY LIB_ADMS.Inductor(a)

GENERIC MAP (4.7e-9)

PORT MAP (Vdd_n1, Vdd_n2);

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 161: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.3 Sources du chapitre 4 141

Rvdd : ENTITY LIB_ADMS.Resistor(a)

GENERIC MAP (2.4)

PORT MAP (Vdd_n1, Vdd_ic);

-- Resistance de mesure

Rmeas : ENTITY LIB_ADMS.Resistor(a)

GENERIC MAP (1.2)

PORT MAP (Vdd_pcb, Vdd_ic);

-- RLC (PCB)

Rpcb : ENTITY LIB_ADMS.Resistor(a)

GENERIC MAP (0.083)

PORT MAP (Vdd_pcb, t1pcb);

Lpcb : ENTITY LIB_ADMS.Inductor(a)

GENERIC MAP (1.0e-9)

PORT MAP (t1pcb, t2pcb);

Cpcb : ENTITY LIB_ADMS.Capacitor(a)

GENERIC MAP (220.0e-12)

PORT MAP (t2pcb, electrical_ref);

-- RL (SMA)

Rsma : ENTITY LIB_ADMS.Resistor(a)

GENERIC MAP (0.044)

PORT MAP (Vdd_pcb, tsma);

Lsma : ENTITY LIB_ADMS.Inductor(a)

GENERIC MAP (1.2e-9)

PORT MAP (tsma, Vdd);

-- Alimentation DC

Vgen : ENTITY LIB_ADMS.VoltageSource(a)

GENERIC MAP (5.0)

PORT MAP (Vdd, electrical_ref);

END ARCHITECTURE test;

A.3 Sources du chapitre 4

A.3.1 Fichier "top" pour le test du décodeur X

* Bibliothèques technologiques ATMEL

.LIB ’el5356.8kr242.mod’ mask_sizings

.LIB ’el5356.8kr242.mod’ process_tolerances

.LIB ’el5356.8kr242.mod’ mos_nom

.LIB ’el5356.8kr242.mod’ mos_models

.LIB ’el5356.8kr242.mod’ rnom

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 162: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

142 Chapitre A : Sources des modèles

* Alimentations

.GLOBAL VCC 0

* Appel du modèle

.MODEL testbench_RAM_decode_X_ms(test) MACRO LANG=vhdlams lib=ATMEL

* Modèles des convertisseurs

.MODEL d2a_bit_vams3V D2A MODE=std_logic

+ vhi=3.0 vlo=0.0 trise=3n tfall=3n

.MODEL a2d_vams3V_bit A2D MODE=std_logic vth=1.5

* Définition des conversions par défaut

.DEFHOOK d2a_bit_vams3V a2d_vams3V_bit

* Partitionnement : SRAM sous Mach

.INCLUDE RAM_1280X8_5_R0.CIR.empart

* Netlist de la SRAM

.INCLUDE RAM_1280X8_5_R0.CKT

* Subcircuit : instanciation de la SRAM

XRAM DO[7] DO[6] DO[5] DO[4] DO[3] DO[2] DO[1] DO[0]

+ ADD[10] ADD[9] ADD[8] ADD[7] ADD[6] ADD[5] ADD[4] ADD[3] ADD[2] ADD[1]

+ ADD[0] DI[7] DI[6] DI[5] DI[4] DI[3] DI[2] DI[1] DI[0] ME WEN

+ RAM_1280X8_5_R0

* Modèle : instanciation du test bench

YTESTBENCH testbench_RAM_decode_X_ms(test)

+ PORT : (ADD[10] ADD[9] ADD[8] ADD[7] ADD[6] ADD[5] ADD[4] ADD[3] ADD[2]

+ ADD[1] ADD[0]) (DI[7] DI[6] DI[5] DI[4] DI[3] DI[2] DI[1] DI[0]) ME WEN

VDD VCC3V 0 3.0

RVDD VCC3V VCC 0.15

.TRAN 2.5n 2.5u

.PLOT TRAN I(RVDD)

.END

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 163: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.3 Sources du chapitre 4 143

A.3.2 Banc de test pour les décodeurs Y et Z

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL,IEEE.STD_LOGIC_ARITH.ALL;

ENTITY testbench_RAM_decode_YZ IS

PORT(ADD : OUT std_logic_vector(10 DOWNTO 0);

DATA : OUT std_logic_vector(7 DOWNTO 0);

ME, WEN : OUT std_logic);

END ENTITY testbench_RAM_decode_YZ;

ARCHITECTURE test_gray OF testbench_RAM_decode_YZ IS

TYPE IntArray IS ARRAY(0 TO 6) OF INTEGER;

CONSTANT Gray3 : IntArray := (0,1,3,2,0,0,0);

BEGIN

PROCESS

BEGIN

WEN <= ’0’;

DATA <= "00000000";

-- Décodeur Z (2 bits)

FOR i IN 0 TO 3 LOOP

ADD <= CONV_STD_LOGIC_VECTOR(Gray3(i),11);

WAIT FOR 10ns;

ME <= ’1’;

WAIT FOR 20ns;

ME <= ’0’;

WAIT FOR 20ns;

END LOOP;

FOR i IN 2 DOWNTO 0 LOOP

ADD <= CONV_STD_LOGIC_VECTOR(Gray3(i),11);

WAIT FOR 10ns;

ME <= ’1’;

WAIT FOR 20ns;

ME <= ’0’;

WAIT FOR 20ns;

END LOOP;

-- Décodeur Y (2 bits)

FOR i IN 0 TO 3 LOOP

ADD <= CONV_STD_LOGIC_VECTOR(Gray3(i),9) & "00";

WAIT FOR 10ns;

ME <= ’1’;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 164: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

144 Chapitre A : Sources des modèles

WAIT FOR 20ns;

ME <= ’0’;

WAIT FOR 20ns;

END LOOP;

FOR i IN 2 DOWNTO 0 LOOP

ADD <= CONV_STD_LOGIC_VECTOR(Gray3(i),9) & "00";

WAIT FOR 10ns;

ME <= ’1’;

WAIT FOR 20ns;

ME <= ’0’;

WAIT FOR 20ns;

END LOOP;

END PROCESS;

END ARCHITECTURE test_gray;

A.3.3 Modèle d’activité en courant pour la SRAM

LIBRARY IEEE,IEEE_PROPOSED;

USE IEEE.STD_LOGIC_1164.ALL,IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

ENTITY RAM1280Generator_h IS

GENERIC (Tr : real); -- temps de montée

PORT (ADD : IN std_logic_vector(10 DOWNTO 0);

DATA : IN std_logic_vector(7 DOWNTO 0);

ME, WEN : IN std_logic;

TERMINAL Vdd, Vss : electrical);

END ENTITY RAM1280Generator_h;

ARCHITECTURE a OF RAM1280Generator_h IS

CONSTANT Cmos : real := 39.9e-12; -- capacité MOS de la SRAM

CONSTANT Gmos : real := 0.0; -- conductance MOS de la SRAM

QUANTITY Vb ACROSS Idyz,Idxup,IdA10,Idnor10,Idnor,Irw,Im,Ic THROUGH

Vdd TO Vss;

-- Pic de conductance associé aux décodeurs d’adresses Y et Z

-- (identiques du point de vue conductance)

-- Approximation : on prend les memes temps pour les transitions 0->1

-- et 1->0

CONSTANT DecPulseTiYZ : real_vector := (0.0,0.0897e-9,0.541e-9,0.952e-9,

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 165: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.3 Sources du chapitre 4 145

0.0);

CONSTANT DecPulseGiYZ01 : real_vector := (Gmos,0.93e-4,2.45e-4,Gmos,

Gmos); -- transition 0->1

CONSTANT DecPulseGiYZ10 : real_vector := (Gmos,0.837e-4,1.9e-4,Gmos,

Gmos); -- transition 1->0

-- Pic de conductance associé aux décodeurs d’adresses X1 et X2 et X3

-- fronts montants

CONSTANT DecPulseTiXup : real_vector := (0.0,0.70e-9,0.90e-9,1.10e-9,

0.0); -- transition 0->1

CONSTANT DecPulseGiX12up : real_vector := (Gmos,Gmos,9.0e-4,Gmos,Gmos);

CONSTANT DecPulseGiX3up : real_vector := (Gmos,Gmos,9.33e-4,Gmos,Gmos);

-- idem fronts descendants

-- Pic de conductance associé au bit 10 du décodeur X

CONSTANT DecPulseTiA10 : real_vector := (0.0,0.10e-9,0.30e-9,0.50e-9,

0.0);

CONSTANT DecPulseGiA10 : real_vector := (Gmos,Gmos,5.07e-4,Gmos,Gmos);

-- Pic de conductance associé à l’étage de portes NOR du décodeur X

-- (sauf bit 10)

CONSTANT DecPulseTiNOR : real_vector := (0.0,0.35e-9,0.55e-9,0.75e-9,

0.0);

CONSTANT DecPulseGiNOR : real_vector := (Gmos,Gmos,4.63e-4,Gmos,Gmos);

-- Pic de conductance associé à l’étage de portes NOR du décodeur X

-- (bit 10)

CONSTANT DecPulseTiNOR10 : real_vector := (0.0,0.18e-9,0.38e-9,0.58e-9,

0.0);

CONSTANT DecPulseGiNOR10 : real_vector := (Gmos,Gmos,7.20e-4,Gmos,Gmos);

-- Pics de conductance associés à la commutation lecture/écriture

CONSTANT MemPulseTiWEN01 : real_vector := (0.0,0.50e-9,0.825e-9,1.11e-9,

0.0);

CONSTANT MemPulseGiWEN01 : real_vector := (Gmos,Gmos,3.53e-3,Gmos,Gmos);

CONSTANT MemPulseTiWEN10 : real_vector := (0.0,0.40e-9,0.902e-9,1.295e-9,

0.0);

CONSTANT MemPulseGiWEN10 : real_vector := (Gmos,Gmos,2.14e-3,Gmos,Gmos);

-- Pic de conductance associé à une cellule mémoire en écriture

-- (constant quelle que soit la donnée)

CONSTANT MemPulseTiW : real_vector := (0.0,1.55e-9,1.95e-9,2.15e-9,

3.70e-9,4.00e-9,4.50e-9,0.0);

CONSTANT MemPulseGiW : real_vector := (Gmos,Gmos,2.87e-3,1.33e-3,1.33e-3,

9.07e-3,Gmos,Gmos); -- espace adressable

CONSTANT MemPulseGiWNA : real_vector := (Gmos,Gmos,2.9e-3,1.07e-3,1.07e-3,

4.17e-3,Gmos,Gmos); -- non adressable

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 166: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

146 Chapitre A : Sources des modèles

CONSTANT EndofAddrSpace : std_logic_vector(10 DOWNTO 0) := "10100000000";

-- fin d’espace adressable

SIGNAL Gstartdxup,Gstartdyz,GstartdA10,Gstartdnor10,Gstartdnor,Gstartm,

Gstartrw : real := 0.0;

SIGNAL Tstartdxup,Tstartdyz,TstartdA10,Tstartdnor10,Tstartdnor,Tstartm,

Tstartrw : real := 0.0;

SIGNAL TenddXup,Tenddyz,TenddA10,Tenddnor10,Tenddnor,Tendm,Tendrw :

real := 1.0;

SIGNAL deltaGdXup,deltaGdyz,deltaGdA10,deltaGdnor10,deltaGdnor,deltaGm,

deltaGrw : real := 0.0;

SIGNAL previousADD : std_logic_vector(10 DOWNTO 0) := "00000000000";

-- Calcul de la distance de Hamming entre deux vecteurs pour les deux

-- transitions particulières

-- Vecteur de réels en sortie car ADMS ne sait pas gérer les tableaux

-- d’entiers ...

-- DualHamming(0) : nombre de transitions 1->0

-- DualHamming(1) : nombre de transitions 0->1

FUNCTION DualHamming(ADD1, ADD2 : IN std_logic_vector) RETURN real_vector

IS

VARIABLE DeltaADD : std_logic_vector(ADD1’high DOWNTO ADD1’low);

VARIABLE distance : real_vector(0 TO 1) := (0.0,0.0);

BEGIN

DeltaADD := ADD1 xor ADD2;

FOR i IN DeltaADD’low TO DeltaADD’high LOOP

IF DeltaADD(i) = ’1’ THEN

distance(CONV_INTEGER(ADD2(i))) := distance(CONV_INTEGER(ADD2(i)))

+ 1.0;

END IF;

END LOOP;

RETURN distance;

END DualHamming;

-- Calcul des pics de conductance en fonction des adresses

BEGIN

ASSERT MemPulseTiW(MemPulseTiW’low) = 0.0

REPORT "Error : MemPulseTiW(MemPulseTiW’low) should be equal to 0.0."

SEVERITY ERROR;

ASSERT MemPulseGiW(MemPulseGiW’high) = MemPulseGiW(MemPulseGiW’low)

REPORT "Error : first and last MemPulseGiW values should be the same."

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 167: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.3 Sources du chapitre 4 147

SEVERITY ERROR;

PROCESS -- décodeurs d’adresses Y et Z

VARIABLE PeriodStart : real := 0.0;

-- Les tableaux ne fonctionnent pas sous ADMS

VARIABLE ADDDistanceYZ : real_vector(0 TO 1);

BEGIN

LOOP

WAIT UNTIL ADD’event;

-- On calcule les distances de Hamming pour les 2 décodeurs Y,Z

ADDDistanceYZ := DualHamming(previousADD(3 DOWNTO 0),ADD(3 DOWNTO 0));

-- On génère des pulses proportionnels au nombre de bits sur chaque

-- transition

-- On considère que la première rampe démarre lors du front

PeriodStart := now;

FOR n IN DecPulseTiYZ’low+1 TO DecPulseTiYZ’high LOOP

Gstartdyz <= DecPulseGiYZ01(n-1)*ADDDistanceYZ(1) +

DecPulseGiYZ10(n-1)*ADDDistanceYZ(0);

deltaGdyz <= (DecPulseGiYZ01(n)-DecPulseGiYZ01(n-1))*ADDDistanceYZ(1)

+ (DecPulseGiYZ10(n)-DecPulseGiYZ10(n-1))*ADDDistanceYZ(0);

IF n = DecPulseTiYZ’low+1 THEN

Tstartdyz <= PeriodStart + DecPulseTiYZ(n-1);

Tenddyz <= PeriodStart + DecPulseTiYZ(n) + Tr/2.0;

WAIT FOR DecPulseTiYZ(n)-DecPulseTiYZ(n-1) + Tr/2.0;

ELSE

Tstartdyz <= PeriodStart + DecPulseTiYZ(n-1) + Tr/2.0;

Tenddyz <= PeriodStart + DecPulseTiYZ(n) + Tr/2.0;

WAIT FOR DecPulseTiYZ(n)-DecPulseTiYZ(n-1);

END IF;

END LOOP;

deltaGdyz <= 0.0;

Gstartdyz <= Gmos;

previousADD <= ADD;

END LOOP;

END PROCESS;

PROCESS -- décodeurs d’adresses X1,X2,X3 fronts montants (temps identiques)

VARIABLE PeriodStart : real := 0.0;

-- Les tableaux ne fonctionnent pas sous ADMS

VARIABLE ADDDistanceX12, ADDDistanceX3 : real_vector(0 TO 1);

BEGIN

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 168: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

148 Chapitre A : Sources des modèles

LOOP

WAIT UNTIL ADD’event;

-- On calcule les distances de Hamming pour les 3 décodeurs X

ADDDistanceX12 := DualHamming(previousADD(7 DOWNTO 4),ADD(7 DOWNTO 4));

ADDDistanceX3 := DualHamming(previousADD(9 DOWNTO 8),ADD(9 DOWNTO 8));

-- On génère des pulses proportionnels au nombre de bits sur chaque

-- transition

WAIT FOR Tr/2.0; -- en fonction du temps de montée des signaux

PeriodStart := now;

FOR n IN DecPulseTiXup’low+1 TO DecPulseTiXup’high LOOP

Gstartdxup <= DecPulseGiX12up(n-1)*ADDDistanceX12(1) +

DecPulseGiX3up(n-1)*ADDDistanceX3(1);

deltaGdxup <= (DecPulseGiX12up(n)-DecPulseGiX12up(n-1))*ADDDistanceX12(1)

+ (DecPulseGiX3up(n)-DecPulseGiX3up(n-1))*ADDDistanceX3(1);

Tstartdxup <= PeriodStart + DecPulseTiXup(n-1);

Tenddxup <= PeriodStart + DecPulseTiXup(n);

END LOOP;

deltaGdxup <= 0.0;

Gstartdxup <= Gmos;

END LOOP;

END PROCESS;

PROCESS -- même opération pour les fronts descendants

...

END PROCESS;

PROCESS -- étage NOR

VARIABLE PeriodStart : real := 0.0;

-- Les tableaux ne fonctionnent pas sous ADMS

VARIABLE ADDDistanceX12, ADDDistanceX3 : real_vector(0 TO 1);

BEGIN

LOOP

WAIT UNTIL ADD’event;

-- On calcule les distances de Hamming pour les 3 décodeurs X

ADDDistanceX12 := DualHamming(previousADD(7 DOWNTO 4),ADD(7 DOWNTO 4));

ADDDistanceX3 := DualHamming(previousADD(9 DOWNTO 8),ADD(9 DOWNTO 8));

-- Pic actif uniquement pour les décodeurs X

IF ADDDistanceX12(0) /= 0.0 AND ADDDistanceX12(1) /= 0.0 AND

ADDDistanceX3(0) /= 0.0 AND ADDDistanceX3(1) /= 0.0 AND

NOT ADD(10)’event THEN

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 169: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.3 Sources du chapitre 4 149

WAIT FOR Tr*3.0/5.0;

PeriodStart := now;

FOR n IN DecPulseTiNOR’low+1 TO DecPulseTiNOR’high LOOP

Gstartdnor <= DecPulseGiNOR(n-1);

deltaGdnor <= DecPulseGiNOR(n)-DecPulseGiNOR(n-1);

Tstartdnor <= PeriodStart + DecPulseTiNOR(n-1);

Tenddnor <= PeriodStart + DecPulseTiNOR(n);

WAIT FOR DecPulseTiNOR(n)-DecPulseTiNOR(n-1);

END LOOP;

deltaGdnor <= 0.0;

Gstartdnor <= Gmos;

END IF;

END LOOP;

END PROCESS;

PROCESS -- bit10

VARIABLE PeriodStart : real := 0.0;

BEGIN

LOOP

WAIT UNTIL ADD(10)’event;

WAIT FOR Tr*3.0/5.0;

PeriodStart := now;

FOR n IN DecPulseTiA10’low+1 TO DecPulseTiA10’high LOOP

GstartdA10 <= DecPulseGiA10(n-1);

deltaGdA10 <= DecPulseGiA10(n)-DecPulseGiA10(n-1);

TstartdA10 <= PeriodStart + DecPulseTiA10(n-1);

TenddA10 <= PeriodStart + DecPulseTiA10(n);

WAIT FOR DecPulseTiA10(n)-DecPulseTiA10(n-1);

END LOOP;

deltaGdA10 <= 0.0;

GstartdA10 <= Gmos;

END LOOP;

END PROCESS;

PROCESS -- bit10 deuxième étage

VARIABLE PeriodStart : real := 0.0;

BEGIN

LOOP

WAIT UNTIL ADD(10)’event;

WAIT FOR Tr*2.0/3.0;

PeriodStart := now;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 170: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

150 Chapitre A : Sources des modèles

FOR n IN DecPulseTiNOR10’low+1 TO DecPulseTiNOR10’high LOOP

Gstartdnor10 <= DecPulseGiNOR10(n-1);

deltaGdnor10 <= DecPulseGiNOR10(n)-DecPulseGiNOR10(n-1);

Tstartdnor10 <= PeriodStart + DecPulseTiNOR10(n-1);

Tenddnor10 <= PeriodStart + DecPulseTiNOR10(n);

WAIT FOR DecPulseTiNOR10(n)-DecPulseTiNOR10(n-1);

END LOOP;

deltaGdnor10 <= 0.0;

Gstartdnor10 <= Gmos;

END LOOP;

END PROCESS;

PROCESS -- commutation lecture/écriture

VARIABLE PeriodStart : real := 0.0;

BEGIN

LOOP

WAIT ON WEN;

IF WEN = ’1’ THEN

WAIT FOR Tr/2.0;

PeriodStart := now;

FOR n IN MemPulseTiWEN01’low+1 TO MemPulseTiWEN01’high LOOP

Gstartrw <= MemPulseGiWEN01(n-1);

deltaGrw <= MemPulseGiWEN01(n)-MemPulseGiWEN01(n-1);

Tstartrw <= PeriodStart + MemPulseTiWEN01(n-1);

Tendrw <= PeriodStart + MemPulseTiWEN01(n);

WAIT FOR MemPulseTiWEN01(n)-MemPulseTiWEN01(n-1);

END LOOP;

ELSE

WAIT FOR Tr/2.0;

PeriodStart := now;

FOR n IN MemPulseTiWEN10’low+1 TO MemPulseTiWEN10’high LOOP

Gstartrw <= MemPulseGiWEN10(n-1);

deltaGrw <= MemPulseGiWEN10(n)-MemPulseGiWEN10(n-1);

Tstartrw <= PeriodStart + MemPulseTiWEN10(n-1);

Tendrw <= PeriodStart + MemPulseTiWEN10(n);

WAIT FOR MemPulseTiWEN10(n)-MemPulseTiWEN10(n-1);

END LOOP;

END IF;

deltaGrw <= 0.0;

Gstartrw <= Gmos;

END LOOP;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 171: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.3 Sources du chapitre 4 151

END PROCESS;

PROCESS -- cellules de mémoire

VARIABLE PeriodStart : real := 0.0;

BEGIN

LOOP

WAIT UNTIL ME = ’1’;

WAIT FOR Tr/2.0;

PeriodStart := now;

FOR n IN MemPulseTiW’low+1 TO MemPulseTiW’high LOOP

IF ADD < EndofAddrSpace THEN -- espace adressable

Gstartm <= MemPulseGiW(n-1);

deltaGm <= MemPulseGiW(n)-MemPulseGiW(n-1);

ELSE -- espace non adressable

Gstartm <= MemPulseGiWNA(n-1);

deltaGm <= MemPulseGiWNA(n)-MemPulseGiWNA(n-1);

END IF;

Tstartm <= PeriodStart + MemPulseTiW(n-1);

Tendm <= PeriodStart + MemPulseTiW(n);

WAIT FOR MemPulseTiW(n)-MemPulseTiW(n-1);

END LOOP;

deltaGm <= 0.0;

Gstartm <= Gmos;

-- Attente de la fin du cycle

WAIT UNTIL ME = ’0’;

END LOOP;

END PROCESS;

-- Génération du courant

IF domain = quiescent_domain USE

Ic == 0.0;

Idyz == Gstartdyz * Vb;

Idxup == Gstartdxup * Vb;

IdA10 == GstartdA10 * Vb;

Idnor10 == Gstartdnor10 * Vb;

Idnor == Gstartdnor * Vb;

Irw == Gstartrw * Vb;

Im == Gstartm * Vb;

ELSE

-- Courant dans la capacité MOS

Ic == Cmos * Vb’dot;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 172: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

152 Chapitre A : Sources des modèles

-- Courant pour les décodeurs Y et Z

Idyz == (Gstartdyz + deltaGdyz*(now-Tstartdyz)/(Tenddyz-Tstartdyz)) * Vb;

-- Courant pour le premier étage du décodeur X

Idxup == (Gstartdxup + deltaGdxup*(now-Tstartdxup)/(Tenddxup-Tstartdxup))

* Vb;

-- Courant pour le premier étage du décodeur A10

IdA10 == (GstartdA10 + deltaGdA10*(now-TstartdA10)/(TenddA10-TstartdA10))

* Vb;

-- Courant pour le second étage du décodeur A10

Idnor10 == (Gstartdnor10 + deltaGdnor10*(now-Tstartdnor10)/

(Tenddnor10-Tstartdnor10)) * Vb;

-- Courant pour le second étage du décodeur X

Idnor == (Gstartdnor + deltaGdnor*(now-Tstartdnor)/(Tenddnor-Tstartdnor))

* Vb;

-- Courant pour le changement de décodeur Y (lecture/écriture)

Irw == (Gstartrw + deltaGrw*(now-Tstartrw)/(Tendrw-Tstartrw)) * Vb;

-- Courant pour les cellules mémoire

Im == (Gstartm + deltaGm*(now-Tstartm)/(Tendm-Tstartm)) * Vb;

END USE;

BREAK ON Tstartdyz, Tstartdxup, TstartdA10, Tstartdnor10, Tstartdnor,

Tstartrw, Tstartm;

END ARCHITECTURE a;

A.3.4 Banc de test pour le modèle ICEM de la SRAM

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

USE IEEE.STD_LOGIC_1164.ALL,IEEE.STD_LOGIC_ARITH.ALL;

USE ICEM.ALL;

ENTITY icemtest_sram_h IS

END ENTITY icemtest_sram_h;

ARCHITECTURE test OF icemtest_sram_h IS

SIGNAL ADD : std_logic_vector(10 DOWNTO 0);

SIGNAL DATA : std_logic_vector(7 DOWNTO 0);

SIGNAL ME, WEN : std_logic;

TERMINAL Vdd_n2, Vdd_n1, Vss_n1, Vdd_ic, Vdd_pcb, Vdd_gen, Vdd,

t1pcb, t2pcb, tsma : electrical;

BEGIN

-- Test bench

tb : ENTITY ICEM.testbench_RAMv(test)

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 173: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.3 Sources du chapitre 4 153

PORT MAP (ADD, DATA, ME, WEN);

-- Générateur de courant

Ib : ENTITY ICEM.RAM1280Generator_h(a)

GENERIC MAP (5.0e-9)

PORT MAP (ADD, DATA, ME, WEN, Vdd_n2, electrical_ref);

-- Capacite Cmos -- capacite MOS du circuit complet (sauf SRAM)

Cmos : ENTITY ICEM.Capacitor(a)

GENERIC MAP (1.96e-9)

PORT MAP (Vdd_n2, electrical_ref);

-- Capacite Cb -- capacite metallique du circuit complet

Cb : ENTITY ICEM.Capacitor(a)

GENERIC MAP (1.0e-9)

PORT MAP (Vdd_n2, electrical_ref);

-- RL (rail Vdd)

Lvdd : ENTITY ICEM.Inductor(a)

GENERIC MAP (4.7e-9)

PORT MAP (Vdd_n1, Vdd_n2);

Rvdd : ENTITY ICEM.Resistor(a)

GENERIC MAP (2.4)

PORT MAP (Vdd_n1, Vdd_ic);

-- Resistance de mesure

Rmeas : ENTITY ICEM.Resistor(a)

GENERIC MAP (1.2)

PORT MAP (Vdd_pcb, Vdd_ic);

-- RLC (PCB)

Rpcb : ENTITY ICEM.Resistor(a)

GENERIC MAP (0.083)

PORT MAP (Vdd_pcb, t1pcb);

Lpcb : ENTITY ICEM.Inductor(a)

GENERIC MAP (1.0e-9)

PORT MAP (t1pcb, t2pcb);

Cpcb : ENTITY ICEM.Capacitor(a)

GENERIC MAP (220.0e-12)

PORT MAP (t2pcb, electrical_ref);

-- RL (SMA)

Rsma : ENTITY ICEM.Resistor(a)

GENERIC MAP (0.044)

PORT MAP (Vdd_pcb, tsma);

Lsma : ENTITY ICEM.Inductor(a)

GENERIC MAP (1.2e-9)

PORT MAP (tsma, Vdd);

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 174: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

154 Chapitre A : Sources des modèles

-- Alimentation DC

Vgen : ENTITY ICEM.VoltageSource(a)

GENERIC MAP (3.0)

PORT MAP (Vdd, electrical_ref);

END ARCHITECTURE test;

A.4 Sources du chapitre 5

A.4.1 Modèle comportemental du driver

-- Générateur PWL en fonction des tensions de grille

-- pour un buffer de type totem-pole (2 transistors)

-- Le buffer est modélisé non-inverseur

LIBRARY IEEE,IEEE_PROPOSED,IBIS;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

USE IBIS.interpolation.ALL;

ENTITY totempole IS

GENERIC (Vsat1pmos : real; -- tension Vd de fin de zone ohmique

Vsat2pmos : real; -- tension Vd de fin de zone saturée 1

Vgdatapmos : real_vector; -- vecteur des Vg

Isat1pmos : real_vector; -- courants Id(Vg) en fin de zone ohmique

Isat2pmos : real_vector; -- courants Id(Vg) en fin de zone saturée 1

Rsat2pmos : real_vector; -- résistances en zone saturée 2

Vsat1nmos : real; -- idem NMOS

Vsat2nmos : real;

Vgdatanmos : real_vector;

Isat1nmos : real_vector;

Isat2nmos : real_vector;

Rsat2nmos : real_vector;

tr : real := 3.0e-9; -- temps de montée des commandes de grilles

Vcc : real := 5.0);

PORT (io : in std_logic;

TERMINAL Tvdd, Tvss, pad : electrical);

END ENTITY totempole;

ARCHITECTURE behavioral OF totempole IS

QUANTITY vpmos ACROSS ipmos THROUGH Tvdd to pad; -- transistor PMOS

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 175: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.4 Sources du chapitre 5 155

QUANTITY vnmos ACROSS inmos THROUGH pad to Tvss; -- transistor NMOS

SIGNAL in_realP, in_realN : real := 0.0;

QUANTITY in_rampP, in_rampN : real := 0.0;

BEGIN

in_realP <= 1.0 WHEN io = ’1’ ELSE 0.0; -- commande de grille du PMOS

in_realN <= 1.0 WHEN io = ’0’ ELSE 0.0; -- commande de grille du NMOS

in_rampP == in_realP’ramp(tr,tr); -- prise en compte des temps de montée

in_rampN == in_realN’ramp(tr,tr);

-- Les courants sont obtenus par interpolation des caractéristiques

-- Id(Vd) à partir de tables paramétrées par Vg (fonction interpolate_mos)

ipmos == interpolate_mos(vpmos, Vcc*in_rampP, Vsat1pmos, Vsat2pmos,

Vgdatapmos, Isat1pmos, Isat2pmos, Rsat2pmos);

inmos == interpolate_mos(vnmos, Vcc*in_rampN, Vsat1nmos, Vsat2nmos,

Vgdatanmos, Isat1nmos, Isat2nmos, Rsat2pmos);

END ARCHITECTURE behavioral;

A.4.2 Fonction d’interpolation 2D pour les MOS du driver

-- Fonction d’interpolation pour les transistors MOS

-- Zone ohmique rohm jusqu’a vsat1/isat1, affine jusqu’a vsat2/isat2,

-- puis affine rsat2

-- On interpole selon vg

FUNCTION interpolate_mos (vd, vg, vsat1, vsat2 : IN real;

vgdata, isat1, isat2, rsat2 : IN real_vector)

RETURN real IS

VARIABLE slope, isat1ext, isat2ext, rsat2ext, idreturn : real;

VARIABLE idinter : real_vector(0 TO 1);

VARIABLE first, middle, last : integer;

BEGIN

IF vg <= vgdata(0) THEN -- le courant est nul pour Vgs négative

idreturn := 0.0;

RETURN idreturn;

ELSIF vg >= vgdata(vgdata’right) THEN

-- On extrapole les données en fonction de vg

slope := (vg-vgdata(vgdata’right)) /

(vgdata(vgdata’right)-vgdata(vgdata’right-1));

isat1ext := isat1(vgdata’right) + slope *

(isat1(vgdata’right)-isat1(vgdata’right-1));

isat2ext := isat2(vgdata’right) + slope *

(isat2(vgdata’right)-isat2(vgdata’right-1));

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 176: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

156 Chapitre A : Sources des modèles

rsat2ext := rsat2(vgdata’right) + slope *

(rsat2(vgdata’right)-rsat2(vgdata’right-1));

IF vd > vsat2 THEN -- zone affine 2

idreturn := isat2ext + (vd-vsat2)/rsat2ext;

ELSIF vd > vsat1 THEN -- zone affine 1

idreturn := isat1ext +

(vd-vsat1)/(vsat2-vsat1)*(isat2ext-isat1ext);

ELSE -- zone ohmique

idreturn := vd / vsat1 * isat1ext;

END IF;

RETURN idreturn;

ELSE -- determination des indices du tableau vgdata encadrant vg

first := 0;

last := vgdata’right;

WHILE first <= last LOOP

middle := (first+last)/2;

IF vgdata(middle)<vg THEN

first := middle+1;

ELSE

last := middle-1;

END IF;

END LOOP;

IF vgdata(middle)>vg THEN

middle := middle-1;

END IF;

END IF;

-- middle et middle+1 sont maintenant les indices de tableau vgdata

-- encadrant la valeur de vg

-- Calcul des deux valeurs de id interpolees idinter(0) et idinter(1)

-- correspondant aux deux valeurs de vg du tableau

FOR i IN 0 TO 1 LOOP

IF vd > vsat2 THEN -- zone affine 2

idinter(i) := isat2(middle+i) + (vd - vsat2)/rsat2(middle+i);

ELSIF vd > vsat1 THEN -- zone affine 1

idinter(i) := isat1(middle+i) +

(vd - vsat1)/(vsat2-vsat1)*(isat2(middle+i)-isat1(middle+i));

ELSE -- zone ohmique

idinter(i) := vd / vsat1 * isat1(middle+i);

END IF;

END LOOP;

-- Interpolation de vd selon vg

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 177: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.4 Sources du chapitre 5 157

idreturn := idinter(0) + (vg-vgdata(middle)) *

(idinter(1)-idinter(0)) / (vgdata(middle+1)-vgdata(middle));

RETURN idreturn;

END FUNCTION interpolate_mos;

A.4.3 Modèle du buffer

-- Modèle VHDL-AMS d’un buffer non-inverseur

LIBRARY IEEE,IEEE_PROPOSED,IBIS;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

USE IBIS.interpolation.ALL;

ENTITY bufferkeepio IS

GENERIC (Vsat1pmos : real;

Vsat2pmos : real;

Vgdatapmos : real_vector;

Isat1pmos : real_vector;

Isat2pmos : real_vector;

Rsat2pmos : real_vector;

Vsat1nmos : real;

Vsat2nmos : real;

Vgdatanmos : real_vector;

Isat1nmos : real_vector;

Isat2nmos : real_vector;

Rsat2nmos : real_vector;

Vdatadiode : real_vector;

Idatadiode : real_vector;

Vdatapkeep : real_vector;

Idatapkeep : real_vector;

Vdatankeep : real_vector;

Idatankeep : real_vector;

Rs : real := 615.0;

Cpmos : real := 1.39e-12;

Cnmos : real := 0.369e-12;

Ribis : real := 102.0e-3;

Libis : real := 10.10e-9;

Cibis : real := 1.888e-12;

tr : real := 3.0e-9;

Vcc : real := 5.0;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 178: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

158 Chapitre A : Sources des modèles

Vil : real := 0.8;

Vih : real := 2.4);

PORT (output : in std_logic;

input : out std_logic;

TERMINAL Tvdd, Tvss, pin : electrical);

END ENTITY bufferkeepio;

ARCHITECTURE behavioral OF bufferkeepio IS

TERMINAL pad, padint : electrical;

QUANTITY vpad ACROSS idiode, icap THROUGH pad to Tvss; -- Diode + capacité

QUANTITY vpkg ACROSS ipkg THROUGH pad to pin;

QUANTITY vrs ACROSS irs THROUGH padint TO pad;

QUANTITY vpkeep ACROSS ipkeep THROUGH Tvdd TO padint; -- PMOS de garde

QUANTITY vnkeep ACROSS inkeep THROUGH padint TO Tvss; -- NMOS de garde

BEGIN

-- Driver

totem_pole : ENTITY IBIS.totempole(behavioral)

GENERIC MAP (Vsat1pmos,Vsat2pmos,Vgdatapmos,

Isat1pmos,Isat2pmos,Rsat2pmos,Vsat1nmos,Vsat2nmos,

Vgdatanmos,Isat1nmos,Isat2nmos,Rsat2nmos,Cpmos,Cnmos,tr,Vcc)

PORT MAP (output, Tvdd, Tvss, pad);

-- Diode de protection

idiode == interpolate(vpad, Vdatadiode, Idatadiode)

+ Cnmos * vpad’dot;

icap == Cibis * vpad’dot;

vpkg == Ribis * ipkg + Libis * ipkg’dot;

-- Résistance série

vrs == Rs * irs;

-- PMOS de garde

ipkeep == interpolate(vpkeep, Vdatapkeep, Idatapkeep);

-- NMOS de garde

inkeep == interpolate(vnkeep, Vdatankeep, Idatankeep);

-- Détermination de l’état de l’entrée (vers le coeur) en fonction de

-- la tension aux bornes du pad

PROCESS

BEGIN

WAIT ON vnkeep’above(Vih), vnkeep’above(Vil);

IF vnkeep’above(Vih) THEN

input <= ’1’;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 179: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.4 Sources du chapitre 5 159

ELSIF vnkeep’above(Vil) THEN

input <= ’X’;

ELSE

input <= ’0’;

END IF;

END PROCESS;

END ARCHITECTURE behavioral;

A.4.4 Fonction d’interpolation 1D pour les diodes

FUNCTION interpolate (x : IN real; xvec, yvec : IN real_vector) RETURN real IS

VARIABLE slope, yreturn : real;

VARIABLE first, middle, last : integer;

BEGIN

-- Recherche des extrapolations

IF x <= xvec(0) THEN

slope := (yvec(1) - yvec(0))/(xvec(1) - xvec(0));

yreturn := yvec(0) + slope*(x - xvec(0));

RETURN yreturn;

ELSIF x >= xvec(xvec’right) THEN

slope := (yvec(yvec’right) - yvec(yvec’right - 1)) /

(xvec(xvec’right) - xvec(xvec’right - 1));

yreturn := yvec(yvec’right) + slope*(x - xvec(xvec’right));

RETURN yreturn;

ELSE

-- On recherche les valeurs de xvec encadrant x

first := 0;

last := xvec’right;

WHILE first <= last LOOP

middle := (first+last)/2;

IF xvec(middle)<x THEN

first := middle+1;

ELSE

last := middle-1;

END IF;

END LOOP;

IF xvec(middle)>x THEN

middle := middle-1;

END IF;

-- On interpole dans la table yvec selon x

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 180: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

160 Chapitre A : Sources des modèles

yreturn := yvec(middle) + (x-xvec(middle)) *

(yvec(middle+1) - yvec(middle)) / (xvec(middle+1) - xvec(middle));

RETURN yreturn;

END IF;

END FUNCTION interpolate;

A.4.5 Banc de test de l’entrée/sortie du port 0

-- Test bench VHDL-AMS pour les E/S du Viper

LIBRARY IEEE,IEEE_PROPOSED,IBIS;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

USE IBIS.ALL;

ENTITY viperibisicemkeep IS

END ENTITY viperibisicemkeep;

ARCHITECTURE testio OF viperibisicemkeep IS

CONSTANT Cload : real := 3.0e-12;

CONSTANT Rs : real := 50.0;

SIGNAL input, output : std_logic_vector(7 downto 0);

SIGNAL direction : std_logic := ’0’;

SIGNAL pulse : real := 0.0;

TERMINAL Vdd_n2, Vdd_n1, Vdd_ic, Vdd_pcb, Vdd,

t1pcb, t2pcb, tsma : electrical;

TERMINAL pin, source : electrical_vector(7 downto 0);

QUANTITY vpin ACROSS ipin THROUGH pin; -- vectorielle

QUANTITY vrs ACROSS irs THROUGH source TO pin; -- vectorielle

QUANTITY vsource ACROSS isource THROUGH source; -- vectorielle

QUANTITY drive : real;

BEGIN

portio : FOR i IN 0 to 7 GENERATE

bufferio : ENTITY IBIS.bufferkeepio(behavioral)

GENERIC MAP (

Vsat1pmos=>1.28,

Vsat2pmos=>2.56,

Vgdatapmos=>(0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0),

Isat1pmos=>(0.67e-3,0.67e-3,1.25e-3,4.70e-3,11.1e-3,

19.9e-3,28.4e-3,36.1e-3,43.3e-3,49.7e-3,55.6e-3),

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 181: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.4 Sources du chapitre 5 161

Isat2pmos=>(0.67e-3,0.67e-3,1.25e-3,4.70e-3,11.3e-3,

20.5e-3,31.9e-3,45.1e-3,59.5e-3,73.6e-3,86.3e-3),

Rsat2pmos=>(1.0e6,1.0e6,1.0e6,1.0e6,11100.0,

3710.0,2780.0,1590.0,1010.0,445.0,223.0),

Vsat1nmos=>1.28,

Vsat2nmos=>2.56,

Vgdatanmos=>(0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0),

Isat1nmos=>(0.24e-3,0.24e-3,0.70e-3,4.23e-3,10.1e-3,

17.5e-3,25.6e-3,33.9e-3,41.5e-3,48.7e-3,55.5e-3),

Isat2nmos=>(0.24e-3,0.24e-3,0.98e-3,4.79e-3,10.7e-3,

18.2e-3,26.6e-3,35.6e-3,45.2e-3,55.1e-3,65.3e-3),

Rsat2nmos=>(1.0e6,1.0e6,1.0e6,1.0e6,32000.0,

32000.0,32000.0,32000.0,32000.0,32000.0,32000.0),

Vdatadiode=>(-5.0,-3.0,-1.55,-1.02,1.0e-3,0.0),

Idatadiode=>(-66.3e-3,-9.44e-3,-3.45e-3,-48.5e-6,0.0,0.0),

Vdatapkeep=>(-5.0,-3.47,-1.85,-1.84,-1.0e-3,0.0),

Idatapkeep=>(-5.36,-2.55,-2.43e-3,-1.0e-12,0.0,0.0),

Vdatankeep=>(-5.0,-2.07,-1.57,-1.56,-1.0e-3,0.0),

Idatankeep=>(-6.43,-0.228,-4.25e-3,-41.9e-6,0.0,0.0),

Rs=>615.0,

Cpmos=>1.39e-12,

Cnmos=>0.369e-12,

Ribis=>102.0e-3,

Libis=>10.10e-9,

Cibis=>1.888e-12,

tr=>3.0e-9,

Vcc=>5.0,

Vil=>0.8,

Vih=>2.4)

PORT MAP (output(i), input(i), Vdd_n2, electrical_ref,

pin(i));

END GENERATE;

-- Capacitor Cb -- capacité du circuit complet

Cb : ENTITY IBIS.Capacitor(a)

GENERIC MAP (2.0e-9)

PORT MAP (Vdd_n2, electrical_ref);

-- RL (rail Vdd)

Lvdd : ENTITY IBIS.Inductor(a)

GENERIC MAP (4.7e-9)

PORT MAP (Vdd_n1, Vdd_n2);

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 182: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

162 Chapitre A : Sources des modèles

Rvdd : ENTITY IBIS.Resistor(a)

GENERIC MAP (2.4)

PORT MAP (Vdd_n1, Vdd_ic);

-- Résistance de mesure

Rmeas : ENTITY IBIS.Resistor(a)

GENERIC MAP (1.2)

PORT MAP (Vdd_pcb, Vdd_ic);

-- RLC (PCB)

Rpcb : ENTITY IBIS.Resistor(a)

GENERIC MAP (0.083)

PORT MAP (Vdd_pcb, t1pcb);

Lpcb : ENTITY IBIS.Inductor(a)

GENERIC MAP (1.0e-9)

PORT MAP (t1pcb, t2pcb);

Cpcb : ENTITY IBIS.Capacitor(a)

GENERIC MAP (220.0e-12)

PORT MAP (t2pcb, electrical_ref);

-- RL (SMA)

Rsma : ENTITY IBIS.Resistor(a)

GENERIC MAP (0.044)

PORT MAP (Vdd_pcb, tsma);

Lsma : ENTITY IBIS.Inductor(a)

GENERIC MAP (1.2e-9)

PORT MAP (tsma, Vdd);

-- Tension d’alimentation

Vgen : ENTITY IBIS.VoltageSource(a)

GENERIC MAP (5.0)

PORT MAP (Vdd, electrical_ref);

-- GENERATE ne fonctionne pas sous ADVance-MS pour les équations

ipin(0) == Cload * vpin(0)’dot;

ipin(1) == Cload * vpin(1)’dot;

ipin(2) == Cload * vpin(2)’dot;

ipin(3) == Cload * vpin(3)’dot;

ipin(4) == Cload * vpin(4)’dot;

ipin(5) == Cload * vpin(5)’dot;

ipin(6) == Cload * vpin(6)’dot;

ipin(7) == Cload * vpin(7)’dot;

vrs(0) == Rs * irs(0);

vrs(1) == Rs * irs(1);

vrs(2) == Rs * irs(2);

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 183: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.4 Sources du chapitre 5 163

vrs(3) == Rs * irs(3);

vrs(4) == Rs * irs(4);

vrs(5) == Rs * irs(5);

vrs(6) == Rs * irs(6);

vrs(7) == Rs * irs(7);

-- Positionnement des sorties

output <= "00000000", "11111111" AFTER 100ns, "00000000" AFTER 200ns,

"ZZZZZZZZ" AFTER 300ns;

-- Direction du port

direction <= ’0’, ’1’ AFTER 400ns;

-- Génération des impulsions de tension en mode entrée

pulse <= 0.0, -5.0 AFTER 500ns, 0.0 AFTER 510ns,

10.0 AFTER 600ns, 0.0 AFTER 610ns;

drive == pulse’ramp(3.0e-9);

IF direction = ’0’ USE

isource == (0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0);

ELSE

vsource == (drive,drive,drive,drive,drive,drive,drive,drive);

END USE;

END ARCHITECTURE testio;

A.4.6 Banc de test pour le driver d’horloge

-- VHDL-AMS test bench for Viper IOs

LIBRARY IEEE,IEEE_PROPOSED,IBIS;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE_PROPOSED.ELECTRICAL_SYSTEMS.ALL;

USE IBIS.ALL;

ENTITY viperibisicemkeep IS

END ENTITY viperibisicemkeep;

ARCHITECTURE testosc OF viperibisicemkeep IS

CONSTANT Cload : real := 3.0e-12;

CONSTANT Rs : real := 50.0;

SIGNAL input1, output1, input2, output2, inputio, outputio : std_logic := ’0’;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 184: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

164 Chapitre A : Sources des modèles

SIGNAL clock : std_logic := ’0’;

SIGNAL clock_real : real := 0.0;

TERMINAL Vdd_n2, Vdd_n1, Vdd_ic, Vdd_pcb, Vdd,

t1pcb, t2pcb, tsma : electrical;

TERMINAL pin1, pin2, source, pinio : electrical;

QUANTITY vrs ACROSS irs THROUGH source TO pin2;

QUANTITY vsource ACROSS isource THROUGH source;

QUANTITY vpin ACROSS ipin THROUGH pinio;

BEGIN

bufferout : ENTITY IBIS.bufferkeepio(behavioral)

GENERIC MAP (

Vsat1pmos=>1.28,

Vsat2pmos=>2.56,

Vgdatapmos=>(0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0),

Isat1pmos=>(0.31e-3,0.31e-3,0.56e-3,2.38e-3,5.66e-3,

9.94e-3,14.3e-3,18.0e-3,21.6e-3,24.8e-3,27.8e-3),

Isat2pmos=>(0.31e-3,0.31e-3,0.56e-3,2.49e-3,5.99e-3,

10.5e-3,16.2e-3,22.8e-3,30.0e-3,37.1e-3,43.6e-3),

Rsat2pmos=>(1.0e6,1.0e6,1.0e6,1.0e6,22200.0,

11100.0,5550.0,3170.0,1850.0,928.0,455.0),

Vsat1nmos=>1.28,

Vsat2nmos=>2.56,

Vgdatanmos=>(0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0),

Isat1nmos=>(0.19e-3,0.19e-3,0.36e-3,2.71e-3,7.40e-3,

13.5e-3,20.5e-3,27.6e-3,34.2e-3,40.3e-3,46.1e-3),

Isat2nmos=>(0.19e-3,0.19e-3,0.36e-3,2.82e-3,7.53e-3,

13.8e-3,21.1e-3,29.1e-3,37.7e-3,46.5e-3,55.7e-3),

Rohmnmos=>(4510.0,4510.0,3490.0,473.0,173.0,

94.6,62.3,46.4,37.4,31.7,27.9),

Rsat1nmos=>(1.0e6,1.0e6,1.0e6,21000.0,10200.0,

5120.0,2550.0,852.0,365.0,205.0,132.0),

Rsat2nmos=>(1.0e6,1.0e6,1.0e6,1.0e6,19400.0,

9760.0,9760.0,6510.0,6510.0,6490.0,3900.0),

Vdatadiode=>(-5.0,-3.0,-1.55,-1.02,1.0e-3,0.0),

Idatadiode=>(-66.3e-3,-9.44e-3,-3.45e-3,-48.5e-6,0.0,0.0),

Vdatapkeep=>(-5.0,-3.47,-1.85,-1.84,-1.0e-3,0.0),

Idatapkeep=>(-5.36,-2.55,-2.43e-3,-1.0e-12,0.0,0.0),

Vdatankeep=>(-5.0,-2.07,-1.57,-1.56,-1.0e-3,0.0),

Idatankeep=>(-6.43,-0.228,-4.25e-3,-41.9e-6,0.0,0.0),

Rs=>615.0,

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 185: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.4 Sources du chapitre 5 165

Cpmos=>1.39e-12,

Cnmos=>0.369e-12,

Ribis=>102.0e-3,

Libis=>10.10e-9,

Cibis=>1.888e-12,

tr=>6.0e-9,

Vcc=>5.0,

Vil=>0.8,

Vih=>2.4)

PORT MAP (output1, input1, Vdd_n2, electrical_ref, pin1);

bufferin : ENTITY IBIS.bufferkeepio(behavioral)

GENERIC MAP (

Vsat1pmos=>1.28,

Vsat2pmos=>2.56,

Vgdatapmos=>(0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0),

Isat1pmos=>(0.31e-3,0.31e-3,0.56e-3,2.38e-3,5.66e-3,

9.94e-3,14.3e-3,18.0e-3,21.6e-3,24.8e-3,27.8e-3),

Isat2pmos=>(0.31e-3,0.31e-3,0.56e-3,2.49e-3,5.99e-3,

10.5e-3,16.2e-3,22.8e-3,30.0e-3,37.1e-3,43.6e-3),

Rsat2pmos=>(1.0e6,1.0e6,1.0e6,1.0e6,22200.0,

11100.0,5550.0,3170.0,1850.0,928.0,455.0),

Vsat1nmos=>1.28,

Vsat2nmos=>2.56,

Vgdatanmos=>(0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0),

Isat1nmos=>(0.19e-3,0.19e-3,0.36e-3,2.71e-3,7.40e-3,

13.5e-3,20.5e-3,27.6e-3,34.2e-3,40.3e-3,46.1e-3),

Isat2nmos=>(0.19e-3,0.19e-3,0.36e-3,2.82e-3,7.53e-3,

13.8e-3,21.1e-3,29.1e-3,37.7e-3,46.5e-3,55.7e-3),

Rohmnmos=>(4510.0,4510.0,3490.0,473.0,173.0,

94.6,62.3,46.4,37.4,31.7,27.9),

Rsat1nmos=>(1.0e6,1.0e6,1.0e6,21000.0,10200.0,

5120.0,2550.0,852.0,365.0,205.0,132.0),

Rsat2nmos=>(1.0e6,1.0e6,1.0e6,1.0e6,19400.0,

9760.0,9760.0,6510.0,6510.0,6490.0,3900.0),

Vdatadiode=>(-5.0,-3.0,-1.55,-1.02,1.0e-3,0.0),

Idatadiode=>(-66.3e-3,-9.44e-3,-3.45e-3,-48.5e-6,0.0,0.0),

Vdatapkeep=>(-5.0,-3.47,-1.85,-1.84,-1.0e-3,0.0),

Idatapkeep=>(-5.36,-2.55,-2.43e-3,-1.0e-12,0.0,0.0),

Vdatankeep=>(-5.0,-2.07,-1.57,-1.56,-1.0e-3,0.0),

Idatankeep=>(-6.43,-0.228,-4.25e-3,-41.9e-6,0.0,0.0),

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 186: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

166 Chapitre A : Sources des modèles

Rs=>615.0,

Cpmos=>1.39e-12,

Cnmos=>0.369e-12,

Ribis=>102.0e-3,

Libis=>10.10e-9,

Cibis=>1.888e-12,

tr=>3.0e-9,

Vcc=>5.0,

Vil=>0.8,

Vih=>2.4)

PORT MAP (output2, input2, Vdd_n2, electrical_ref, pin2);

bufferio : ENTITY IBIS.bufferkeepio(behavioral)

GENERIC MAP (

Vsat1pmos=>1.28,

Vsat2pmos=>2.56,

Vgdatapmos=>(0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0),

Isat1pmos=>(0.67e-3,0.67e-3,1.25e-3,4.70e-3,11.1e-3,

19.9e-3,28.4e-3,36.1e-3,43.3e-3,49.7e-3,55.6e-3),

Isat2pmos=>(0.67e-3,0.67e-3,1.25e-3,4.70e-3,11.3e-3,

20.5e-3,31.9e-3,45.1e-3,59.5e-3,73.6e-3,86.3e-3),

Rsat2pmos=>(1.0e6,1.0e6,1.0e6,1.0e6,11100.0,

3710.0,2780.0,1590.0,1010.0,445.0,223.0),

Vsat1nmos=>1.28,

Vsat2nmos=>2.56,

Vgdatanmos=>(0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0),

Isat1nmos=>(0.24e-3,0.24e-3,0.70e-3,4.23e-3,10.1e-3,

17.5e-3,25.6e-3,33.9e-3,41.5e-3,48.7e-3,55.5e-3),

Isat2nmos=>(0.24e-3,0.24e-3,0.98e-3,4.79e-3,10.7e-3,

18.2e-3,26.6e-3,35.6e-3,45.2e-3,55.1e-3,65.3e-3),

Rohmnmos=>(5300.0,5250.0,1820.0,303.0,126.0,

73.2,49.9,37.7,30.8,26.3,23.1),

Rsat1nmos=>(1.0e6,1.0e6,1.0e6,2270.0,2270.0,

1820.0,1380.0,757.0,364.0,206.0,131.0),

Rsat2nmos=>(1.0e6,1.0e6,1.0e6,1.0e6,32000.0,

32000.0,32000.0,32000.0,32000.0,32000.0,32000.0),

Vdatadiode=>(-5.0,-3.0,-1.55,-1.02,1.0e-3,0.0),

Idatadiode=>(-66.3e-3,-9.44e-3,-3.45e-3,-48.5e-6,0.0,0.0),

Vdatapkeep=>(-5.0,-3.47,-1.85,-1.84,-1.0e-3,0.0),

Idatapkeep=>(-5.36,-2.55,-2.43e-3,-1.0e-12,0.0,0.0),

Vdatankeep=>(-5.0,-2.07,-1.57,-1.56,-1.0e-3,0.0),

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 187: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

A.4 Sources du chapitre 5 167

Idatankeep=>(-6.43,-0.228,-4.25e-3,-41.9e-6,0.0,0.0),

Rs=>615.0,

Cpmos=>1.39e-12,

Cnmos=>0.369e-12,

Ribis=>102.0e-3,

Libis=>10.10e-9,

Cibis=>1.888e-12,

tr=>3.0e-9,

Vcc=>5.0,

Vil=>0.8,

Vih=>2.4)

PORT MAP (outputio, inputio, Vdd_n2, electrical_ref,

pinio);

-- Coeur

Core : ENTITY IBIS.CoreGenerator(a)

GENERIC MAP (3.0e-9)

PORT MAP (clock, Vdd_n2, electrical_ref);

-- Capacité Cb -- capacité métal du circuit complet

Cb : ENTITY IBIS.Capacitor(a)

GENERIC MAP (1.0e-9)

PORT MAP (Vdd_n2, electrical_ref);

-- RL (rail Vdd)

Lvdd : ENTITY IBIS.Inductor(a)

GENERIC MAP (4.7e-9)

PORT MAP (Vdd_n1, Vdd_n2);

Rvdd : ENTITY IBIS.Resistor(a)

GENERIC MAP (2.4)

PORT MAP (Vdd_n1, Vdd_ic);

-- Résistance de mesure

Rmeas : ENTITY IBIS.Resistor(a)

GENERIC MAP (1.2)

PORT MAP (Vdd_pcb, Vdd_ic);

-- RLC (PCB)

Rpcb : ENTITY IBIS.Resistor(a)

GENERIC MAP (0.083)

PORT MAP (Vdd_pcb, t1pcb);

Lpcb : ENTITY IBIS.Inductor(a)

GENERIC MAP (1.0e-9)

PORT MAP (t1pcb, t2pcb);

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 188: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

168 Chapitre A : Sources des modèles

Cpcb : ENTITY IBIS.Capacitor(a)

GENERIC MAP (220.0e-12)

PORT MAP (t2pcb, electrical_ref);

-- RL (SMA)

Rsma : ENTITY IBIS.Resistor(a)

GENERIC MAP (0.044)

PORT MAP (Vdd_pcb, tsma);

Lsma : ENTITY IBIS.Inductor(a)

GENERIC MAP (1.2e-9)

PORT MAP (tsma, Vdd);

-- Générateur de tension

Vgen : ENTITY IBIS.VoltageSource(a)

GENERIC MAP (5.0)

PORT MAP (Vdd, electrical_ref);

ipin == Cload * vpin’dot;

clock <= NOT clock AFTER 28ns;

clock_real <= 5.0 - clock_real AFTER 28ns;

vsource == clock_real’ramp(3.0e-9,3.0e-9);

vrs == Rs * irs;

output1 <= NOT clock’delayed(6ns);

output2 <= ’Z’;

outputio <= ’0’, ’1’ AFTER 100ns, ’0’ AFTER 200ns, ’Z’ AFTER 300ns;

END ARCHITECTURE testosc;

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 189: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Bibliographie

[1] O. Alali. Modélisation VHDL-AMS analogique et simulation SPICE. Thèse dedoctorat, Ecole Nationale Supérieure des Télécommunications, 1998.

[2] B.S. Amrutur. Design and Analysis of Fast Low-Power SRAMs. Ph.D thesis,Stanford University, 1999.

[3] V. Aubert and S. Garcia Sabiro. Common rail injection system described in VHDL-AMS and simulated with ADVance MS. Deep submicron technical publication,Mentor Graphics Corporation, November 2000.

[4] S. Baffreau, C. Huet, E. Lamoureux, C. Lochot, O. Maurice, R. Perdriau,E. Sicard, and A. de la Villeguérin. Basis for an integrated circuit immu-nity model (ICIM). Draft technical report, May 2003. http ://intrage.insa-tlse.fr/∼etienne/Emc/icim.pdf.

[5] A. Benbassou, M. Rifi, J. Baudet, and B. Démoulin. Comportement des composantslogiques soumis à l’accumulation de perturbations induites par diaphonie interne etpar des champs EM extérieurs. In CEM Compo 2000, pages 90–95, Juin 2000.

[6] L. Benini, P. Vuillod, A. Bogliolo, and G. de Micheli. Clock skew optimization forpeak current reduction. Journal of VLSI Signal Processing, 16 :117–130, 1997.

[7] F. Caignet, S. Delmas-Ben Dhia, and E. Sicard. Mesure de l’émission parasite d’unoscillateur haute fréquence en 0.18 µm. In CEM Compo 2000, pages 72–77, Juin2000.

[8] A. Chatzigeorgiou and S. Nikolaidis. Efficient output waveform evaluation of aCMOS inverter based on short-circuit current prediction. International Journal ofCircuit Theory and Applications, (30) :547–566, 2002.

[9] E. Christen, K. Bakalar, A.M. Dewey, and E. Moser. Analog and mixed-signalmodeling using the VHDL-AMS language. In 36th Design Automation Conference,June 1999.

[10] Ansoft Corporation. SIMPLORER presentation.http ://www.ansoft.com/products/em/simplorer/.

[11] Mentor Graphics Corporation. Commlib presentation.http ://www.mentor.com/ams/datasheets/commlib.pdf.

169

Page 190: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

170 BIBLIOGRAPHIE

[12] Mentor Graphics Corporation. Mach presentation.http ://www.mentor.com/mach/.

[13] Mentor Graphics Corporation. Opsim/simpilot presentation.http ://www.mentor.com/ams/datasheets/simopaspire.pdf.

[14] Mentor Graphics Corporation. Systemvision presentation.http ://www.mentor.com/system/.

[15] Mentor Graphics Corporation. ADVance-MS presentation.http ://www.mentor.com/ams/adms.html.

[16] Nassda Corporation. HSIM presentation. http ://www.nassda.com/hsim.html.

[17] Nassda Corporation. LEXSIM presentation. http ://www.nassda.com/lexsim.html.

[18] D.R. Coulson. EMC techniques for microprocessor software. In Proceedings of theIEE Colloquium on EMC for Small Business, 1998.

[19] L. Courau and B. Gerbert-Gaillard. EMI modeling of integrated circuits usingpattern simulation. In EMC Compo 2002, pages 116–121, November 2002.

[20] J. Dabrowski. Functional-level analog macromodeling with piecewise linear signals.In European Design Automation Conference with EURO-VHDL ’95, pages 222–227,September 1995.

[21] J. Dabrowski and A. Pulka. Discrete approach to PWL analog modeling in VHDLenvironment. Analog Integrated Circuits and Signal Processing, 16(2) :91–99, June1998.

[22] V. Deniau, J. Rioult, M. Heddebaut, and B. Démoulin. Radiated power measure-ments of electronic equipments in three-dimensional TEM cells. In EMC Compo2002, pages 39–42, November 2002.

[23] G. Van der Plas, G. Debyser, F. Leyn, K. Lampaert, J. Vandenbussche, G. Gielen,W. Sansen, P. Veselinovic, and D. Leenaerts. AMGIE : a synthesis environment forCMOS analog integrated circuits. IEEE Transactions on Computer-Aided Designof Integrated Circuits and Systems, 20(9) :1037–1058, September 2001.

[24] S. Delmas-Ben Dhia, E. Sicard, M. Lubineau, and S. Ollitrault. Mesure de phéno-mènes parasites haute fréquence dans les circuits intégrés en vue d’une modélisationCEM des composants. In CEM Compo 1999, pages 91–96, Janvier 1999.

[25] P. Doguet. Conception d’un stimulateur intégré pour prothèse visuelle. Thèse dedoctorat, Université Catholique de Louvain, 2000.

[26] O. Druant, J. Baudet, and B. Démoulin. Characterization of the sensitivity of anoperational amplifier disturbed by high frequency sources. In CEM Compo 1999,pages 34–39, Janvier 1999.

[27] F. Dubreuil, M. Bareille, J.L. Massol, Y. Demarcq, and J.M. Dienot. Une méthodecohérente pour la prédiction des perturbations CEM de composants numériques :étude du courant de commutation. In CEM Compo 2000, pages 61–66, Juin 2000.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 191: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

BIBLIOGRAPHIE 171

[28] eda.org. VITAL’99 home page. http ://www.eda.org/vital/.

[29] A. Engel, H. Astrain, J. Cagle, S. Ledford, and M. Mahalingam. A TEM-cell basedmethod for radiative susceptibility characterization of low-power microcontrollers.In Proceedings of the IEEE International Symposium on Electromagnetic Compati-bility, pages 76–81, 1996.

[30] C.J.R. Shi et al. VHDL-A : Analog extension to VHDL. IEEE 0-7803-2020-4/94 :160–165, 1994.

[31] J.J. Charlot et al. Analog behavioral simulation using smartspice. The SimulationStandard, pages 7–9, January 1995.

[32] F. Fiori. Integrated circuits immunity evaluation by different test procedures. InProceedings of the EMC2000 International Symposium On Electromagnetic Compa-tibility, Brugge, pages 286–289, 2000.

[33] F. Fiori and P.S. Crovetti. A new CMOS operational amplifier immune to EMI.In EMC Compo 2002, pages 126–129, November 2002.

[34] F. Fiori and P.S. Crovetti. Nonlinear effects of radio-frequency interference in opera-tional amplifiers. IEEE Transactions on Circuits and Systems, CAS-49(3) :367–372,March 2002.

[35] F. Fiori and V. Pozzolo. Modified Gummel-Poon model for susceptibility prediction.IEEE Transactions on Electromagnetic Compatibility, EMC-42(2) :206–213, May2000.

[36] M.L. Forcier and R.E. Richardson. Microwave rectification in field-effect transistors.IEEE Transactions on Electromagnetic Compatibility, EMC-21(4), December 1979.

[37] D. Gajski, N. Dutt, C. Wu, and Y. Lin. High-Level Synthesis, Introduction to Chipand System Design. Kluwer Academic Publishers, 1992.

[38] M. Georgin, A. Favre, J.L. Levant, and M. Ramdani. Current modeling methodof an IC digital activity based on a logic simulation. In CEM Compo 2000, pages38–43, Juin 2000.

[39] K.B. Hardin, J.T. Fessler, and D.R. Bush. Spread-spectrum clock generation forthe reduction of radiated emissions. In Proceedings of the IEEE International Sym-posium on Electromagnetic Compatibility, Chicago, pages 227–231, 1994.

[40] Y. Hervé. VHDL-AMS : applications et enjeux industriels. Dunod Université, 2002.

[41] A. Hirata, H. Onodera, and K. Tamaru. Estimation of short-circuit power dissi-pation for static CMOS gates. IEICE Trans. Fundamentals, E00-A(1), January1995.

[42] A. Hirata, H. Onodera, and K. Tamaru. Estimation of propagation delay consideringshort-circuit current for static CMOS gates. IEEE Transactions on Circuits andSystems, CAS-45(11) :1194–1198, November 1998.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 192: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

172 BIBLIOGRAPHIE

[43] F. Hoeppe. Analyse du comportement électromagnétique des chambres réverbérantesà brassage de modes par l’utilisation de simulations numériques. Thèse de doctorat,Université de Lille 1, 2002.

[44] S.A. Huss. Model Engineering in Mixed-Signal Design. Kluwer Academic Publishers,2001.

[45] Japan Electronics and Information Technology Industries Association(JEITA). Standard for I/O Interface Model for Integrated Circuits ( IMIC).http ://tsc.jeita.or.jp/eds/data/IC/ED5302.pdf.

[46] VS.R. KasulaSrinivas. Modeling Semiconductor Devices using the VHDL-AMSLanguage. Master’s thesis, University of Cincinnati, 1999.

[47] S. Kazama. Measurement system for adjacent electric field and magnetic field dis-tributions on an IC package. In EMC Compo 2002, pages 15–18, November 2002.

[48] C. Lallement, F. Pêcheux, and Y. Hervé. VHDL-AMS design of a MOST modelincluding deep submicron and thermal-electronic effects. In IEEE InternationalWorkshop on Behavioral Modeling and Simulation (BMAS), October 2001.

[49] O. Latte. Conception et réalisation d’un émetteur pour transmission transcutanée depuissance et de données à haut débit. Travail de fin d’études, Université Catholiquede Louvain, 2000.

[50] D. Lazaro. Modélisation de la dégradation en signal et en bruit de transistors à effetde champ faible bruit par des impulsions hyperfréquences. In CEM Compo 2000,pages 96–101, Juin 2000.

[51] D. Lazaro, J.C. Mollier, and A. Roizes. Susceptibilité de TECs faible bruit auximpulsions hyperfréquences fort niveau. In CEM’94, Toulouse, Mars 1994.

[52] F. Lémery. Modélisation comportementale des circuits analogiques et mixtes. Thèsede doctorat, Institut National Polytechnique de Grenoble, 1995.

[53] J.L. Levant, M. Ramdani, and R. Perdriau. Power supply network modeling. InEMC Compo 2002, pages 75–78, November 2002.

[54] J.L. Levant, M. Ramdani, and R. Perdriau. ICEM modeling of microcontrollercurrent activity. In EMC Compo 2002, pages 88–91, November 2002.

[55] J.L. Levant, M. Ramdani, E. Tinlot, and R. Perdriau. ICEM modelling of mi-crocontroller current activity. Microelectronics Journal, Special Section on EMCCOMPO 2002, 2003.

[56] E. Liu, A. Sangiovanni-Vincentelli, G. Gielen, and P.R. Gray. A behavioral repre-sentation for nyquist rate A/D converters,. In Proceedings of the IEEE ICCADConference, pages 386–389, 1991.

[57] C. Lochot, S. Calvet, S. Ben Dhia, and E. Sicard. REGINA test mask - researchon EMC guidelines for integrated automotive circuits. In EMC Compo 2002, pages122–125, November 2002.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 193: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

BIBLIOGRAPHIE 173

[58] M. Mardiguian. Prise en compte des effets de plusieurs agressions simultanées. In10ème Colloque International sur la CEM, Clermont-Ferrand, pages 461–464, Mars2000.

[59] O. Maurice, F. de Daran, F. Lafon, R. Oussedrat, and I. Ben Yacoub. GTEMcell facility use during project development phases for automotive. In EMC Compo2002, pages 19–22, November 2002.

[60] O. Maurice and J. Pigneret. Susceptibilité des composants numériques. In CEMCompo 1999, pages 40–45, Janvier 1999.

[61] Mentor Graphics Corporation. CFAS User’s Manual, 2003.

[62] A. Meresse, M. Ramdani, and B. Barelaud. Modélisation du comportement CEMdes circuits intégrés numériques - comparaison de modèles ICEM issus de simula-tions et de mesures. In CEM Toulouse, March 2004.

[63] N. Milet-Lewis. Contribution à la modélisation comportementale des circuits ana-logiques. Thèse de doctorat, Université de Bordeaux I, 1997.

[64] J.P. Muccioli, T. North, and K. Slattery. Investigations of the theoretical basisfor using a 1-GHz TEM cell to evaluate the radiated emissions from integratedcircuits. In Proceedings of the IEEE International Symposium on ElectromagneticCompatibility, pages 63–67, 1996.

[65] L. Musso. Assessment of Reverberation Chamber Testing for Automotive Applica-tions. Ph.D thesis, Politecnico di Torino, 2003.

[66] University of Cincinnati. SIERRA download page.http ://www.ececs.uc.edu/∼dpl/distribution/packageSierra1_0/.

[67] T. Ostermann, D. Schneider, C. Bacher, B. Deutschmann, R. Jungreithmair,W. Gut, C. Lackner, R. Kössl, and R. Hagelauer. Characterization of the influenceof different power supply styles on the electromagnetic emission of ICs by using theTEM-cell method (IEC61967-2). In EMC Compo 2002, pages 57–60, November2002.

[68] J. Oudinot. Méthodologie de conception d’ASICs mixtes avec VHDL-AMS. Thèsede doctorat, Ecole Nationale Supérieure des Télécommunications, 2000.

[69] J. Oudinot, C. Hui-Bon-Hoa, F. Lémery, and A. Rossi. Validation of a new metho-dology using VHDL-AMS on a hard-disk drive design. Deep submicron technicalpublication, Mentor Graphics Corporation and STMicroelectronics, November 2000.

[70] J. Oudinot, C. Vaganay, M. Robbe, and P. Radja. Mixed-signal ASIC top-downand bottom-up design methodologies using VHDL-AMS. Deep submicron techni-cal publication, Mentor Graphics Corporation and Matra Nortel Communications,November 2000.

[71] D. Panyasak, G. Sicard, and M. Renaudin. Shaping current profile of asynchronouscircuits. In ACID Workshop, Munich, 2002.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 194: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

174 BIBLIOGRAPHIE

[72] R. Perdriau. Analysis & modeling of electromagnetic interference on chip level -part i : Influence of memory architectures on EMC compliance. M2.2 milestonereport, MEDEA+ A509 : MESDIE, December 2002.

[73] R. Perdriau. Contribution to mixed-signal design methodologies using VHDL-AMS. In ISQED’02 Ph.D Student Forum, March 2002.

[74] R. Perdriau. Architectures avancées : étude des processeurs modernes et des mé-moires associées. Cours ingénieur 3ème année, ESEO, Edition septembre 2003.

[75] R. Perdriau, A.M. Trullemans-Anckaert, and M. Ramdani. Modélisation VHDL-AMS haut niveau d’un système de transmission de puissance et de données par unlien inductif. In FTFC’01, pages 145–153, Mai 2001.

[76] V. Pozzolo, P. Tenti, F. Fiori, G. Spiazzi, and S. Buso. Susceptibility of integratedcircuits to RFI. In CPES Annual Seminar, Blacksburg, pages I10–I15, April 2002.

[77] R.E. Richardson. Quiescent operating point shift in bipolar transistors with ACexcitation. IEEE Journal of Solid-State Circuits, SSC-14 :1087–1094, December1979.

[78] R. Rosenberger. Zur Generierung vor Verhaltensmodellen für Gemischt Ana-log/Digitale Schaltungen auf Basis der Theorie Dynamischer Systeme. Ph.D thesis,University of Technology Darmstadt, 2001.

[79] D. Saillé, D. Chillet, and O. Sentieys. Modélisation de la consommation pour lesmémoires SRAM. In FTFC’01, pages 27–33, Mai 2001.

[80] C.J.R. Shi and A. Vachoux. VHDL-A Objectives and Rationale, Current Issues inElectronic Modeling. Kluwer Academic Publishers, 1995.

[81] E. Sicard, L. Tysk, R. Bouaziz, and S. Baffreau. Susceptibility tes-ting of micro-controllers : Defensive software implementation. M2.3 miles-tone report, MEDEA+ A509 : MESDIE, June 2003. http ://intrage.insa-tlse.fr/∼etienne/susceptmicro.pdf.

[82] Simec. hAMSter presentation. http ://www.hamster-ams.com/index2.htm.

[83] T. Steinecke, H. Koehne, and M. Schmidt. Behavioral EMI models of complexdigital VLSI circuits. In EMC Compo 2002, pages 110–115, November 2002.

[84] Synopsys. Powermill presentation. http ://www.synopsys.com/products/etg/powermill_ds.html.

[85] Synopsys. Primepower presentation. http ://www.synopsys.com/products/power/primepower_ds.h

[86] P.F. Tehrani, Y. Chen, and J. Fang. Extraction of transient behavioral model of di-gital I/O buffers from IBIS. In Proceedings of the 46th IEEE Electronic Components& Technology Conference, 1996.

[87] ANSI-EIA. IBIS (I/O Buffer Information Specification) version 4.0.http ://eda.org/pub/ibis/ver4.0/ver4_0.pdf.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 195: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

BIBLIOGRAPHIE 175

[88] ANSI-EIA. IBIS-ML Reference Manual v0.2.http ://www.eda.org/pub/ibis/futures/ibis-ml-06G.doc.

[89] IEC EMC Task Force. IEC62132-4 : Measurement of electromagnetic immunity ofintegrated circuits in the range of 150 khz to 1 ghz. Draft technical report, IEC,October 1998. http ://www.insa-tlse.fr/∼emccompo/iec/62132/62132_4.pdf.

[90] IEC EMC Task Force. IEC61967-4 : Measurement of conducted emis-sion, 1 ohm/150 ohm method. Draft technical report, IEC, November 2000.http ://www.insa-tlse.fr/∼emccompo/iec/61967/61967_4.pdf.

[91] IEC EMC Task Force. IEC61967-2 : Measurement of electromagnetic emissions, 150khz to 1 ghz - measurement of radiated emissions, TEM-cell method and widebandTEM-cell method (150 khz to 8 ghz). Draft technical report, IEC, July 2001.http ://www.insa-tlse.fr/∼emccompo/iec/61967/61967_2.pdf.

[92] IEC EMC Task Force. IEC61967-3 : Measurement of electromagnetic emis-sions, 150 khz to 1 ghz - measurement of radiated emissions, surface scan method(10 khz to 3 ghz). Draft technical report, IEC, July 2001. http ://www.insa-tlse.fr/∼emccompo/iec/61967/61967_3.pdf.

[93] IEC EMC Task Force. IEC61967-5 : Measurement of conducted emissions,workbench faraday cage method. Draft technical report, IEC, May 2001.http ://www.insa-tlse.fr/∼emccompo/iec/61967/61967_5.pdf.

[94] IEC EMC Task Force. IEC62014-3 : Integrated circuit electromagnetic mo-del. Draft technical report, IEC, November 2001. http ://intrage.insa-tlse.fr/∼etienne/Emc/icemcdv.PDF.

[95] IEC EMC Task Force. IEC62132-2 : Immunity test to narrowband disturbances bybulk current injection (BCI), 10khz-400mhz. Draft technical report, IEC, August2001. http ://www.insa-tlse.fr/∼emccompo/iec/62132/62132_2.pdf.

[96] IEC EMC Task Force. IEC62132-3 : Direct RF power injection to mea-sure the immunity against conducted rf-disturbances of integrated circuits upto 1 ghz. Draft technical report, IEC, August 2001. http ://www.insa-tlse.fr/∼emccompo/iec/62132/62132_3.pdf.

[97] J.G. Tront, J.J. Whalen, and C.E. Larson. Computer-aided analysis of RFI effectin operational amplifiers. IEEE Transactions on Electromagnetic Compatibility,EMC-21(4) :297–306, November 1979.

[98] A.M. Trullemans and R. Ferreira. Analyse et optimisation de puissance de systèmesVLSI complexes au niveau RTL. In FTFC’01, pages 137–143, Mai 2001.

[99] A.M. Trullemans-Anckaert. Mise au point de systèmes mixtes et évaluation depuissance : un exemple d’application. In FTFC’03, pages 173–182, 2003.

[100] UTE47A EMC Task Force. Cookbook for Integrated Circuit model ICEM, 2001.http ://intrage.insa-tlse.fr/∼etienne/Emc/cookbook.PDF.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 196: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

176 BIBLIOGRAPHIE

[101] A. Vachoux. Modélisation de systèmes analo-giques et mixtes - Introduction à VHDL-AMS, 2003.http ://lsmwww.epfl.ch/Education/Documents/modelmix03.pdf.

[102] A. Vachoux and J.M. Bergé. VHDL-A : Analog and mixed-mode extensions toVHDL. In EUROSIM Simulation Congress, pages 475–480, 1995.

[103] J.J. Whalen, J.G. Tront, and C.E. Larson. Computer-aided analysis of RFI effectin digital integrated circuits. IEEE Transactions on Electromagnetic Compatibility,EMC-21(4) :291–296, November 1979.

[104] S.J.E. Wilton and N.P. Jouppi. An enhanced access and cycle time model for on-chip caches. Digital WRL research report 93/5, Digital Equipment Corporation,July 1994.

[105] J. Zengh, V.K. Tripathi, and A. Weishaar. Characterization and modeling of mul-tiple coupled on-chip interconnects on silicon substrate. IEEE Transactions onMicrowave Theory and Techniques, (10), October 2001.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 197: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Publications en rapport avec la thèse

Revues

R. Perdriau, M. Ramdani, J.L. Levant, E. Tinlot, A.M. Trullemans, "An EMC-orientedVHDL-AMS Simulation Methodology for Dynamic Current Activity Assessment", Microe-lectronics Journal - Special Section on EMC Compo 2002, Elsevier, parution en 2004.

J.L. Levant, E. Tinlot, M. Ramdani, R. Perdriau, "ICEM Modelling of Microcontrol-ler Current Activity", Microelectronics Journal - Special Section on EMC Compo 2002,Elsevier, parution en 2004.

Conférences avec comité de lecture

M. Ramdani, J.L. Levant, R. Perdriau, "ICEM Model Extraction : a Case Study",accepté à IEEE EMC 2004 International Conference, Santa Clara, 9-13 août 2004.

M. Ramdani, R. Perdriau, S. Ben Dhia, J.L. Levant, "IC EMC Behavior Characterizationand Prediction in the Design Process", tutorial accepté à IEEE International Symposiumon Industrial Electronics 2004, Ajaccio, 3 mai 2004.

R. Perdriau, M. Ramdani, J.L. Levant, A.M. Trullemans, "EMC Evaluation in Integra-ted Circuits Using VHDL-AMS", accepté à IEEE International Symposium on IndustrialElectronics 2004, Ajaccio, 4-7 mai 2004.

R. Perdriau, M. Ramdani, J.L. Levant, A. Meresse, A.M. Trullemans, "Reusable ActivityModels for EMC Prediction in Integrated Circuits", accepté à EMC Compo 04, Angers,31 mars-1er avril 2004.

J.L. Levant, E. Tinlot, M. Ramdani, R. Perdriau, "Modélisation ICEM de l’activité encourant d’un microcontrôleur", Telecom 2003 & JFMMA, Marrakech, 15-17 octobre 2003.

177

Page 198: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

178 Chapitre A : Publications en rapport avec la thèse

E. Sicard, M. Ramdani, O. Maurice, R. Perdriau, "Towards an International Standard :ICEM Model", International Conference on Electromagnetic Near-Field Characterization(ICONIC), Rouen, 18-20 juin 2003.

R. Perdriau, M. Ramdani, J.L. Levant, A.M. Trullemans, "Modélisation VHDL-AMShaut niveau de l’activité en courant des mémoires en vue de l’optimisation de la compa-tibilité électromagnétique", FTFC’2003, Paris, 15-16 mai 2003.

R. Perdriau, D. Lambert, A.M. Trullemans, M. Ramdani, J.L. Levant, "A VHDL-AMSSimulation Methodology for Transient Supply Current Extraction", EMC Compo 2002,pp. 99-104, Toulouse, 14-15 novembre 2002.

J.L. Levant, M. Ramdani, R. Perdriau, "Power-Supply Network Modeling", EMC Compo2002, pp. 75-78, Toulouse, 14-15 novembre 2002.

J.L. Levant, M. Ramdani, R. Perdriau, "ICEM Modeling of Microcontroller Current Ac-tivity", EMC Compo 2002, pp. 88-91, Toulouse, 14-15 novembre 2002.

R. Perdriau, "Contribution to Mixed-Signal Design Methodologies Using VHDL-AMS",Ph.D Student Forum, IEEE International Symposium on Quality Electronic Design (IS-QED’02), San Jose (USA), 18-21 mars 2002.

R. Perdriau, A.M. Trullemans, M. Ramdani, "Modélisation VHDL-AMS haut niveau d’unsystème de transmission de puissance et de données par lien inductif", FTFC’2001, pp.145-153, Paris, 31 mai-1er juin 2001.

Rapports d’activité

R. Perdriau, M. Ramdani, J.L. Levant, "Integration of an ICEM-based EMC Predic-tion Methodology in the Mentor Graphics r© SystemVision r© Flow", MESDIE A509 Miles-tone Report M4.4, à paraître en juin 2004.

R. Perdriau, M. Ramdani, J.L. Levant, E. Tinlot, "Validation of the ICEM Current Modelat ATMEL/ESEO", MESDIE A509 Milestone Report M1.3, septembre 2003.

R. Perdriau, "Analysis & Modeling of Electromagnetic Interference on Chip level - PartI : Influence of Memory Architectures on EMC Compliance", MESDIE A509 MilestoneReport M2.2, décembre 2002.

R. Perdriau - Méthodologie de prédiction des niveaux d’émission conduite dans les circuits intégrés, à l’aide de VHDL-AMS

Page 199: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Modèles

S. Baffreau, C. Huet, E. Lamoureux, C. Lochot, O. Maurice, R. Perdriau, E. Sicard,A. de la Villeguérin (par ordre alphabétique), "Basis for an Integrated Circuit ImmunityModel (ICIM)", 2003.

Travaux soumis

R. Perdriau, M. Ramdani, J.L. Levant, A.M. Trullemans, "An IP-Based PredictionMethodology for Conducted-Mode Emission in Integrated Circuits", soumis à IEEE Tran-sactions on Electromagnetic Compatibility (6 pages).

Page 200: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de
Page 201: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de
Page 202: Méthodologie de prédiction des niveaux d'émission conduite dans les ... - UCL… · 2006-05-16 · iii Résumé Depuis de nombreuses années, la prise en compte des critères de

Résumé

Depuis de nombreuses années, la prise en compte des critères de compatibilité élec-tromagnétique (CEM) constitue une étape capitale dans la conception des systèmes élec-troniques. Or, l’augmentation de la complexité des circuits intégrés rend indispensablel’étude du comportement électromagnétique directement au niveau du silicium.L’objectif de ces travaux est la définition d’une méthodologie de prédiction, avant fonderie,de l’émission conduite des circuits intégrés. Celle-ci s’appuie sur le langage VHDL-AMSet le modèle ICEM (Integrated Circuit Electromagnetic Model), et peut s’intégrer dansun flot de conception industriel.

Mots-clés

Compatibilité électromagnétique, CEM, émission conduite, ICEM, VHDL-AMS, pré-diction, modélisation, simulation, mémoires.

Abstract

For many years, taking into account electromagnetic compatibility (EMC) constraintshas been a fundamental requirement in electronic system design. However, the increase incomplexity of integrated circuits now demands the study of their electromagnetic behaviorat chip level.The objective of this dissertation is the definition of a methodology aimed at predictingconducted emission in integrated circuits. This methodology is based on the VHDL-AMSlanguage and the ICEM (Integrated Circuit Electromagnetic Model) model, and can beintegrated into an industrial design flow.

Keywords

Electromagnetic compatibility, EMC, EMI, conducted emission, ICEM, VHDL-AMS,prediction, simulation, modeling, memories