Brevet FR2983604A1 — publié le 20130607

PROCEDE DE CONCEPTION OPTIMISEE DE CIRCUITS ELECTRONIQUES INTEGRES L'invention concerne de façon générale les méthodes de conception de circuits électroniques intégrés, et en particulier l'optimisation hiérarchique de tels circuits électroniques. L'invention s'avère tout particulièrement appropriée pour la conception de circuits intégrés hétérogènes. Des circuits hétérogènes désignent des circuits combinant au moins un composant électronique à un composant du domaine physique. Les composants électroniques pourront par exemple être des composants analogiques, des composants numériques ou des composants logiciels. Les différents composants peuvent mettre en oeuvre des technologies de gravures avec différents noeuds technologiques. Les composants du domaine physique sont des capteurs ou des actionneurs permettant le passage d'une grandeur physique à une grandeur électrique (et inversement) par exemple un signal lumineux transformé en courant électrique. Dû à la complexité accrue de ces circuits, il devient impératif de faire appel à des méthodes de conception hiérarchique. Une méthode connue est la 20 méthode descendante par propagation des contraintes. Dans cette méthode le système est décomposé sur plusieurs niveaux d'abstraction. Les niveaux d'abstraction du circuit incluent généralement (du plus abstrait vers le plus concret) sa définition fonctionnelle, sa définition système, la définition de ses blocs ou composants, et la définition d'une 25 architecture des blocs (par exemple le schéma d'un circuit). À chaque niveau hiérarchique, un modèle de simulation relie des données d'entrée (ses paramètres de conception) à des données de sortie (ses métriques de performances). Au niveau d'abstraction le plus élevé du système, le concepteur définit 30 des objectifs sur les métriques de performance (par exemple une valeur de bande passante, une surface de silicium occupée, une puissance maximum ou une consommation électrique) et des contraintes à respecter (par exemple des valeurs de tension ou d'intensité maximale). Le procédé de conception par propagation de contraintes permet de traduire ses performances souhaitées et 35 contraintes en objectifs et contraintes pour chacun des éléments du niveau hiérarchique inférieur. Les solutions qui respectent les objectifs des métriques de performances et les contraintes à chaque niveau d'abstraction sont obtenues par un processus d'optimisation. Lors de l'optimisation, des simulations répétées permettent de 40 rechercher les paramètres de conception de chacun des blocs permettant d'optimiser les performances du système. Un tel mode de fonctionnement présente cependant des inconvénients. Si l'étape d'optimisation des blocs permet rapidement d'anticiper la faisabilité d'un bloc aboutissant à des métriques de performances, la définition des paramètres de conception du bloc aboutissant aux performances souhaitées est 5 particulièrement fastidieuse et requiert un grand temps de calcul. En pratique, par manque de temps de calcul, les concepteurs doivent souvent limiter l'optimisation du fonctionnement du circuit car ils ne peuvent simuler qu'un nombre limité de paramètres de conception. De plus, la faisabilité d'un circuit avec des performances données ne peut être déterminée qu'après un temps de 10 simulation non négligeable impliquant les différents niveaux hiérarchiques. Une alternative connue à cette méthode est l'approche bottom-up (ou approche ascendante) basée sur la construction hiérarchique ascendante des espaces de faisabilité. Dans une telle approche, le concepteur sélectionne l'architecture des composants d'un système. Pour chacune des architectures un 15 cycle d'optimisation itératif permet de définir une courbe de compromis représentant les meilleures solutions, en considérant au moins deux métriques de performances concurrentes pour chaque bloc. Des première et deuxième métriques de performances d'un bloc sont dites concurrentes si des modifications de paramètres de conception du bloc en vue d'améliorer la 20 première métrique de performances induisent une détérioration d'une deuxième métrique de performances du bloc. Les blocs élémentaires et les courbes de compromis sont mémorisés dans une bibliothèque, puis peuvent être assemblés pour constituer un système plus complexe. Lors de la constitution d'un système, les points discrets des 25 courbes de compromis d'au moins deux composants sont combinés pour définir une nouvelle courbe de compromis de l'ensemble. La limitation dans cette approche se situe donc sur la capacité à représenter fidèlement les courbes de compromis d'un système à partir de celles des blocs le constituant. Par suite, il est donc possible de définir des 30 spécifications sur les métriques de performances au niveau du système qui se traduise par des solutions sous optimales pour les composants. L'invention vise à résoudre un ou plusieurs de ces inconvénients. L'invention porte ainsi sur un procédé de caractérisation d'un système destiné à être inclus dans un circuit électronique intégré, comprenant les étapes de : 35 -récupération de modèles de simulation numérique respectifs de premier et deuxième blocs, le modèle numérique de chacun des premier et deuxième blocs déterminant au moins deux métriques de performance concurrentes dudit bloc en fonction de paramètres de conception respectifs dudit bloc ; -récupération d'un modèle de simulation numérique du système 40 représentatif d'au moins une partie dudit circuit électronique et incluant lesdits premier et deuxième blocs, le modèle numérique dudit système déterminant au moins deux métriques de performance de sortie concurrentes en fonction desdites métriques de performance des premier et deuxième blocs ; -pour chacun des premier et deuxième blocs : -récupération desdites métriques de performance pour différentes valeurs de paramètres de conception dudit bloc ; -génération d'une première fonction représentative d'une frontière de Pareto et définissant une deuxième desdites métriques de performance dudit bloc en fonction d'une première desdites métriques de performance dudit bloc ; -détermination des domaines de validité respectifs desdites premières et 10 deuxième métriques de performance dudit bloc ; -génération automatique d'une deuxième fonction définissant une valeur des paramètres de conception dudit bloc en fonction d'une valeur de ladite première métrique de performance dudit bloc ; -appliquer, au modèle de simulation numérique du système, différentes 15 valeurs des première et deuxième métriques de performance des premier et deuxième blocs appartenant auxdits domaines de validité, de façon à générer des valeurs des métriques de performance de sortie du système ; -génération d'une fonction représentative d'une frontière de Pareto et définissant une deuxième desdites métriques de performance de sortie du 20 système en fonction d'une première desdites métriques de performance de sortie du système ; -génération d'une fonction définissant des valeurs des métriques de performance des blocs en fonction de la première métrique de performance de sortie du système. 25 Selon une variante, le procédé comprend : -la mémorisation de la première et de la deuxième fonction de chaque bloc dans un modèle prédictif de ce bloc ; -la mémorisation des fonctions générées pour le système dans un modèle prédictif du système. 30 Selon encore une variante, ladite première fonction d'un bloc est générée par une méthode d'interpolation entre des points appartenant à une frontière de Pareto dans l'espace des métriques de performance de ce bloc. Selon encore une autre variante, lesdits points appartenant à la frontière de Pareto et utilisés pour la méthode d'interpolation sont générés par une 35 méthode NBI. Selon une variante, le système modélise au moins une partie d'un circuit intégré hétérogène et ledit premier bloc modélise un composant du domaine physique. Selon une autre variante, lesdites valeurs des métriques de performance 40 pour différentes valeurs des paramètres de conception des premier et deuxième blocs sont calculées en exécutant des logiciels de simulation distincts pour les modèles de simulation numériques des premier et deuxième blocs. L'invention porte en outre sur un procédé de conception et d'optimisation d'un circuit électronique intégré dont au moins une partie est modélisée par un 5 système incluant des premier et deuxième blocs, comprenant les étapes de : -pour chacun des premier et deuxième blocs : -récupération d'une première fonction représentative d'une frontière de Pareto et définissant une deuxième métrique de performance dudit bloc en fonction d'une première métrique de performance dudit bloc, ladite première 10 métrique de performance du bloc étant concurrente de ladite deuxième métrique de performance ; -récupération d'une deuxième fonction définissant une valeur des paramètres de conception dudit bloc en fonction d'une valeur de ladite première métrique de performance dudit bloc ; 15 -récupération d'une troisième fonction représentative d'une frontière de Pareto et définissant une deuxième métrique de performance de sortie du système en fonction d'une première métrique de performance de sortie du système, lesdites première et deuxième métriques de performance de sortie étant concurrentes ; 20 -récupération d'une quatrième fonction définissant des valeurs des métriques de performance desdits blocs en fonction de la première métrique de performance de sortie du système ; -récupération de domaines de validité respectifs pour les métriques de performance de sortie du système ; 25 -à partir d'une valeur de la première métrique de performance de sortie du système appartenant à son domaine de validité, calcul automatique d'une valeur de la deuxième métrique de performance de sortie du système et calcul automatique d'une valeur des métriques de performance desdits blocs ; -à partir desdites valeurs des métriques de performance desdits blocs, 30 calcul automatique de valeurs des paramètres de conception desdits blocs. D'autres caractéristiques et avantages de l'invention ressortiront clairement de la description qui en est faite ci-après, à titre indicatif et nullement limitatif, en référence aux dessins annexés, dans lesquels : 35 -la figure 1 est une représentation d'un modèle de simulation numérique correspondant à un composant ; -la figure 2 est un exemple d'un domaine de faisabilité d'un composant ayant deux paramètres de conception et deux métriques de performance concurrentes. L'exemple illustre le domaine de faisabilité du composant et la 40 notion de frontière de Pareto ; -la figure 3 est un diagramme illustrant un procédé typique d'optimisation appliqué à la conception de circuits intégrés ; -la figure 4 est une représentation schématique d'un dispositif de conception et d'optimisation selon un exemple de mode de réalisation de 5 l'invention ; -la figure 5 est un exemple de décomposition hiérarchique ; -la figure 6 est une représentation schématique d'un procédé capable de caractériser la frontière de Pareto d'un composant par un ensemble de points discrets ; 10 -la figure 7 illustre une opération d'ajustement de courbe ayant pour but de reconstruire la frontière de Pareto par des fonctions mathématiques à partir d'un ensemble de points discrets de cette frontière ; -les figures 8A et 8B illustrent des exemples de domaines de validité V dans lesquels les fonctions mathématiques représentant la frontière de Pareto 15 peuvent être utilisés ; -la figure 9 est une représentation schématique du regroupement de fonctions mathématiques d'un bloc pour former le modèle prédictif du bloc ; -la figure 10 illustre de façon schématique le cycle de construction d'un modèle prédictif d'un bloc à partir d'un modèle de simulation ; 20 -la figure 11 illustre la procédure de synthèse faisant appel à un unique modèle prédictif ; -la figure 12 est un diagramme illustrant l'association d'un modèle de simulation d'un système à des modèles prédictifs de blocs, pour former un modèle composé de système ; 25 -la figure 13 illustre l'intégration d'un modèle de calcul composé dans un procédé d'optimisation usuel ; -la figure 14 est une représentation schématique de la construction d'un modèle prédictif à partir d'un modèle de calcul composé ; -la figure 15 illustre la procédure de synthèse hiérarchique dans un 30 modèle simplifié à deux niveaux hiérarchiques de modèles prédictifs ; -la figure 16 illustre la procédure de synthèse hiérarchique dans un modèle à trois niveaux hiérarchiques de modèles prédictifs ; -la figure 17 est une représentation schématique d'un exemple de système incluant plusieurs composants pouvant être modélisés ; 35 -les figures 18a à 18c illustrent des frontières de Pareto pour des performances concurrentes de différents composants de ce système ; -la figure 19 illustre une frontière de Pareto pour des performances concurrentes du système. 40 La figure 1 est une représentation d'un modèle de simulation numérique d'un élément à un niveau hiérarchique quelconque de la conception. Le modèle de simulation numérique 50 correspond à la modélisation d'un élément du circuit intégré à concevoir, à un niveau hiérarchique quelconque. Le modèle de simulation comprend une entrée x correspondant aux paramètres de conception et une sortie f correspondant aux métriques de performance de l'élément. Pour un vecteur donné de paramètres de conception x, un vecteur de métriques de performance f correspondant est obtenu par la simulation du modèle 50 en faisant appel à un logiciel de simulation adapté à son domaine, que ce soit le domaine physique (optique, mécanique...) ou électronique. Un tel logiciel de simulation peut par exemple être un des logiciels 801 à 805. Des logiciels tels que ceux distribués sous les références commerciales Simulink, Spectre, Comsol, Eldo ou Ansys peuvent notamment être utilisés. Eventuellement, la simulation du modèle 50 peut faire appel à des informations technologiques stockées dans une base de données 700. A titre d'exemple, cette base de données 700 peut contenir des informations sur différentes technologies de gravure. La figure 2 est une représentation de l'espace de faisabilité pour un élément avec deux paramètres de conception x1 et x2 et deux métriques de performance concurrentes f1 et f2. Des première et deuxième métriques de performances de l'élément sont dites concurrentes si des modifications de paramètres de conception de l'élément en vue d'améliorer la première métrique de performance induisent une détérioration d'une deuxième métrique de performances de l'élément. Pour toute vecteur (x1,x2) appartenant à l'espace de paramètres de conception faisables X de l'élément, il existe un vecteur (f1,f2) associé dans l'espace de performance faisable F. En considérant qu'on cherche à minimiser les valeurs des métriques f1 et f2 simultanément lors de la conception de l'élément, (tels comme le bruit et la puissance consommée), il est possible de définir une courbe de compromis 3F* pour laquelle l'amélioration d'une métrique de performance entraîne la détérioration d'une autre. Cette courbe de compromis est couramment appelée la frontière de Pareto. Dû au lien qu'existe entre les paramètres de conception et les métriques de performance de l'élément, il existe donc, un ensemble d'associations qui correspondent à la frontière de Pareto, comme illustré par les points A et Z ou la courbe de compromis 3F*. La figure 3 est une représentation d'un procédé général d'optimisation appliqué à la conception d'un élément d'un niveau hiérarchique. Le procédé général d'optimisation 200 comprend une fonction d'optimisation 110 et un modèle de simulation 50 correspondant à l'élément ou circuit à concevoir. La fonction d'optimisation 110 reçoit des exigences R et peut faire appel à des algorithmes de calcul et d'optimisation 901 et 902. Les algorithmes 901 et 902 sont par exemple disponibles dans des modules logiciels tels que celui distribué sous la référence commerciale Matlab. Par un processus itératif, la fonction d'optimisation 110 cherche la valeur des paramètres de conception x de l'élément pour lesquels le modèle de simulation 50 présente des métriques de 5 performance f qui satisfont les exigences R. De façon générale, les exigences R sont décrites sous la forme d'objectifs à maximiser ou à minimiser et sous la forme de contraintes. Les contraintes sont utilisées dans deux buts : garantir le fonctionnement correct de l'élément et limiter la recherche d'une solution de conception à une zone d'intérêt précise. Ce procédé général d'optimisation 200 10 permet donc de trouver la solution optimale pour la conception d'un circuit pour des exigences précises. Un tel procédé n'est à lui seul adapté que pour l'optimisation de circuits à un seul niveau hiérarchique. Cependant, ce procédé est peut être intégré dans un procédé plus complexe permettant la gestion de plusieurs niveaux 15 hiérarchiques, tel que cela est mis en oeuvre par l'invention. La figure 4 est une représentation schématique d'un dispositif 1 de conception et d'optimisation de circuits électroniques intégrés selon un exemple de mode de réalisation de l'invention. L'invention peut être mise en oeuvre par 20 exécution d'un logiciel sur un dispositif de calcul numérique 2, tel qu'une station de travail. Le dispositif de calcul 2 comporte de façon connue en soi une interface d'affichage 11 pour communiquer avec le concepteur du circuit électronique. Le dispositif 1 comporte une interface 12 permettant au concepteur 25 d'ajouter un modèle de simulation numérique 50 à une librairie ou base de données 500. Le modèle de simulation numérique 50 pourra par exemple définir un élément d'un des différents niveaux hiérarchiques du circuit à concevoir, comme sa définition fonctionnelle ou la définition d'un de ses blocs élémentaires. 30 Le dispositif 1 comporte également les interfaces 13 et 14. L'interface 13 permet au concepteur de définir une décomposition hiérarchique du circuit électronique à concevoir. Cette décomposition est décrite en faisant référence aux différents modèles de simulation présents dans la librairie 500, par exemple les modèles de simulation 501 à 503. Une fois une décomposition hiérarchique 35 définie dans l'interface 13 pour le circuit à concevoir, le concepteur utilise l'interface 14 pour exprimer des exigences R sur les métriques de performance de ce circuit. Par l'intermédiaire des informations collectées par les interfaces 13 et 14, le dispositif 1 met en oeuvre les opérations 20P et 20S afin de trouver une 40 solution de conception optimale du circuit intégré, cette solution devant répondre aux exigences R. Les opérations 20P et 20S détaillées par la suite visent à accélérer le processus de conception hiérarchique. L'opération 20P correspond à la construction ascendante dans la hiérarchie du circuit, d'un modèle dit prédictif pour chacun des éléments de ce circuit. L'opération 20S, appelée étape de synthèse, correspond à la résolution du problème de conception en utilisant les modèles prédictifs générés à l'opération 20P. Ces deux opérations 20P et 20S intègrent le procédé d'optimisation 200. De ce fait, lors de son utilisation, le dispositif 1 peut faire appel à différents algorithmes d'optimisation 901 à 902, faire appel à des logiciels de simulation 801 à 805 et, éventuellement, leur fournir des données technologiques provenant de la base de données 700. L'opération 20P mémorise des modèles prédictifs 601 à 603 dans une base de données 600, afin de sauvegarder les modèles prédictifs crées pour les différents éléments du circuit. Cette mémorisation a pour but d'accélérer la conception d'un autre circuit électronique intégré incluant, dans sa décomposition hiérarchique, des éléments disposant déjà d'un modèle prédictif. L'invention sera décrite dans son application à un système d'un niveau hiérarchique donné et incluant des premier et deuxièmes blocs d'un niveau hiérarchique inférieur. Comme illustré dans la figure 5, cet exemple comportera un système A qui peut être décomposé en des blocs B et C. A l'aide de l'invention, la conception du système A ainsi décomposé fera appel à trois modèles de simulation : un modèle de simulation 50A correspondant au système A et deux modèles de simulation 50B et 50C correspondant aux blocs B et C. Les modèles de simulations 50A, 50B et 50C permettent de déterminer au moins deux métriques de performance f1n,f2n concurrentes respectives, à partir d'au moins deux paramètres de conception x1n,x2n respectifs. Les méthodologies de conception hiérarchique imposent une correspondance entre les paramètres de conception du niveau supérieur et les métriques de performance du niveau directement inférieur. Dans l'exemple décrit, cela impose que {x1A,x2A} inclut {f1B,f2B,f1C,f2C}. Dans le procédé de conception décrit dans cette invention, l'opération 20P consiste à parcourir la hiérarchie du système A de façon ascendante et construire un modèle dit prédictif pour chaque modèle de simulation. Un modèle prédictif permet de retrouver l'ensemble des associations correspondant à la frontière de Pareto d'un élément, en fonction d'au moins une de ses métriques de performance. Le modèle prédictif est par exemple défini par un ensemble de fonctions mathématiques. Un exemple d'étapes mises en oeuvre pour la construction d'un modèle prédictif seront décrites dans l'ordre de leur exécution. La première étape 220 de l'opération 20P est l'identification d'un ensemble de points discrets faisant partie d'une frontière de Pareto dans l'espace des métriques de performance de l'élément. Des procédés réalisant une telle identification existent et peuvent être mis en oeuvre de façon connue 5 en soi de l'homme du métier. Tel qu'illustré par la figure 6, cette étape d'identification 220, fait généralement intervenir un procédé d'optimisation 200. Le procédé d'optimisation 200 est par exemple piloté par un algorithme 120 spécialisé pour la tâche d'identification des points d'une frontière de Pareto. Parmi les méthodes connues qui réalisent le procédé 220, il est possible de citer 10 la méthode NSGA (pour Non-dominated Sorting Genetic Algorithm en langue anglaise) ou la méthode NBI (pour Normal Boundary Intersection en langue anglaise). La méthode NBI est préférée pour la mise en oeuvre de l'invention grâce à sa capacité à identifier des points uniformément répartis sur la frontière de Pareto. 15 Le résultat de ce procédé est un ensemble de points représentant des relations entre des valeurs de paramètres de conception et/ou des valeurs de métriques de performance, et indiqués sur les diagrammes 221. Dans les diagrammes 221, les valeurs des paramètres de conception x1 et x2 et la valeur de la métrique de performance f2 sont illustrées en fonction de valeurs de la 20 métrique de performance f1. La deuxième étape 300 de l'opération 20P est représentée à la figure 7. L'étape 300 génère des fonctions continues à partir des points discrets de la frontière de Pareto illustrés dans le diagramme 221. La génération des fonctions continues est typiquement effectuée par une méthode d'ajustement de courbe 25 300, connue en soi de l'homme du métier. Parmi les méthodes d'ajustement de courbe, on peut notamment utiliser celles mettant en ouvre la régression polynomiale, l'interpolation linéaire ou encore l'ajustement par splines cubiques. On génère ainsi des fonctions mathématiques telles qu'illustrées sur les diagrammes 321. Les fonctions mathématiques déterminent les grandeurs x1, 30 x2 et f2 en fonction de la grandeur f1. Les fonctions mathématiques de l'exemple sont définies comme suit : x1=gx1(f1), x2=gx2(f1) et f2=gf2(f1). Pour l'utilisation ultérieure de ces fonctions, on définit un domaine de validité V pour la variable indépendante lors de leur création durant l'étape 300. En l'occurrence on définit le domaine de validité V de la métrique de 35 performance f1 utilisée comme variable indépendante. Ainsi, les valeurs calculées par x1=gx1(f1), x2=gx2(f1) et f2=gf2(f1) correspondent à la frontière de Pareto identifiée pour l'élément lors de l'étape 220. Les figures 8A et 8B fournissent des exemples de domaines de validité V V dans différents cas de figure. Dans la figure 8A, deux fonctions x1=gx1(f1) et 40 f2=gf2(f1) sont tracées en les superposant aux points et issus de l'étape d'identification de la frontière de Pareto. Les fonctions gx1 et gf2 ne servent à approximer la frontière de Pareto identifiée que dans l'intervalle de valeurs de fl compris entre une borne inférieure Lb et une borne supérieure Ub. Le domaine de validité V de ces fonctions est donc défini par l'intervalle [Lb,Ub]. De façon à compléter le descriptif de l'invention, la notion de domaine de 5 validité est également illustré à la figure 8B dans un cas où l'élément considéré comporte au moins trois métriques de performance concurrentes f1, f2, f3. Dans ce cas, les fonctions mathématiques produites par l'étape 300 font intervenir deux métriques de performance f1 et f2 en tant que variables indépendantes. Dans le diagramme de la figure 8B, la fonction f3=gf3(f1,f2) définit une surface. 10 Le domaine de validité V de cette fonction est l'enveloppe définie par les points échantillonnés lors de l'étape d'identification d'une frontière de Pareto. Pour ces cas avec au moins deux variables indépendantes, l'identification de l'enveloppe peut être faite par des méthodes connues telles que l'identification d'enveloppe convexe ou la détection de contour actif. 15 La troisième étape 400 du procédé de construction du modèle prédictif de l'élément est illustrée à la figure 9. Durant cette étape 400, on regroupe plusieurs fonctions mathématiques générées durant l'étape 300 précédente. Les fonctions permettant calculer les paramètres de conception x1 et x2 sont 20 regroupées dans le modèle prédictif 60 de l'élément, dit modèle prédictif des paramètres et noté gx(f1). Ce modèle prédictif 60 possède la variable indépendante f1 comme entrée, et les paramètres de conception x1 et x2 comme sorties. Le modèle prédictif 60 fournit également en sortie son domaine de validité V. De façon semblable les fonctions permettant de calculer les 25 métriques de performance, en l'occurrence f2=gf2(f1), sont regroupées dans le modèle prédictif 332, dit modèle prédictif des performances et noté gf(f1). Ce modèle a pour entrée la métrique de performance f1 et pour sortie les métriques de performance f1 et f2. En l'occurrence, la métrique de performance f1 (utilisée comme variable indépendante dans cet exemple) est transmise en sortie, de 30 sorte que les modèles prédictifs 331 et 332 ont pour sortie, respectivement, l'ensemble des paramètres de conception et l'ensemble des métriques de performance. Ces deux modèles prédictifs 331 et 332 sont regroupés dans le modèle prédictif 60. Le modèle prédictif 60 correspond au modèle prédictif de l'élément et permet de déterminer des associations de la frontière de Pareto de l'élément à partir de la valeur d'un sous ensemble de ses métriques de performance comme variables indépendantes, en l'occurrence f1. Les étapes 220, 300 et 400 aboutissent à la création d'un modèle prédictif pour un élément donné. La figure 10 illustre schématiquement ces 40 étapes donnant comme exemple la construction d'un modèle prédictif pour le bloc B, dont le modèle de simulation numérique 50B est disponible dans la bibliothèque de modèles de simulation 500. Le modèle prédictif 60B du bloc B est obtenu par l'exécution successive des procédés 220, 300 et 400 appliqués à son modèle de simulation 50B. Le modèle prédictif 60B généré est stocké dans la bibliothèque de modèles prédictifs 600. La figure 11 illustre l'utilisation d'un modèle prédictif pour accélérer la conception d'un bloc B ou d'un quelconque élément d'un niveau hiérarchique. A partir d'une exigence R sur une des métriques de performance concurrentes du bloc B, en l'occurrence une valeur de la métrique ft l'optimisation de la conception est résolue selon l'invention par une évaluation du modèle prédictif 60B. A contrario, selon l'état de la technique, on met usuellement en oeuvre une méthode itérative d'optimisation 200 utilisant un modèle de simulation 50B du composant B. Ainsi, pour un bloc complexe, une évaluation par le modèle prédictif 60 B est nettement moins coûteuse en temps de calcul qu'un processus d'optimisation itératif basé sur le modèle de simulation 50B. En outre, le domaine de validité V intégré au modèle prédictif 60B permet de conclure de façon immédiate si l'exigence R est réalisable ou irréalisable. Par ailleurs, un autre avantage de l'utilisation du modèle prédictif 60B du composant B est que son évaluation ne fait pas appel aux logiciels de simulation 801 à 805. A contrario, au moins un de ces logiciels de simulation 801 à 805 est nécessaire pour exécuter le modèle de simulation 50B du composant B. De ce fait, le modèle prédictif 60B est dit portable puisqu'il peut être exploité sur d'autres dispositifs de conception 1, sans que ceux-ci ne disposent d'un accès à un logiciel de simulation 801 à 805. Vu le temps de construction non négligeable d'un tel modèle prédictif 60B, il s'avère avantageux de mémoriser les modèles prédictifs générés dans la base de données 600, en vue de les réutiliser ultérieurement. Les modèles prédictifs mémorisés pourront être utilisés soit pour synthétiser le même bloc pour différentes exigences R selon la figure 11, soit pour la conception de systèmes plus complexes dans une approche hiérarchique, comme expliqué par la suite. En s'appuyant sur l'exemple de décomposition hiérarchique décrit auparavant en référence à la figure 5, on va maintenant décrire comment les modèles prédictifs générés peuvent être utilisés dans une méthode de conception hiérarchique. La figure 12 illustre un exemple d'association hiérarchique d'au moins 40 deux modèles prédictifs de blocs avec un modèle de simulation d'un système incluant ces blocs. Cet exemple fait appel aux modèles prédictifs 60B et 60C des blocs B et C construits au préalable et fait appel au modèle de simulation 50A du système A. Cette association définit un modèle de simulation numérique composé 130. Ce modèle composé 130 présente une sortie V regroupant les domaines de validité VB et VC des modèles prédictifs 60B et 60C respectivement, et une entré x=[f1B,f1C] correspondant aux métriques de performance f1 B et f1C utilisées comme entrées des modèles 60B et 60C respectivement. Pour toute valeur d'entrée x=[f1B,f1C] qui respecte le domaine de validité V=[VB,VC], ce modèle 130 évalue dans un premier temps les modèles prédictifs 60B et 60C et obtient des valeurs optimales des métriques de performance et paramètres de conception pour les deux blocs B et C. En l'occurrence, ces valeurs optimales sont fB et xB pour le bloc B et fC et xC pour le bloc C. Dans un second temps, le modèle composé 130 fait appel à la relation imposée par la définition hiérarchique entre les blocs B et C et le système A, c'est à dire xA=[fB,fC]. Le modèle composé 130 peut ainsi faire un calcul avec le modèle de simulation 50A et ainsi obtenir un ensemble de métriques de performance fA du système. Le résultat du calcul de ce modèle composé 130 est l'ensemble de métriques de performance fA et des paramètres de conception xA du système A, ainsi que l'ensemble des métriques de performance fB et fC et l'ensemble des paramètres de conception xB et xC des blocs B et C qu'il inclut. L'intérêt du modèle composé 130 réside dans le fait que l'utilisation des modèles prédictifs en amont de sa mise en oeuvre pour le calcul permet de limiter les valeurs possibles de xA=[fB,fC] à des valeurs des métriques de performance fB et fC qui appartiennent à la frontière de Pareto des composants B et C respectivement et sont, par définition faisables et optimales. Cependant, restreindre les valeurs possibles de xA à des valeurs optimales de fB et fC ne suffit pas à garantir que la valeur des métriques de performance fA appartiennent à la frontière de Pareto du système A. Un procédé d'optimisation peut être appliqué au modèle composé 130 afin de répondre au problème d'optimisation de la conception du système A. La mise en oeuvre d'un tel procédé d'optimisation appliqué à un modèle de calcul composé 130 est illustré à la figure 13. Ce procédé présente une très forte similarité avec le procédé d'optimisation déjà présenté en référence aux figures 6 et 7. Le modèle composé 130 n'est présenté qu'avec son entrée x, sa sortie V et sa sortie fA, les autres sorties étant facultatives pour le procédé d'optimisation en question. Le procédé de la figure 13 diffère des procédés des figures 6 et 7 en ce que le modèle composé 130 fournit son domaine de validité à la fonction d'optimisation 110, de façon à contraindre les valeurs de x au domaine de validité V. En pratique, la fonction d'optimisation 110 ajoute la contrainte imposée par V aux exigences R et les traite sans distinction par des mécanismes de gestion de contraintes connus en soi. L'optimisation étant très similaire à l'optimisation appliquée à un modèle de simulation d'un élément, le modèle de calcul composé 130 peut être exploité 5 de la même manière qu'un modèle de simulation 50 dans tous ses aspects. Le modèle composé 130, comme le modèle de simulation 50, possède une entrée correspondant à des paramètres de conception et une sortie correspondant à des métriques de performance. Tous les concepts comprenant les notions d'espace de paramètres, espace de performances, optimisation et frontière de 10 Pareto sont applicables au modèle composé 130. La figure 14 illustre comment des techniques de construction de modèle prédictif similaires à celles de la figure 10 peuvent être étendues à un modèle de calcul composé. Le modèle composé 130ABC est réalisé en associant le modèle de simulation 50A du système A issu de la librairie de modèles de 15 simulation 500 avec deux modèles prédictifs 60A et 60B de ses blocs constituants B et C issus de la librairie de modèles prédictifs 600. En faisant appel aux procédés 220, 300 et 400 il est possible d'obtenir un modèle prédictif 60ABC pour le système A incluant ses sous blocs B et C selon la décomposition hiérarchique utilisée dans cet exemple. Un tel modèle prédictif 60ABC créé à 20 partir d'un modèle composé 130ABC peut comporter un indice ABC pour démarquer, de façon unique, la décomposition hiérarchique du système A à laquelle il correspond. Cette information sur la décomposition hiérarchique utilisée, en l'occurrence ABC, est mémorisée dans le modèle prédictif 60ABC lorsque celui-ci est mémorisé dans la base de données 600. Bien entendu, une 25 fois que le modèle 60ABC est mémorisé dans la librairie 600, ce modèle peut être inclus pour la création de circuits encore plus complexes et de niveau supérieur dans la modélisation hiérarchique. Après avoir détaillé la construction des modèles prédictifs par une 30 méthodologie hiérarchique ascendante, on va maintenant décrire l'utilisation de ces modèles prédictifs pour réaliser la synthèse d'un système complexe par une méthodologie descendante, ce qui correspond à la procédure 20S déjà mentionnée. La figure 15 illustre l'opération 20S pour l'exemple du système A incluant les blocs A et B. A partir d'une exigence R, par exemple une valeur de 35 la métrique de performance f1A à atteindre, le modèle prédictif 60ABC est mis on oeuvre pour un calcul et permet d'obtenir la valeur des métriques de performance optimales f1A et f2A au niveau du système A, ainsi que les paramètres de conception x1A et x2A au niveau du système A. Par la relation imposée par la relation hiérarchique, les métriques de performance des sous 40 blocs B et C ont une relation directe avec les paramètres de conception du système A. Dans l'exemple donné il est défini que cette relation est x1A=f1B et x2A=f1C. On peut ensuite mettre en oeuvre les calculs avec les modèles prédictifs 60B et 60C des blocs B et C du système A, et ainsi obtenir ces métriques de performance optimales f1 B, f2B pour le bloc B et f1C, f1 B pour le bloc C, ainsi que les paramètres de conception x1 B, x2B pour le bloc B et x1C, x2C pour le bloc C. En parcourant la hiérarchie des modèles prédictifs de façon descendante, la procédure 20S permet de retrouver le dimensionnement optimal de tous les composants à chaque niveau hiérarchique du circuit électronique intégré à concevoir. La figure 16 est dérivée de la figure 15 et illustre que la même opération 20S peut être appliquée pour un système à un nombre de niveaux hiérarchiques supérieur, en l'occurrence trois. Dans cet exemple, le système A dispose d'un modèle prédictif 60ABCDE et est décomposé en blocs B (modèle prédictif 60B) et C. Le bloc C dispose d'un modèle prédictif 60DE et est décomposé en sous blocs D et E ayant des modèles prédictifs 60D et 60E. La figure 17 est une représentation schématique d'un exemple de système 3 qui peut être décomposé en plusieurs blocs 32 à 36. Le système 3 correspond à un émetteur/récepteur laser. Le système 3 est ainsi décomposé en une commande 32, un émetteur laser 33, un milieu de transmission 34, un récepteur laser 35 et un amplificateur 36. Le système 3 se décompose en plusieurs domaines : un domaine électrique illustré par 3e, et un domaine physique 3p. En l'occurrence, un signal laser est utilisé dans les blocs 33, 34 et 35. Pour simplifier, on suppose que les métriques de performances 25 concurrentes spécifiées pour le système 3 sont seulement un taux d'erreur et un débit de données. De même, seulement deux métriques de performances concurrentes ont été sélectionnées pour les blocs 32, 33 et 36. Le modèle prédictif du système 3 est basé sur des modèles prédictifs des blocs 32, 33 et 36, dont le concepteur estime que les métriques de 30 performances sont prépondérantes pour déterminer les métriques de performance du système 3. Les métriques de performances sélectionnées pour la commande 32 sont respectivement le courant de polarisation et le courant de modulation. Le diagramme de la figure 18a représente ainsi la frontière de Pareto dans l'espace 35 de performances de la commande 32, le courant de modulation étant illustré en fonction du courant de polarisation. Le modèle de simulation numérique de ce bloc utilise un premier module logiciel pour établir son modèle prédictif. Les métriques de performances sélectionnées pour l'émetteur 33 sont le courant de seuil et le rendement de transmission. Le diagramme de la figure 40 18b représente ainsi la frontière de Pareto dans l'espace de performances de l'émetteur 33, le rendement étant illustré en fonction du courant de seuil. Le modèle de simulation numérique de ce bloc utilise un deuxième module logiciel pour établir son modèle prédictif. Les métriques de performances sélectionnées pour l'amplificateur 36 sont la bande passante et le gain de transimpédance. Le diagramme de la figure 18c représente ainsi la frontière de Pareto dans l'espace de performances de l'émetteur 36, le gain étant illustré en fonction de la bande passante. Le modèle de simulation numérique de ce bloc utilise un troisième module logiciel pour établir son modèle prédictif. Les fonctions définissant les frontières de Pareto sont déterminées pour 10 ce bloc. De même, les domaines de faisabilité des métriques de performance de chacun des blocs 32, 33 et 36 sont déterminés. Le diagramme de la figure 19 représente la frontière de Pareto déterminée dans l'espace de performances du système 3 (taux d'erreur et débit de données) à partir des modèles prédictifs des différents blocs 32, 33 et 36, 15 ainsi que des domaines de validité des métriques de ces blocs. Bien que l'invention ait été décrite dans un souci de clarté pour des exemples simplifiés où chaque bloc ne présente que deux métriques de performances concurrentes et où chaque système ne présente que deux 20 métriques de performances concurrentes, l'invention s'applique bien entendu également à des blocs et systèmes dans lesquels les blocs et/ou le système présentent au moins trois métriques de performances concurrentes. REVENDICATIONS1. Procédé de caractérisation d'un système destiné à être inclus dans un circuit électronique intégré, comprenant les étapes de : -récupération de modèles de simulation numérique (50B, 50C) respectifs de premier et deuxième blocs, le modèle numérique de chacun des premier et deuxième blocs déterminant au moins deux métriques de performance concurrentes (f1B, f2B, f1C, f2C) dudit bloc en fonction de paramètres de conception (X1B, X2B, X1C, X2C) respectifs dudit bloc ; -récupération d'un modèle de simulation numérique du système (50A) représentatif d'au moins une partie dudit circuit électronique et incluant lesdits premier et deuxième blocs, le modèle numérique (50A) dudit système déterminant au moins deux métriques de performance de sortie (f1a, f2a) concurrentes en fonction desdites métriques de performance des premier et deuxième blocs ; -pour chacun des premier et deuxième blocs : -récupération desdites métriques de performance (f1B, f2B, f1C, f2C) pour différentes valeurs de paramètres de conception (X1B, X2B, X1C, X2C) dudit bloc ; -génération d'une première fonction représentative d'une frontière de Pareto et définissant une deuxième desdites métriques de performance dudit bloc en fonction d'une première desdites métriques de performance dudit bloc ; -détermination des domaines de validité respectifs desdites premières et deuxième métriques de performance dudit bloc ; -génération automatique d'une deuxième fonction définissant une valeur des paramètres de conception dudit bloc en fonction d'une valeur de ladite première métrique de performance dudit bloc ; -appliquer, au modèle de simulation numérique du système (50A), différentes valeurs des première et deuxième métriques de performance des premier et deuxième blocs appartenant auxdits domaines de validité, de façon à générer des valeurs des métriques de performance de sortie du système ; -génération d'une fonction représentative d'une frontière de Pareto et définissant une deuxième desdites métriques de performance de sortie du système en fonction d'une première desdites métriques de performance de sortie du système ; -génération d'une fonction définissant des valeurs des métriques de performance des blocs en fonction de la première métrique de performance de sortie du système. 2. Procédé selon la revendication 1, comprenant :-la mémorisation de la première et de la deuxième fonction (gf, gx) de chaque bloc (B) dans un modèle prédictif (60B) de ce bloc ; -la mémorisation des fonctions générées (gf, gx) pour le système (A) dans un modèle prédictif (60A) du système. 3. Procédé selon la revendication 1 ou 2, dans lequel ladite première fonction d'un bloc (gf) est générée par une méthode d'interpolation entre des points appartenant à une frontière de Pareto dans l'espace des métriques de performance de ce bloc. 4. Procédé selon l'une quelconque des revendications précédentes, dans lequel lesdits points appartenant à la frontière de Pareto et utilisés pour la méthode d'interpolation sont générés par une méthode NBI. 15 5. Procédé selon l'une quelconque des revendications précédentes, dans lequel le système (A) modélise au moins une partie d'un circuit intégré hétérogène (3) et dans lequel ledit premier bloc modélise un composant (33, 35) du domaine physique. 20 6. Procédé selon l'une quelconque des revendications précédentes, dans lequel lesdites valeurs des métriques de performance (f1B, f2B, f1C, f2C) pour différentes valeurs des paramètres de conception (X1B, X2B, X1C, X2C) des premier et deuxième blocs (B, C) sont calculées en exécutant des logiciels de simulation distincts (801, 802, 803 , 804, 805) pour les modèles de simulation 25 numériques (50B, 50C) des premier et deuxième blocs. 7. Procédé de conception et d'optimisation d'un circuit électronique intégré dont au moins une partie est modélisée par un système (A) incluant des premier et deuxième blocs (B, C), comprenant les étapes de : 30 -pour chacun des premier et deuxième blocs : -récupération d'une première fonction (gf2) représentative d'une frontière de Pareto et définissant une deuxième métrique de performance (f2B, f2C) dudit bloc en fonction d'une première métrique de performance (f1B, f1C) dudit bloc, ladite première métrique de performance du bloc étant 35 concurrente de ladite deuxième métrique de performance ; -récupération d'une deuxième fonction (gx) définissant une valeur des paramètres de conception dudit bloc en fonction d'une valeur de ladite première métrique de performance (f1B, f1C) dudit bloc ; -récupération d'une troisième fonction représentative d'une frontière de 40 Pareto et définissant une deuxième métrique de performance de sortie (f2A) du système en fonction d'une première métrique de performance de sortie 10(f1A) du système, lesdites première et deuxième métriques de performance de sortie étant concurrentes ; -récupération d'une quatrième fonction définissant des valeurs des métriques de performance desdits blocs (f1B, f1C, f2B, f2C) en fonction de la première métrique de performance de sortie du système ; -récupération de domaines de validité (V) respectifs pour les métriques de performance de sortie du système ; -à partir d'une valeur de la première métrique de performance de sortie (f1A) du système appartenant à son domaine de validité, calcul automatique d'une valeur de la deuxième métrique de performance de sortie du système et calcul automatique d'une valeur des métriques de performance desdits blocs (f1B, f1C, f2B, f2C) ; -à partir desdites valeurs des métriques de performance (MB, f1C, f2B, f2C) desdits blocs, calcul automatique de valeurs des paramètres de conception (X1B, X2B, X1C, X2C) desdits blocs.