FR 3003371 A1 20140919 FR 1352238 A 20130313 359 -BULL 04135 PROCÉDÉ DE DÉTERMINATION AUTOMATIQUE D'UN PLAN D'INTERCONNEXION D'UNITÉS DE TRAITEMENT D'UN ASIC L'invention concerne les composants électroniques à circuits spécialisés (ou ASICs), et plus précisément la conception de tels composants électroniques. Comme le sait l'homme de l'art, un ASIC est un composant électronique constitué d'un ensemble d'unités de traitements (ou blocs fonctionnels) interconnecté(e)s entre elles (eux) par des liens physiques, parfois appelés fils ou pistes et généralement définis dans des couches métalliques d'une structure multicouches, et devant fonctionner à une fréquence donnée. En raison de leur technique de fabrication, les liens physiques ne peuvent pas dépasser une longueur maximale qui est principalement fonction de la fréquence de fonctionnement de leur ASIC et des paramètres physiques qui sont associés à la finesse de gravure utilisée. Lorsque la distance, qui sépare deux unités de traitement devant être interconnectées par un lien physique, est strictement supérieure à la longueur maximale, on est contraint de subdiviser ce lien physique en au moins deux sous-liens ayant chacun une longueur strictement inférieure à cette longueur maximale et couplés entre eux par un registre dit « relais » appartenant à l'une des nombreuses zones (ou banques) de registres de l'ASIC. L'utilisation optimale des différents registres relais des différentes zones (ou banques) s'avère être une tâche particulièrement complexe et fastidieuse du fait : - du grand nombre de liens physiques (généralement plusieurs milliers) devant être définis dans un ASIC, - de la possibilité d'évolution de la longueur maximale des liens physiques pendant la phase de conception d'un ASIC (par exemple du fait d'un changement de fréquence de fonctionnement), - de la possibilité qu'il faille subdiviser certains liens physiques en au moins trois sous-liens dont l'interconnexion nécessite au moins deux registres relais, - de l'interdépendance pouvant exister entre plusieurs liens physiques (comme par exemple dans un bus de données lorsque l'un des liens physiques est coupé ou relayé et que d'autres doivent l'être aussi, même si leur longueur est inférieure à la longueur maximale, afin de respecter les contraintes de conception logique), et - de la nécessité de minimiser le nombre de registres relais des liens 1 o physiques subdivisés en sous-liens en raison de la latence introduite par chaque registre relais. En outre, pour que le plan complet d'interconnexion puisse être mis en oeuvre physiquement, il est préférable qu'il tienne compte de critères d'optimisation, par exemple relatifs à la distribution des longueurs de tous les 15 liens physiques faisant l'objet d'au moins un relais ou à la longueur moyenne de ces liens physiques ou au nombre de liens physiques ou sous-liens ayant une longueur proche de la longueur maximale ou encore à une déviation standard. Aujourd'hui, la détermination d'un plan complet d'interconnexion d'un 20 ASIC consiste : - à identifier de façon automatisée chaque lien physique dont la longueur est supérieure à la longueur maximale, et l'ensemble des inter-indépendances entre liens physiques, - puis, pour chaque lien physique, à déterminer de façon non automatisée la 25 meilleure banque de registres de relais (c'est-à-dire la banque de registres de relais comportant le registre relais le plus proche de l'orthocentre entre ses points de connexion à ses unités de traitement source et destinataire(s)), et, si tous les registres de relais de cette plus optimale des banques sont déjà affectés, à affecter l'un des registres relais non encore 30 affectés de la meilleure banque encore disponible. Hélas, ce mode de détermination présente au moins un inconvénient majeur. En effet, une fois qu'un registre de relais a été affecté à un lien physique, cette affectation ne peut pas être remise en cause et donc influence (ou contraint) toutes les affectations suivantes, ce qui peut conduire à une situation bloquante si lors d'une nième itération un lien physique possède une solution unique et que tous les registres relais de la banque de registres de cette solution unique ont déjà été affectés. L'invention a donc pour but d'améliorer la situation, et notamment de permettre une automatisation du choix des liens physiques d'un ASIC devant faire l'objet d'au moins un relais via un registre relais, et du choix des registres relais affectés à chacun de ces liens physiques. 1 o Elle propose notamment à cet effet un procédé dédié à la détermination d'un plan d'interconnexion entre des unités de traitement d'un composant électronique (ou ASIC) disposant de banques de registres relais, et comprenant : - une étape (i) dans laquelle on détermine des premiers liens physiques 15 propres à interconnecter des unités de traitement et présentant une longueur supérieure à une longueur maximale, puis, pour chacun de ces premiers liens physiques et pour des seconds liens physiques présentant une interdépendance avec l'un de ces premiers liens physiques, on détermine un premier ensemble de banque(s) propre(s) à servir de relais 20 d'interconnexion, et - une étape (ii) dans laquelle on alimente un algorithme de type méta-heuristique avec ces premiers ensembles et des définitions des premiers et seconds liens physiques pour déterminer pour chacun de ces derniers, en fonction d'au moins un premier critère (d'optimisation) choisi, un second 25 ensemble de registre(s) relais appartenant aux banques de son premier ensemble. On comprendra qu'un premier ensemble comprend toutes les banques qui peuvent potentiellement relayer un (premier ou second) lien physique, tandis qu'un second ensemble comprend les registres relais qui ont 30 été finalement sélectionnés par l'algorithme méta-heuristique parmi les registres des banques du premier ensemble d'un lien physique pour assurer dans l'ASIC le relais de ce dernier. Par conséquent le plan d'interconnexion d'un ASIC, qui est déterminé au moyen du procédé, comprend tous les seconds ensembles des différents liens physiques à relayer. Le procédé selon l'invention peut comporter d'autres caractéristiques qui peuvent être prises séparément ou en combinaison, et notamment : - dans l'étape (i) on peut classer les banques de chaque premier ensemble de chacun des premiers et seconds liens physiques en fonction d'au moins un second critère choisi, et dans l'étape (ii) on peut prendre en compte le classement des banques de ces premiers ensembles pour déterminer les seconds ensembles ; > à la fin de l'étape (i) on peut sélectionner parmi les banques des premiers la ensembles classés de chacun des premiers et seconds liens physiques celles qui ont été classées en première position afin de disposer des meilleures banques, puis on peut déterminer s'il existe pour chacun des premiers et seconds liens physiques un second ensemble de registre(s) relais appartenant respectivement aux meilleures banques, et dans la 15 négative on effectue l'étape (ii) ; - dans l'étape (i) on peut déterminer pour chaque premier ou second lien physique un premier ensemble de banque(s) parmi un sous-ensemble choisi desdites banques ; - chaque premier critère (d'optimisation) peut être choisi parmi (au moins) 20 une occupation sensiblement homogène des banques, une occupation maximale des banques, une longueur moyenne de sous-liens, un nombre minimal de sous-liens ayant une longueur proche de la longueur maximale, et une déviation standard ; - l'algorithme de type méta-heuristique peut être choisi parmi (au moins) un 25 algorithme dit « génétique », un algorithme dit « de recuit simulé », un algorithme dit « de colonies de fourmis », et une combinaison d'au moins deux des algorithmes de ce groupe ; > l'algorithme de type méta-heuristique peut être un algorithme génétique comportant au moins un opérateur choisi parmi (au moins) : un opérateur 30 dit de sélection, un opérateur dit de croisement, un opérateur dit de mutation et un opérateur dit de remplacement. Dans ce cas, dans l'étape (ii) on peut utiliser de façon itérative chaque opérateur de manière à déterminer chacun des seconds ensembles ; - dans l'étape (ii) on peut effectuer les itérations un nombre de fois choisi et/ou lorsque l'on a trouvé des solutions satisfaisantes de registres relais pour chaque lien physique à relayer ; - on peut associer à l'algorithme génétique une fonction de sélection qui est propre à déterminer chaque second ensemble en fonction de chaque premier critère (d'optimisation) choisi associé à un coefficient de pondération choisi ; - chaque définition associée à un premier ou second lien physique peut comprendre au moins une position d'un point de connexion à une unité de traitement source, et une position d'un point de connexion à une unité de traitement destinataire. L'invention propose également un produit programme d'ordinateur comprenant un jeu d'instructions qui, lorsqu'il est exécuté par des moyens de traitement, est propre à mettre en oeuvre un procédé du type de celui présenté ci-avant pour déterminer un plan d'interconnexion entre des unités de traitement d'un composant électronique disposant de banques de registres relais. L'invention propose également un calculateur, comportant des moyens de traitement et un produit programme d'ordinateur du type de celui présenté ci-avant et comprenant un jeu d'instructions propre à être exécuté par ces moyens de traitement. D'autres caractéristiques et avantages de l'invention apparaîtront à l'examen de la description détaillée ci-après, et du dessin annexé, sur lequel l'unique figure illustre de façon schématique et fonctionnelle un exemple de 25 réalisation d'un composant électronique de type ASIC dont le plan d'interconnexion peut être déterminé au moyen d'un procédé selon l'invention. L'invention a notamment pour objet de proposer un procédé destiné à permettre la détermination d'un plan d'interconnexion entre des unités de traitement UTi d'un composant électronique à circuits spécialisés (ou ASIC) 30 CE. On a schématiquement illustré sur l'unique figure un exemple non limitatif d'ASIC CE concerné par l'invention. Dans cet exemple, l'ASIC CE comprend quatorze unités de traitement (ou blocs fonctionnels) UT1 à UT14 (i = 1 à 14) qui, pour certains au moins d'entre eux, disposent de banques B de registres. On notera que le nombre d'unités de traitement UTi d'un ASIC CE peut prendre n'importe quelle valeur supérieure ou égale à trois (3). Dans l'exemple non limitatif illustré sur l'unique figure, seules les banques B des unités de traitement UT10, UT11, UT13 et UT14 sont représentées. Mais d'autres unités de traitement UTi pourraient en comporter. Chaque banque B comprend une multiplicité de registres qui définissent chacun, potentiellement, une ressource de relais pour un lien 1 o physique Lii' destiné à assurer l'interconnexion entre une unité de traitement source UTi et au moins une unité de traitement destinataire UTi' (avec i' # i). On entend ici par « lien physique » un élément physique assurant l'interconnexion entre au moins deux unités de traitement UTi et UTi'. Il pourra s'agir d'un fil ou d'une piste, éventuellement subdivisé(e) en au moins deux 15 sous-liens, généralement défini(e) dans l'une au moins des couches métalliques d'une structure multicouches, et devant fonctionner à une fréquence donnée. Comme indiqué précédemment, l'invention propose notamment un procédé permettant de déterminer un plan d'interconnexion d'un ASIC CE. On 20 entend ici par « plan d'interconnexion » tous les liens physiques Lii' qui assurent des interconnexions entre les différentes unités de traitement UTi d'un ASIC CE. Ce procédé, qui comprend des première (i) et seconde (ii) étapes, peut être mis en oeuvre par un dispositif de traitement faisant partie d'un 25 calculateur (par exemple un ordinateur ou un micro-ordinateur). Ce dispositif de traitement peut être réalisé sous la forme de modules logiciels (ou informatiques, ou encore « software »). Il constitue alors un produit programme d'ordinateur comprenant un jeu d'instructions qui, lorsqu'il est exécuté par des moyens de traitement d'un calculateur, est propre à mettre en oeuvre le 30 procédé selon l'invention. En variante, le dispositif de traitement peut être réalisé sous la forme d'une combinaison de modules logiciels et de circuits électroniques. La première étape (i), du procédé selon l'invention, consiste, au moins, à déterminer de façon automatisée des premiers liens physiques Lii' propres à interconnecter au moins deux unités de traitement UTi et UTi' et présentant une longueur supérieure à une longueur maximale Lmax, puis à déterminer pour chacun de ces premiers liens physiques Lii' et pour des seconds liens physiques présentant une interdépendance avec l'un de ces premiers liens physiques Lii', un premier ensemble El de banque(s) B (de registres relais) propre(s) à servir de relais d'interconnexion. On entend ici par « premier lien physique » un lien physique Lii' devant 1 o impérativement être subdivisé en au moins deux sous-liens Lii'k, du fait que la distance séparant les points de connexion des unités de traitement source UTi et destinataire(s) UTi' qu'il doit interconnecter est strictement supérieure à une longueur maximale Lmax, qui est principalement fonction de la fréquence de fonctionnement de l'ASIC CE et des paramètres physiques qui sont associés à 15 la finesse de gravure utilisée. Par ailleurs, on entend ici par « second lien physique » un lien physique qui doit interconnecter des points de connexion d'unités de traitement source UTi et destinataire(s) UTi' qui sont séparés d'une distance inférieure ou égale à la longueur maximale Lmax, mais qui doivent malgré tout 20 être subdivisés en au moins deux sous-liens du fait qu'ils présentent une interdépendance avec au moins un premier lien physique Lii'. On comprendra en effet que des liens physiques interdépendants doivent transmettre des informations (ou données) de manière synchrone pour permettre un fonctionnement selon une fréquence donnée, ce qui, lorsque certains font 25 l'objet d'un relais via au moins un registre relais, impose que les autres fassent également l'objet du même nombre de relais. La longueur maximale Lmax, les positions des différentes unités de traitement UTi par rapport à un repère donné, et les positions par rapport à ce repère des différentes entrées/sorties (ou ports) des unités de traitement UTi 30 où sont connectées les extrémités des liens physiques sont des paramètres d'entrée du procédé (ou du logiciel mettant en oeuvre ce dernier). On notera que lorsqu'un premier Lii' ou second lien physique doit être subdivisé en N sous-liens, son premier ensemble El comprend au moins N-1 banques B. Cela signifie que chacune des banques B de ce premier ensemble El constitue un candidat potentiel pour relayer deux des sous-liens d'un lien physique. Par exemple, lorsque N est égal à deux pour un lien physique donné (par exemple L14), le premier ensemble El associé à ce dernier (L14) peut comporter une ou plusieurs désignations de banques B propres à assurer l'unique relais entre les deux sous-liens L141 et L142 de ce lien physique L14. Lorsque N est égal à trois pour un lien physique donné (par exemple L17), le premier ensemble El associé à ce dernier (L17) peut comporter une ou plusieurs désignations de banques B propres à assurer le premier relais entre les deux premiers sous-liens L171 et L172 de ce lien physique L17, et une ou plusieurs désignations de banques B propres à assurer le second relais entre les deux derniers sous-liens L172 et L173 de ce lien physique L17. Sur l'unique figure, chaque flèche en pointillés matérialise le trajet le plus direct d'un lien physique (ici L14 ou L17) entre le point de connexion de son unité de traitement source (ici UT1) et le point de connexion de son unité de traitement destinataire (ici UT4 ou UT7), lorsque ce lien physique présente une longueur supérieure à Lmax, et donc lorsqu'il doit être subdivisé en sous-liens. On notera également que dans cette première étape (i), on peut éventuellement classer les banques B du premier ensemble El de chacun des premiers Lii' et seconds liens physiques en fonction d'au moins un (second) critère choisi. Cela permet en effet de faciliter la réalisation de la seconde étape (ii) décrite plus loin, ou bien de réaliser une phase supplémentaire en fin de première étape (i). Cette phase supplémentaire consiste à sélectionner parmi les banques B du premier ensemble El classé de chacun des premiers Lii' et seconds liens physiques de celle(s) qui a (ont) été classée(s) en première position (et donc considérée(s) comme le(s) meilleure(s)) afin de disposer des meilleurs banques B, puis à déterminer s'il existe pour chacun des premiers Lii' et seconds liens physiques un second ensemble E2 de registre(s) relais appartenant respectivement aux meilleures banques B de son premier ensemble El . On comprendra que si la meilleure des solutions comportant toutes les meilleures banques B des premiers ensembles El permet de déterminer directement tous les registres relais des seconds ensembles E2, il n'est pas nécessaire d'effectuer la seconde étape (ii). Mais dans la pratique ce cas s'avère exceptionnel lorsque l'on est en présence d'un grand nombre de liens physiques. Parmi les seconds critères de classement possibles, on peut notamment citer un positionnement d'une banque B sensiblement à la moitié de la longueur du lien concerné dans le cas d'un unique relais ou sensiblement au tiers de la longueur du lien concerné dans le cas de deux relais, ou bien un positionnement d'une banque B de nature à permettre un relais pour un sous-lien d'une longueur voisine de Lmax par valeur inférieure. On notera également qu'afin de simplifier les traitements lors de la première étape (i), on peut éventuellement déterminer pour chaque premier Lii' ou second lien physique au moins un premier ensemble El de banque(s) B parmi un sous-ensemble choisi des banques B. La seconde étape (ii), du procédé selon l'invention, consiste au moins à alimenter un algorithme de type méta-heuristique avec les premiers ensembles El (déterminés lors de la première étape (i)) et avec des définitions des premiers Lii' et seconds liens physiques, afin de déterminer pour chacun de ces derniers liens physiques, en fonction d'au moins un premier critère choisi, un second ensemble E2 de registre(s) relais appartenant respectivement aux banques B de son premier ensemble El. En d'autres termes, si l'on a déterminé un premier ensemble El pour un premier Lii' ou second lien physique, le second ensemble E2 de ce dernier ne comprendra que des registres relais appartenant à des banques B de ce premier ensemble El. Par exemple, et comme illustré non limitativement sur l'unique figure, dans le cas du premier lien physique L14, le premier ensemble El associé comporte quatre banques B, matérialisées par des étoiles et faisant partie d'une première partie (supérieure gauche) de la onzième unité de traitement UT11. Ces quatre banques B offrent alors chacune des registres qui constituent des candidats potentiels pour relayer le premier sous-lien L141, et donc le second ensemble E2 ne sera constitué que de l'un des registres relais de l'une de ces quatre banques B. Ici c'est un registre de la quatrième banque B qui a été déterminé pour assurer le relais entre les premier L141 et second L142 sous-liens du premier lien physique L14. Egalement comme illustré non limitativement sur l'unique figure, dans le cas du second lien physique L17, le premier ensemble El associé comporte : - un premier groupe de quatre banques B, matérialisées par des étoiles et faisant partie d'une première partie (supérieure droite) de la onzième unité de traitement UT11, - un deuxième groupe de quatre banques B, matérialisées par des étoiles et faisant partie d'une première partie (supérieure) de la treizième unité de traitement UT13, - un troisième groupe de quatre banques B, matérialisées par des étoiles et faisant partie d'une première partie (supérieure gauche) de la dixième unité de traitement UT10, - un quatrième groupe de quatre banques B, matérialisées par des étoiles et faisant partie d'une première partie (supérieure) de la quatorzième unité de traitement UT14, et - un cinquième groupe de quatre banques B, matérialisées par des étoiles et faisant partie d'une seconde partie (inférieure gauche) de la dixième unité de traitement UT10. Les banques B des premier, deuxième et troisième groupes offrent alors chacune des registres qui constituent des candidats potentiels pour relayer le premier sous-lien L171, tandis que les banques B des quatrième et cinquième groupes offrent chacune des registres qui constituent des candidats potentiels pour relayer le second sous-lien L172. Par conséquent, le second ensemble E2 sera constitué de l'un des registres relais de l'une des douze banques B des premier, deuxième et troisième groupes, et de l'un des registres relais de l'une des huit banques B des quatrième et cinquième groupes. Ici, c'est un registre de la première banque B du deuxième groupe de la treizième unité de traitement UT13 qui a été déterminé pour assurer le relais entre les premier L171 et deuxième L172 sous-liens du second lien physique L17, et c'est un registre de la quatrième banque B du quatrième groupe de la quatorzième unité de traitement UT14 qui a été déterminé pour assurer le relais entre les deuxième L172 et troisième L173 sous-liens du second lien physique L17. Chaque second ensemble E2 constitue pour le lien physique associé une solution d'interconnexion qui est compatible avec celles de tous les autres liens physiques, et tous ces seconds ensembles E2 constituent un plan de connexion pour l'ASIC CE. On notera que chaque définition, qui est associée à un premier Lii' ou second lien physique et qui alimente l'algorithme méta-heuristique, comprend au moins les positions des points de connexion de ce premier Lii' ou second lien physique à son unité de traitement source UTi et à chacune de ses unités de traitement destinataires UTi'. Ces positions constituent donc également des la paramètres d'entrée du procédé (ou du logiciel mettant en oeuvre ce dernier). On notera également que lorsque chaque premier ensemble El associé à un lien physique fait l'objet d'un classement, ce dernier peut être pris en compte par l'algorithme méta-heuristique dans la seconde étape (ii) pour déterminer les seconds ensembles E2. En effet, cet algorithme va essayer 15 d'utiliser en priorité les meilleures banques B des différents liens physiques concernés pour trouver une solution optimale. Par exemple, chaque premier critère peut être choisi parmi, au moins, une occupation sensiblement homogène des banques B, une occupation maximale des banques B, une longueur moyenne de sous-liens, un nombre 20 minimal de sous-liens ayant une longueur proche de la longueur maximale Lmax, et une déviation standard. On notera que l'algorithme méta-heuristique (d'optimisation) peut être configuré de manière à utiliser un unique premier critère ou bien plusieurs (au moins deux) premiers critères. 25 On notera également que l'algorithme méta-heuristique (d'optimisation) peut être choisi parmi au moins un algorithme dit « génétique », un algorithme dit « de recuit simulé », un algorithme dit « de colonies de fourmis », et une combinaison d'au moins deux des algorithmes précités de ce groupe. 30 H est rappelé qu'un algorithme génétique est propre à déterminer une solution qui est certes optimale mais localement, ce qui signifie qu'il cesse de travailler dès qu'il trouve une première solution optimale, même s'il existe une autre solution optimale locale qui est meilleure (ou plus stable) que la première. Par contre, un algorithme de recuit simulé va déterminer la solution optimale qui est la plus stable possible. Lorsque l'on utilise un algorithme génétique comportant au moins un opérateur choisi, il est avantageux d'utiliser chaque opérateur de façon itérative dans la seconde étape (ii) de manière à déterminer chacun des seconds ensembles. Chaque opérateur peut être choisi parmi, au moins, un opérateur dit de sélection, un opérateur dit de croisement, un opérateur dit de mutation et un opérateur dit de remplacement. Par exemple, l'algorithme génétique comprend les quatre opérateurs précités. Les itérations peuvent être effectuées un nombre de fois choisi afin que la durée maximale des calculs soit contrôlée. Ce nombre d'itérations constitue un critère d'arrêt pour l'algorithme génétique, et donc un paramètre d'entrée du procédé (ou du logiciel mettant en oeuvre ce dernier). En variante ou en complément, on peut cesser d'itérer lorsque l'on considère que l'on a trouvé des solutions satisfaisantes pour les registres relais de chaque lien physique à relayer. Ces solutions deviennent alors les seconds ensembles E2. On notera également que l'on associe à l'algorithme génétique une fonction de sélection qui est propre à déterminer chaque second ensemble E2 en fonction de chaque premier critère choisi associé à un coefficient de pondération choisi. Cette fonction de sélection permet en effet de différencier une solution d'une autre et donc de dire laquelle est la meilleure, au moins localement. Elle peut varier notablement en fonction du ou des premiers critères que l'on souhaite privilégier pour l'ASIC CE considérée. Par exemple, si l'on utilise un premier critère Cl relatif à une occupation sensiblement homogène des banques B et associé à un premier coefficient de pondération pi, un deuxième critère C2 relatif à une occupation maximale des banques B et associé à un deuxième coefficient de pondération p2, un troisième critère C3 relatif à une distribution des longueurs de tous les sous-liens physiques et associé à un troisième coefficient de pondération p3, un quatrième critère C4 relatif à une longueur moyenne de chacun des sous-liens physiques et associé à un quatrième coefficient de pondération p4, et un cinquième critère C5 relatif à un nombre minimal de sous-liens physiques ayant une longueur proche de la longueur maximale Lmax et associé à un cinquième coefficient de pondération p5, alors la fonction de sélection F peut, par exemple, être définie par la relation F = pl Cl + p2C2 + p3C3 + p4C4 + p5C5. Les critères utilisés (ici Cl à C5) et les valeurs des différents coefficients de pondération (ici pl à p5) sont choisis par la personne qui supervise la détermination du plan d'interconnexion. On comprendra que les solutions trouvées par l'algorithme génétique peuvent sensiblement varier 1 o selon les valeurs du quintuplet {pi, p2, p3, p4, p5}. A l'issue de la première étape (i) chaque lien physique à relayer possède un premier ensemble El de banques B qui constituent des candidats pour le placement des registres relais. Dans le jargon de l'algorithme génétique une solution est l'ensemble des banques B par lesquelles un lien 15 physique peut être relayé. Chaque lien physique possède donc un (premier) ensemble El ii' de solutions pour le placement des registres relais. Il est important de noter que si un (premier) ensemble El ii' est de cardinalité nulle cela signifie que l'on n'a pas pu subdiviser le lien physique correspondant (et présentant une longueur supérieure à Lmax) en sous-liens de taille inférieure à 20 Lmax tout en respectant les contraintes que l'on s'est fixé. Toujours dans le jargon de l'algorithme génétique, un individu peut être défini comme une solution globale Sg résultant de choix dans chacun des (premiers) ensembles El ii' des (premiers ou seconds) liens physiques Lii' à relayer. Par exemple, si l'on a trois liens physiques à relayer une seule fois et 25 que l'on dispose de cinq banques (B1 à B5), alors on peut avoir un premier ensemble El 1 = {131, B2} pour le premier lien Li ii' (avec ii'=1), un deuxième ensemble El 2 = fB3, B51 pour le deuxième lien L2ii' (avec ii'=2), un troisième ensemble El 3 = {131, B2, B3, B5} pour le deuxième lien L3ii' (avec ii'=3). Dans ce cas, l'algorithme génétique va construire des individus Sg(k) qui peuvent, 30 par exemple, être : Sg(1)={Llii' : Bi, L2ii' : B5, L3ii' : B5}, Sg(2)={Llii' : Bi, L2ii' : B5, L3ii' : B1}, et Sg(3)={Llii' : B2, L2ii' : B3, L3ii' : B1}. Pour chacun des individus, l'algorithme génétique connaît les longueurs des liens physiques à relayer. On peut donc caractériser un individu par la longueur totale des liens physiques qu'il désigne et/ou la longueur moyenne des liens physiques qu'il désigne, par exemple. Une population est alors un ensemble d'individus que l'algorithme génétique va se charger de faire évoluer pour aboutir à une unique solution globale Sg. L'opérateur de mutation est ici chargé, par exemple, de changer le choix de relayage (ou routage) de l'un des liens physiques à relayer. Dans le cas de l'exemple précité, on pourra par exemple muter le premier individu Sg(1) en Sg'(1)={L1ii' : B1, L2ii' : B5, L3ii' : B3}. D'une manière générale, l'opérateur de mutation est destiné à 1 o autoriser l'algorithme génétique à effectuer de façon aléatoire ou périodique des changements de sélection, afin d'introduire de la diversité génétique. On notera que l'on peut éventuellement faire varier les définitions de l'individu et de la population pendant l'une au moins des itérations. A la fin de la seconde étape (ii) l'algorithme génétique va déterminer 15 au sein des banques de la solution globale Sg une unique solution générale constituée de registres relais et donc de la réunion de tous les seconds ensembles E2 déterminés pour les différents liens physiques à relayer. Cette solution générale constitue alors le plan d'interconnexion de l'ASIC. Grâce à l'invention, le procédé de détermination d'un plan 20 d'interconnexion d'un ASIC peut désormais être automatisé quasi-intégralement. En outre, la longueur maximale de chaque lien physique peut être paramétrable tout comme la définition des opérateurs de l'algorithme méta-heuristique et la définition de la fonction de sélection. Cela confère une grande flexibilité qui permet de maximiser la probabilité de déterminer la 25 meilleure solution d'implémentation physique de l'interconnexion des unités de traitement d'un ASIC. L'invention ne se limite pas aux modes de réalisation de procédé et de calculateur décrits ci-avant, seulement à titre d'exemple, mais elle englobe toutes les variantes que pourra envisager l'homme de l'art dans le cadre des 30 revendications ci-après. REVENDICATIONS1. Procédé de détermination d'un plan d'interconnexion entre des unités de traitement (UTi) d'un composant électronique (CE) disposant de banques (B) de registres relais, caractérisé en ce qu'il comprend une étape (i) dans laquelle on détermine des premiers liens physiques (Lii') propres à interconnecter des unités de traitement (UTi) et présentant une longueur supérieure à une longueur maximale, puis, pour chacun de ces premiers liens 1 o physiques (Lii') et des seconds liens physiques présentant une interdépendance avec l'un de ces derniers (Lii'), on détermine un premier ensemble de banque(s) (B) propre(s) à servir de relais d'interconnexion, et une étape (ii) dans laquelle on alimente un algorithme de type méta-heuristique avec lesdits premiers ensembles et des définitions desdits premiers (Lii') et 15 seconds liens physiques pour déterminer pour chacun de ces derniers (Lii'), en fonction d'au moins un premier critère choisi, un second ensemble de registre(s) relais appartenant aux banques (B) de son premier ensemble. 2. Procédé selon la revendication 1, caractérisé en ce que dans ladite étape (i) on classe les banques (B) des premiers ensembles de chacun des 20 premiers (Lii') et seconds liens physiques en fonction d'au moins un second critère choisi, et dans ladite étape (ii) on prend en compte le classement des premiers ensembles pour déterminer lesdits seconds ensembles. 3. Procédé selon la revendication 2, caractérisé en ce qu'à la fin de ladite étape (i) on sélectionne parmi lesdits banques (B) du premier ensemble 25 classé de chacun des premiers (Lii') et seconds liens physiques celle qui a été classée en première position afin de disposer de meilleures banques (B), puis on détermine s'il existe pour chacun desdits premiers (Lii') et seconds liens physiques un second ensemble de registre(s) relais appartenant respectivement aux meilleures banques (B) de son premier ensemble, et dans 30 la négative on effectue ladite étape (ii). 4. Procédé selon l'une des revendications 1 à 3, caractérisé en ce que dans ladite étape (i) on détermine pour chaque premier (Lii') ou second lien physique un premier ensemble de banque(s) (B) parmi un sous-ensemblechoisi desdites banques (B). 5. Procédé selon l'une des revendications 1 à 4, caractérisé en ce que chaque premier critère est choisi dans un groupe comprenant au moins une occupation sensiblement homogène desdites banques (B), une occupation maximale desdites banques (B), une longueur moyenne de sous-liens, un nombre minimal de sous-liens ayant une longueur proche de ladite longueur maximale, et une déviation standard. 6. Procédé selon l'une des revendications 1 à 5, caractérisé en ce que ledit algorithme de type méta-heuristique est choisi dans un groupe comprenant au moins un algorithme dit « génétique », un algorithme dit « de recuit simulé », un algorithme dit « de colonies de fourmis », et une combinaison d'au moins deux desdits algorithmes de ce groupe. 7. Procédé selon la revendication 6, caractérisé en ce que ledit algorithme de type méta-heuristique est un algorithme génétique comportant au moins un opérateur choisi dans un groupe comprenant au moins un opérateur dit de sélection, un opérateur dit de croisement, un opérateur dit de mutation et un opérateur dit de remplacement, et en ce que dans ladite étape (ii) on utilise de façon itérative chaque opérateur de manière à déterminer chacun desdits seconds ensembles. 8. Procédé selon la revendication 7, caractérisé en ce que dans ladite étape (ii) on effectue lesdites itérations un nombre de fois choisi et/ou lorsque l'on a trouvé des solutions satisfaisantes de registres relais pour chaque lien physique à relayer. 9. Procédé selon l'une des revendications 7 et 8, caractérisé en ce que l'on associe audit algorithme génétique une fonction de sélection propre à déterminer chaque second ensemble en fonction de chaque premier critère choisi associé à un coefficient de pondération choisi. 10. Procédé selon l'une des revendications 1 à 9, caractérisé en ce que chaque définition associée à un premier (Lii') ou second lien physique comprend au moins une position d'un point de connexion à une unité de traitement source (UTi), et une position d'un point de connexion à une unité de traitement destinataire (UTi'). 11. Produit programme d'ordinateur comprenant un jeu d'instructions qui,lorsqu'il est exécuté par des moyens de traitement, est propre à mettre en oeuvre le procédé selon l'une des revendications précédentes pour déterminer un plan d'interconnexion entre des unités de traitement (UTi) d'un composant électronique (CE) disposant de banques (B) de registres relais. 12. Calculateur, caractérisé en ce qu'il comprend des moyens de traitement et un produit programme d'ordinateur selon la revendication 11, comprenant un jeu d'instructions propre à être exécuté par lesdits moyens de traitement.