FR 2573887 A1 19860530 FR 8517384 A 19851125 1. La présente invention concerne un procédé de génération de configurations de test pour dispositifs à ré- seaux logiques qu'on utilise dans des ordinateurs, des sys- tèmes de communication et autres équipements électriques. Il existe trois méthodes classiques pour générer des configurations de test pour circuits logiques. Dans le premier procédé, un circuit logique est décrit sous forme d'une configuration de portes, et un algorithme tel qu'un algorithme D, un algorithme PODEM ou FAN, etc. peut être appliqué à la configuration de portes. On trouvera des détails de l'algorithme D dans un article de J. Paul Roth ayant pour titre: "Diagnosis of Automata Failures: A Calculus and a Method", IBM Journal of Research and Development, Vol. 10, pp. 278-291, juillet 1966. (Diagnos- tic de défaillances d'automates: un calcul et une méthode). S'agissant des détails de l'algorithme PODEM, on se reporte- ra à un article de Prabhakar Goel, ayant pour titre: "An Implicit Enumeration Algorithm to Generate Tests for Com- binational Logic Circuits", IEEE TRANSACTIONS ON COMPUTERS, Vol; C-30, n 3, pp. 215-222, mars 1981 (Algorithme 2573887' 2. d'énumération implicite pour générer des tests pour cir- cuits logiques combinatoires). Pour des détails sur l'al- gorithme FAN, on pourra se reporter à un article de Hideo Fujiwara et ai, intitulé "On the Acceleration of Test Gene- ration Algorithms", IEEE TRANSACTIONS ON COMPUTERS, Vol. C-32, n 12, pp. 1137-1144 décembre 1983 (De l'accéléra- tion des algorithmes de génération de test). Le premier procédé convient essentiellement aux réseaux combinatoires, mais son emploi est inefficace avec des circuits séquentiels. L'utilisation de l'algorithme D dans l'essai de circuits séquentiels a fait l'objet de discussions, par exemple, de M. Brener et A. Friedman dans Diagnosis & Reliable Design of Digital Systems, publié par Computer Science Press, Inc., 1976, pp. 90-100 mais ne s'est pas avérée entièrement satisfaisante. En outre, il est difficile d'appliquer le procédé à des circuits à gran- de échelle car la méthode est basée sur un modèle de porte. Dans le second procédé, les circuits en cause sont décrits fonctionnellement, et les configurations de test qui montrent la façon de changer chaque fonction en réponse à la défaillance sont-générées.On trouvera des détails de second procédé dans un article de Satish M. Thatte et al., intitulé "User Testing Of Microprocessors", IEEE PROC. COMPCON Spring pp. 108-114, 1979 (Essai par l'utilisateur de microprocesseurs). Il est difficile dans le second procédé de reflé- ter des différences dans la structure du circuit dans le modèle de défaut, car il n'existe aucune information sur la structure du circuit.En outre, il est difficile d'appliquer le second procédé à un circuit logique aléatoire qui n'est pas fonctionnellement fermé. Pour résoudre ces problèmes soulevés par le second procédé, le troisième procédé incorpore une information sur la structure du circuit dans un modèle de circuit fonc- tionnel, et les configurations de test sont générées pour 3. activer chaque ligne de signal dans le circuit. On trou- vera des détails de ce troisième procédé dans un article de M. Kawai et al, intitulé "A High Level Test Pattern Generation Algorithm", IEEE Proc. Test Conf. pp. 346-352, 1983 (Algorithme de génération de configuration de test à niveau élevé). Ce procédé est essentiellement destiné à des réseaux combinatoires et ne peut être utilisé effecti- vement pour des circuits séquentiels. Plus particulière- ment, dans un réseau combinatoire vrai, la sortie à un noeud observable reflètera immédiatement l'entrée à un noeud contrôlable, et le test peut être exécuté en appli- quant une entrée et en examinant immédiatement la sortie. Cependant, dans un réseau séquentiel, les signaux se pro- pagent dans le réseau pendant une pluralité de cycles d'horloge avant d'être reflétés à un noeud observable. Il n'est pas conséquent pas possible de fournir simplement un signal d'entrée ou des signaux d'entrée et examiner la sor- tie à ce moment là. La présente invention a par conséquent pour objet un procédé permettant de générer facilement des configura- tions de test pour des circuits à grande échelle comprenant des circuits séquentiels. Selon la présente invention,on prévoit un procédé de génération d'une configuration de test pour au moins un réseau logique, circuit comprenant un noeud d'opérateur, un noeud contrôlable, un noeud observable et des segments ou branches de trajet pour connecter les noeuds. Tout d'abord, les trajets allant du noeud observable au noeud contrôlable par l'intermédiaire du noeud d'opérateur sont repérés. Puis, des signaux sont produits de manière à sensibiliser le noeud sur les trajets repérés. Alors les lignes connectant les noeuds sensibilisés sont justifiées. Un perfectionnement important apporté par la pré- sente invention réside dans le fait que, alors que la techni- que de l'algorithme P décrite dans l'article de Kawai et 4. collaborateurs ne s'applique qu'à des circuits combinatoi- res o la sortie à un noeud observable est fonction des entrées en courant aux noeuds contrôlables, la présente invention définit ses configurations d'entrée comme séquen- ces temporelles de configurations lorsque cela est néces- saire à l'essai de circuits séquentiels o la sortie au noeud observable est fonction d'une séquence de configura- tions de test d'entrée. La présente invention sera bien comprise lors de la description suivante faite en liaison avec les des- sins ci-joints dans lesquels: La figure 1 représente un mode de réalisation de la présente invention; La figure 2A représente un modèle de matériel qu'on peut tester en suivant le procédé de la présente in- vention; La figure 2B représente un modèle symbolique de logiciel qu'on peut tester en suivant le procédé de la présente invention; La figure 2C est un diagramme de temps permettant de décrire une opération de test sur les modèles représen- tés en figures 2A et 2B; Les figures 3 et 6 représentent un organigramme détaillé d'une partie du procédé de la présente invention; La figure 4 est un diagramme conceptuel du repé- rage de trajet dans un exemple de circuit devant être tes- té selon le procédé de la présente invention; La figure 5 représente des exemples de noeuds d'opérateur caractérisés par des combinaisons de fonctions de commande, d'entrées et de sorties; La figure 6 représente un organigramme du fonc- tionnement de la présente invention lors de l'étape de jus- tification de la figure 1; et Les:figures 7A-7D et 8 sont des diagrammes permet- tant d'expliquer les configurations séquentielles d'entrée 5. fournies par la présente invention. Comme cela apparaîtra clairement dans la des- cription qui va suivre, le procédé de la présente inven- tion peut être utilisé en conjonction avec un modèle de réseau sous forme de matériel ainsi qu'avec un modèle de réseau décrit graphiquement et réalisé par un logiciel. Le fonctionnement global de la technique de géné- ration de configurations de test de la présente invention est illustré dans l'organigramme de la figure 1, et largement similaire à la technique de l'algorithme P décrite en détail dans l'article de Kawai et collaborateurs cité précédemment. Dans la mesure nécessaire à une compréhension correcte de la présente invention, les articles cités précédemment sont incorporés ici à titre de référence. Comme dans la technique de l'algorithme P, la présente invention choisit un noeud observable puis sensi- bilise un trajet allant du noeud observable jusqu'à un noeud contrôlable. Cela est poursui jusqu'à ce que tous les seg- ments de trajet du réseau aient été sensibilisés au moins une fois, et tous les signaux non justifiés sont résolus dans une étape de justification de ligne. A ce point, le procédé de la figure 1 est complet, bien qu'il y ait lieu de noter qu'il sera généralement souhaitable d'exécuter une étape de compactage de configuration comme cela est effectué dans l'algorithme P décrit précédemment. Cependant, un avan- tage critrique du procédé de la présente invention est qu'il permet des configurations de test en série dans le temps pour tester un trajet unique, lorsque cela s'avère nécessaire dans le test d'un circuit séquentiel, comme on le décrira plus en détail ci-après. On décrira tout d'abord, le fonctionnement de la présente invention en liaison avec l'organigramme de la figure 1 ainsi qu'avec les schémas des figures 2A à 2C. On notera que les illusttations des figures 2A et 2B ne sont pas des schémas de circuits réels en cours d'essai, mais 6. sont des diagrammes conceptuels permettant d'expliquer le fonctionnement de la présente invention; par exemple, la figure 2A représente la façon avec laquelle le procédé de génération des configurations de la présente invention peut voire le circuit du matériel pour lequel les configurations de test sont générées. En liaison avec les figures 1, et 2A à 2C, dans l'étape de départ de la présente invention, l'information sur le modèle est entrée dans l'ordinateur. Pour le modèle 1î représenté en figure 2A, l'information sur le modèle com- porte une information sur un registre 21 de N bits pour le stockage de données à N bits en réponse à un signal d'horloge, un noeud contrôlable 23 pour fournir des don- nées à N bits au registre 21, un noeud contrôlable 24 pour fournir un signal d'horloge au registre 21, un additionneur 22 à N bits pour additionner la sortie du registre 21 et l'entrée provenant d'un noeud contrôlable 25, et un noeud observable 26 pour observer la sortie de l'additionneur 22. Comme le réseau en essai pourrait utiliser des données soit à un bit soit à bits multiples, on ne décrira ci-après que le contexte d'une signalisation à bit unique afin de simpli- fier la description du fonctionnement. Chacun des noeuds contrôlables 23, 24 et 25 et un noeud 21' de registre, qui doivent être mis à jour à chaque période d'horloge, ont trois entrées sélectionnables grâce auxquelles "1" ou "0", et des valeurs en courant al- ternatif (CA) peuvent être choisis. Chaque segment de tra- jet connectant un noeud à un autre noeud est muni d'une diode lumineuse respective 21"1 à 24", chacune des diodes remplissant trois fonctions. Plus particulièrement, lors- que le signal sur un segment de trajet est "1", la diode correspondante est continuellement conductrice; lorsque le signal sur le segment de trajet est "0", la diode est continuellement non conductrice; et lorsque le signal sur le segment de trajet est "CA", la diode clignote. Dans ce 7. modèle, un signal CA sur un segment de trajet peut "sensi- biliser" ce segment. En liaison avec la figure 2B,l'information sur le modèle fournie à l'ordinateur dans la partie de commencement du processus de la figure 1 comprend une information concer- nant les noeuds contrôlables 231, 241 et 251, un registre 211, un additionneur 221 et un noeud observable 261 pour l'observation de la sortie de l'additionneur 221. A la pla- ce des diodes lumineuses 21" à 24" du modèle de la figure 2A, le modèle de la figure 2B comporte des mémoires 211', 221', 231', 241' et 251'. De nouveau en liaison avec la figure 1, lors de l'étape de repérage 2 pour le modèle de matériel, un noeud observable non testé peut être sélectionné. Ensuite, l'ordi- nateur génère une information de trajet pour faire le repé- rage entre le noeud observable et un noeud contrôlable via des segments de trajet non repérés du réseau. S'il n'y a aucun segment de trajet non repéré qui soit disponible dans une partie du trajet entre les noeuds observable et contrô- lable sélectionnés, les segments de trajet repérés sont utilisés pour le repérage de ces parties de trajet. Par exemple, l'opération de repérage est exécutée pour sélectionner des trajets non repérés entre le noeud observable et un noeud contrôlable. Cependant, lorsque cette opération atteint un point à partir duquel une con- nexion avec un noeud contrôlable peut être effectuée par l'intermédiaire d'un trajet essayé, ce trajet essayé est choisi pour le test du trajet non essayé actuellement sé- lectionné. Ainsi, dans l'étape 1 de repérage de la figu- re 1, les noeuds et segments de trajet sont séquentiellement repérés entre le noeud observable, par exemple à partir d'une borne de sortie extérieure ou de bascules connectées en cascade, et le noeud contrôlable, par exemple une borne d'entrée extérieure ou des bascules connectées en cascade. Le trajet de repérage couvre tous les segments de trajet 8. du réseau, et après sensibilisation de chaque segment de trajet repéré, un repérage d'entrance est poursuivi à par- tir du segment de trajet repéré dans la direction du noeud contrôlable sélectionné. L'opération de repérage pour le modèle de maté- riel de la figure 2A est la suivante: Tout d'abord, l'opération de repérage commence au noeud observable 26, puis choisit le trajet allant au noeud contrôlable 23 par l'intermédiaire de l'additionneur 22 et du registre 21. Ayant choisi ce trajet, le segment de trajet qui est connecté entre le noeud observable 26 et le noeud d'opérateur (additionneur 22) est repéré. L'opération de repérage dans le modèle de logi- ciel de la figure 2B est la suivante. Tout d'abord, l'opéra- tion commence au noeud observable 261, puis sélectionne le trajet allant au noeud contrôlable 231 par l'intermédiaire de l'additionneur 221 et du registre 211. Ensuite, ayant sélectionné ce trajet devant être repéré, le segment de tra- jet allant du noeud observable 261 à l'additionneur 221 est tout dabord repéré. De nouveau, en liaison avec la figure 1, dans l'étape 3 de sensibilisation de noeud, des signaux d'entrée sont générés de façon que les lignes de signaux de données et les lignes de signaux de commande soient sensibilisées sur le trajet repéré. Les signaux d'entrée peuvent être des signaux à bit unique ou à bits multiples en parallèle. Qu'il s'agisse de bit unique ou de bits multiples en parallèle, une caractéristique importante de la présente invention est que la configuration d'entrée nécessaire a la sensibilisa- tion d'un trajet entre un noeud observable et un noeud con- trôlable puisse prendre la forme d'une entrée sérielle dans le temps, par exemple un signal d'entrée à n' bits (n'>l) peut être fourni pendant m' périodes (m'>l) ou périodes d'horloge. Cela permettra au système de sensibiliser un tra- jet entier entre un noeud contrôlable et un noeud observa- ble, même dans le cas d'un circuit séquentiel. 9. Par exemple la sensibilisation du trajet entre le noeud observable 26 et le noeud contrôlable 23 nécessi- te la sensibilisation des noeuds 22 et 21 ainsi que des segments de trajet entre les noeuds observable et contrôla- ble. La sensibilisation concerne le montage des segments de trajet et des noeuds de façon que le noeud observable réponde au signal présenté au noeud contrôlable, comme cela est bien connu et décrit dans l'article de Kawai et collaborateurs cité précédemment. Pour sensibiliser l'ad- ditionneur 22, une certaine valeur fixe doit être appliquée à toutes les entrées de l'additionneur autres que l'entrée particulière dans le segment de trajet repéré, et cette valeur fixe est de préférence "1"' de sorte que l'entrée de l'additionneur à partir du trajet sensibilisé sera transmi- se à la sortie. Cela "sensibilisera" l'additionneur 22 ain- si que le segment de trajet suivant couplant la sortie de l'additionneur au noeud observable 26 en rendant ces parties du trajet repéré sensibles aux signaux provenant de leur trajet d'entrance. Pour sensibiliser le registre 21 (en supposant que c'est la ligne d'entrée de données au registre, qui constitue une partie du trajet sélectionné devant être repéré), il faut simplement appliquer une impulsion d'hor- loge au registre, d'o il résulte que la sortie du regis- tre reflétera l'entrée de données au registre. Cependant, on notera que le minutage du signal d'horloge doit pren- dre en considération la propagation du signal le long du trajet repéré et la nécessité pour le signal qui s'est pro- pagé d'être disponible à un certain instant spécifié à un point ultérieur du trajet repéré. Ainsi, il sera nécessai- re d'appliquer l'impulsion d'horloge au registre un cycle précédant l'instant auquel la sortie du registre est nécessai- re. D'une façon similaire, la donnée devant être appliquée au registre sur le trajet sensibilisé devra être fournie suffisamment tôt pour être captée par l'impulsion d'horloge, de sorte qu'elle devra aussi se produire au moins un cycle 10. antérieurement à l'instant souhaité de disponibilité de la sortie du registre. A titre d'autre exemple, la figure 7 illustre le minutage qui doit être pris en compte lors de l'essai de circuits séquentiels. Pour le matériel disposé générale- ment de la façon représentée en figure 7A, ou A représente un réseau combinatoire et B une bascule, les figures 7B-7D montrent que la donnée ENTREE 1 sera combinée à une donnée d'entrée supplémentaire aux entrées inférieures du réseau combinatoire de manière à fournir une sortie SORTIE 1. Lorsque le signal d'horloge est fourni, la ou les bascules changent d'état et fournissent un nouvel ensemble d'en- trées inférieures au réseau combinatoire, de sorte qu'une nouvelle sortie SORTIE 2 sera fournie dès que la donnée ENTREE 2 sera disponible. D'une façon similaire, la donnée SORTIE 3 sera disponible lorsque L'ENTREE 3 est tout d'abord fournie après le rythmage de la ou des bascules, etc. Pour tester correctement le circuit, il sera donc nécessaire de fournir une séquence de configurations- d'en- trée, par exemple, chargeant d'abord ou remettant à zéro la ou les bascules, puis fournissant ENTREE 1, un signal d'horloge, ENTREE 2, etc. A titre d'autre exemple, pour le matériel simple illustré quant à sa conception en figure 8, la sensibilisa- tion du trajet entre EN et SORT nécessite la sensibilisa- tion du noeud d'opérateur représenté par une porte ET, et cette sensibilisation est accomplie en fournissant un "1" à l'entrée basse de la porte. Mais, comme la valeur de sensibilisation doit être fournie à partir d'un compteur, le processus peut nécessiter la remise à zéro du compteur à un instant antérieur à l'instant de sensibilisation dési- ré de sorte que la borne de sortie du compteur connectée à la porte ET aura une valeur haute à l'instant de sensibili- sation désiré. Par exemple, un compteur C à division par quatre peut devoir être remis à zéro quatre périodes d'horlo- ge avant l'instant de sensibilisation désiré, de sorte que 11. le trajet sera sensibilisé lorsque la donnée d'entrée d'activation sera fournie à la borne d'entrée EN. On notera que cela peut nécessiter dans certains cas que les confi- gurations séquentielles d'entrée soient fournies pendant des périodes discontinues. Plus précisément, la première configuration pour la sensibilisation d'un trajet peut être fournie lors d'une première période d'horloge, par exemple pour la remise à zéro du compteur, et la configuration sui- vante de la séquence peut ne pas être fournie avant, par exemple, quatre périodes d'horloge suivant le moment o le compteur a atteint une valeur appropriée. L,'objet des diodes 21", 22" et 23" est d'indi- quer, que ces segments de trajet ont été sensibilisés pen- dant le repérage. Idéalement, un signal en courant alternatif appliqué au noeud contrôlable 23 se propagera le long du trajet de test et provoquera l'allumage intermittent de toutes les diodes.Cependant, le registre 21 ne laissera pas passer un signal CA, mais n'assumera qu'une valeur de sortie correspondant à la valeur de son signal CA d'entrée au moment de l'impulsion d'horloge. Ainsi, pendant la sensi- bilisation, le commutateur 21' est utilisé pour appliquer un signal CA au trajet entre le registre 21 et l'addition- neur 22 de manière à allumer par intermittence la diode 21" et indiquer la sensibilisation. Des exemples de valeurs d'entrée pour la sensi- bilisation des trajets passant par le noeud d'opérateur sont représentés en figure 5 et dans le tableau 1. 12. TABLEAU 1 OPERATEUR VALEUR D'ENTREE SUR AUTRE VALEUR D'EN- LE TRAJET DE SENSI- TREE BILISATION ET à N bits Valeur d'activation "1" de N bits (SENSIBILISATION) OU à N bits Valeur d'activation "O" de N bits NON à N bits Valeur d'activation - EX OU à N bits Valeur d'activation Toute valeur fixe OU EX à N bits Valeur d'activation "O" de N bits/"l" 1"0 de N bits, etc. MULTIPLICATION Valeur d'activation "O" de N bits/"l" à N bits de N bits, etc. CAS à N bits Valeur d'activation Lorsque la ligne (SELECTEUR) d'entrée de données est sensibilisée Lignes de donnée: toute valeur fixe Lignes de commande: la valeur pour la sélection du tra- jet sensibilisé Lorsque la ligne d'entrée de com- mande est sensi- bilisée Lignes de données: valeurs prédéter- minées différen- tes les unes des autres. SI à N bits Valeur d'activation Même valeur que le CAS de la rubrique à N bits REGISTRE à Valeur d'activation Lorsque la ligne N bits d'entrée de données est sensibilisée Horloge: impulsion Lorsque la ligne d'entrée d'horloge est sensibilisée Donnée: toute va- lj _ _ _ _ _ _ _ _.leur fixe Plus précisément, les valeurs d'entrée, pour les noeuds d'opérateur avec les fonctions ET, OU, NON, OU EX, 13. AD, MULTIPLICATION, CAS, SI et REG, permettant de justifier les lignes, sont représentées. Par exemple, dans le cas d'un opérateur ET, tous les "1" sont nécessaires comme entrée à l'autre borne d'entrée du noeud d'opérateur de sorte qu'une valeur d'en- trée est transmise à la sortie du noeud d'opérateur. Si l'opérateur ET comprend un opérateur ET à N bits o une plu- ralité de portes ET reçoivent chacune et combinent des bits respectifs des deux signaux soumis à l'opération ET, une valeur "1" doit être fournie à "l'autre" entrée ou entrée de sensibilisation de chacune des N portes ET. Dans le cas d'un opérateur CAS, pour sensibiliser une ligne d'entrée de données particulière, la valeur d'entrée pour la sélection de la valeur sur la ligne d'en- trée de données particulière est appliquée à la borne de commande du noeud d'opérateur et toute valeur fixe est fournie aux bornes d'entrée de données autres que la borne d'entrée de données particulière du noeud d'opérateur. Dans le cas d'un opérateur REG, c'est-à-dire d'un registre, pour sensibiliser la ligne d'entrée de données, la donnée est rythmée pour être appliquée et sortie au noeud d'opérateur. S'il est nécessaire d'entrer un signal d'horlo- ge, l'instant de l'entrée des signaux de données et d'horlo- ge est défini par l'instant désiré moins une période d'hor- loge, comme on l'a discuté précédemment. En d'autres ter- mes, comme on peut le voir en figure 2C, pour que la sortie du registre soit simultanée à l'entrée de la donnée dans l'additionneur provenant du noeud contrôlable 25, la donnée d'entrée dans le registre et le signal d'horloge pour le registre doivent être fournis lors du cycle d'horloge pré- cédent. Dans le modèle de matériel de la figure 2A, l'in- formation d'entrée permettant de sensibiliser le trajet entre le registre 21 et le noeud observable 26 sera utili- sée dans le calcul au noeud d'opérateur, c'est-à-dire 14. l'additionneur: 22. Pour cette opération d'addition, la valeur i"0" est instaurée dans le noeud contrôlable 25. * Dans le modèle de logiciel de la figure 2B, pour instaurer la valeur d'activation à N bits An dans l'addi- n tionneur 221 à l'instant O, cette valeur doit être chargée dans la mémoire 211' à l'instant O, et un vecteur 0 de N bits doit être chargé dans la mémoire 251' à l'instant O. De nouveau en liaison avec la figure 1, lors de la première étape de jugement 4, il est jugé si la sensibilisation a atteint ou non le noeud contrôlable. Si la sensibili- sation n'a pas atteint le noeud contrôlable, le fonctionne- ment revient à l'étape de repérage 2. Si la sensibilisation a atteint le noeud contrôlable, le fonctionnement passe à l'étape 5 de justification de ligne. Dans le modèle de matériel de la figure 2A, étant donné que l'additionneur 22 n'est pas un noeud contrôlable mais un noeud d'opérateur, le fonctionnement revient à l'éta- pe de repérage 2. Dans l'étape de repérage 2, le fonctionne- ment fait un repérage entre l'additionneur 22 et le regis- tre 21. Dans ce registre 21, l'information de sensibilisa- tion est sortie en réponse au signal d'horloge. Comme le registre ne peut laisser passer une valeur CA, mais n'assu- mera qu'une valeur de sortie représentant l'état instanta- né de son entrée de donnée, comme décrit précédemment, le commutateur 21' est fixé au registre 21. Le signal CA est fourni au commutateur 21' pour montrer la sensibilisation. Alors, il est jugé du fait que le registre 21 est un noeud contrôlable ou non dans la première étape de jugement 4. Comme le registre 21 n'est pas un noeud contrôlable, le fonc- tionnement revient à l'étape de repérage 2. Le fonctionnement atteint finalement le noeud con- tr1ôlable 23. Il n'est pas nécessaire de "sensibiliser" le noeud contrôlable lui-même, car c'est ce noeud qui sera contrôlé dans le test, de sorte que le fonctionnement passe 15. à la première étape de jugement 4. Dans l'étape 4, il y a détermination du fait que la sensibilisation a atteint un noeud contrôlable. Comme la sensibilisation a atteint le noeud contrôlable, le fonctionnement passe à l'étape 5 de justification de ligne. Dans le modèle de logiciel de la figure 2B, tout d'abord, il y a jugement du fait que l'additionneur 221 est un noeud contrôlable ou non. Comme l'additionneur 221 n'est pas un noeud contrôlable, le fonctionnement procède au repérage du registre suivant 211 dans l'étape de repéra- ge 2. Ensuite, le registre 211 est sensibilisé. Comme la ligne d'entrée de données doit être sensibilisée dans cet exemple, le noeud contrôlable 231 doit fournir l'informa- tion de sensibilisation un cycle d'horloge en avant de l'ins- tant désiré, c'est-à-dire un cycle d'horloge en avant de l'instant auquel la sortie du registre 211 est nécessaire. Le noeud contrôlable 241 doit également fournir des signaux d'horloge à un instant avancé, comme on l'a décrit précé- demment. Ensuite, comme le registre 211 n'est pas un noeud contrôlable, l'étape de repérage est de nouveau exécutée, de sorte que le noeud contrôlable 231 est choisi, et il y a jugement du fait que le noeud 231 est un noeud contrôlable ou non. Comme le noeud 231 est un noeud contrôlable, le fonctionnement passe à l'étape 5 de justification de ligne. De nouveau en liaison avec la figure 1, dans l'éta- pe 5 de justification de ligne, l'autre valeur n'est pas justifiée dans la valeur d'entrée,car la sensibilisation est justifiée suivant la même façon de procéder à l'adaptation que dans l'algorithme D, les différences concernant prin- cipalement l'aptitude de l'algorithme D à traiter seulement un signal à un bit, alors que le présent procédé permet de manipuler une pluralité de bits, et la façon avec laquel- le les deux techniques traitent les divergences détectées lors du processus de justification. 16. On peut suivre le fonctionnement détaillé en liaison avec la figure 6. Le fonctionnement de l'algorithme D est bien compris dans l'art et une description détaillée des étapes suivies en figure 6 n'est pas nécessaire pour la compréhension de la présente invention. En bref, le fonctionnement de la partie gauche du diagramme de la figu- re 6 traite du processus de justification lorsqu'il n'y a aucune divergence détectée, et celui-ci est le même que dans l'algorithme D. Le fonctionnement représenté dans la partie droite du diagramme de la figure 6 concerne le processus de justification lorsque des divergences sont détectées, et celui-ci est sensiblement identique au processus de l'algo- rithme P décrit dans l'article de Kawai et collaborateurs. Dans l'algorithme D, il est nécessaire d'obtenir des valeurs du signal du noeud de commande entièrement homo- gènes alors que le présent procédé permet de justifier suf- fisamment la ligne de sorte quelorsque la ligne non es- sayée est utilisée à titre de trajet, la valeur de sortie sera significative. Par exemple, pour sensibiliser un noeud ET dans un circuit ayant une signalisation en parallèle de N bits, les bits "1" sont-fournis à une entree de chacune des portes ET. Si l'algorithme D était utilisé pour un système ayant une signalisation à N bits, tout ce qui ne serait pas homogène avec les N bits "1" ne serait pas permis. D'autre part, dans la présente invention, comme le décrit l'article de Kawai et collaborateurs, il peut être suffi- sant qu'au moins un bit de l'entrée de sensibilisation de la porte ET soit satisfait, de sorte que la sortie désirée au noeud observable sera toujours obtenue. D'autres exem- ples de réconciliation de valeurs divergentes, par exemple, la priorité des lignes de commande vis-à-vis des lignes de données et la sélection des valeurs affectées en premier lieu dans le cas o deux signaux ont la même priorité, sont décrits, dans l'article de Kawai et collaborateurs. Une caractéristique supplémentaire du procédé de la pré- sente invention est l'étape de décision de la figure 6, 17. o l'importance de la valeur conflictuelle présente est mise en cause avant de passer à la fastidieuse exécution du processus de repérage discutée plus en détail dans l'ar- ticle de Kawai et collaborateurs. Dans le modèle de matériel de la figure 2A, "0" est fourni comme entrée à l'additionneur 22 à partir du noeud contrôlable 25 et le signal d'horloge est fourni com- me entrée au registre 21 à partir du noeud contrôlable 24, à des fins de sensibilisation. D'une manière plus détail- lée, la valeur d'activation est tout d'abord appliquée au noeud contrôlable 23 et le signal d'horloge est alors fourni au noeud contrôlable 24. La sensibilisation du registre 21 est confirmée par le clignotement de la diode-luminescen- te 23". Une valeur d'activation est fournie comme entrée au commutateur 21' et "0" est fourni comme entrée au noeud contrôlable 25. La sensibilisation du trajet allant du re- gistre 21 au noeud observable 26 peut être confirmée dans la sortie de l'additionneur 22,c'est-à-dire par le cligno- tement de la diode lumineuse 22". Tous les "O", "1", nombres aléatoires, nombres cycliques produits à partir d'un nombre constitué de quel- ques bits "0" et d'une quantité d'autres bits "1", et tous les nombres cycliques produits à partir d'un nombre consti- tué de quelques bits "1" et d'une quantité d'autres bits "0" peuvent être utilisés pour la sensibilisation de par- ties d'entrée à titre de configuration de test, et toute valeur appropriée pour la sensibilisation peut être em- ployée pour les autres parties d'entrée. Dans le modèle de logiciel de la figure 2B, les noeuds 241 et 251 sont des noeuds contrôlables. Par consé- quent, comme la condition de l'étape de jugement 4 est satisfaite, la justification de ligne et la génération de la configuration finale sont exécutées dans l'étape 5. Dans le modèle de logiciel, la même configuration dans le matériel de la figure 2A peut être utilisée comme configu- ration de test. 18. Cette configuration de test produite dans l'étape pour l'essai d'un circuit séquentiel, comprend n"(n">l) bits fournis à des noeuds contrôlables appropriés pendant m'(m'>l) périodes, avec la condition d'entrée de chaque noeud pour sensibilisation déterminée dans l'étape de sen- sibilisation 3. Plus particulièrement, lors de la détermi- nation d'une configuration de sensibilisation pour l'essai d'un circuit séquentiel, la configuration de sensibilisa- tion sera elle-même séquentielle. A l'étape de sensibili- sation 3, le système déterminera la séquence des configura- tions d'entrée aux noeuds contrôlables, tout en prenant en considération les exigences temporelles pour la propaga- tion des signaux dàns le réseau, de sorte que la sortie désirée peut être observée au noeud contrôlable. La confi- guration de test fournie à la fin du processus de la figu- re 1 comprendra alors une séquence temporelle de configu- rations pour l'essai de n'importe quel trajet du réseau qui peut être un trajet de circuit séquentiel, par exemple un trajet de signaux pouvant comporter un ou plusieurs registres ou bascules. Dans la seconde étape de jugement 6 de la figure 1, les segments de trajet sensibilisés sont vérifiés de manière à déterminer-si les trajets sensibilisés couvrent tous les segments de trajet du réseau. S'il existe un tra- jet de segment non essayé dans le réseau détecté lors de l'étape de jugement 6, le fonctionnement revient à l'éta- pe 2, qui execute le repérage du segment de trajet non essayé, puis justifie les lignes de la même manière que précédemment. Si tous les segments de trajet du réseau ont été sensibilisés, le processus est terminé. Dans le modèle de matériel de la figure 2A, pour juger si tous les segments de trajet ont été sensi- bilisés ou non lors de la seconde étape de jugement 6, les étapes 2 et 3 sont exécutées de manière répétée. Plus précisément, le trajet entre l'additionneur 22 et le noeud contrôlable 24 par l'intermédiaire du registre 21 19. est sélectionné et sensibilisé, puis le trajet entre l'ad- ditionneur 22 et le noeud contrôlable 25 est sélectionné et sensibilisé. Le processus de la génération de configurations est alors terminé. Dans le modèle de logiciel de la figure 2B, le même processus que celui de la figure 2A est répété et tous les trajets sont sensibilisés. Ensuite, le processus est ter- miné. De nouveau en liaison avec la figure 1, dans la se- conde étape de jugement 6, en répétant l'exécution des éta- pes 2 à 5, on peut déterminer si la sensibilisation des tra- jets à couvert tous les segments de trajet du réseau. S'il y a dans le réseau un segment de trajet non essayé, le fonc- tionnement revient à l'étape 2. Sinon, le fonctionnement est terminé. La figure 3 représente un organigramme d'un proces- sus légèrement différent de celui de la figure 1. Le procédé exact de la figure 3 est quelque peu différent de celui de la figure 1; par exemple, le procédé de la figure 3 exécute sa sensibilisation de noeud immédiatement avant l'étape de jugement 4, et le procédé de la figure 3 exécute sa sensibi- lisation de noeud seulement après le jugement si le noeud atteint est un noeud contrôlable. Néanmoins, les procédés sont sensiblement identiques et la sélection des segments de trajet, telle qu'elle est exécutée dans les procédés tant de la figure 1 que de la figure 3 et dans le procédé décrit dans l'article de Kawai et collaborateurs sera mieux compri- se à l'examen de l'organigramme de la figure 3. Dans la par- tie de génération de configuration du procédé de la figure 3, la fonction de l'étape 5 de justification de ligne de la figure 1 est exécutée. En liaison avec la figure 4, un réseau typique sous analyse peut comprendre des noeuds observables 1 et 2, des noeuds d'opérateurs A, B et C, des noeuds contrôla- bles CN1 à CN4, et des segments de trajet Al à A8 pour la connexion des noeuds. Le fonctionnement étape par étape du 20. processus de la figure 3 dans le contexte du réseau de la figure 4 se comprend mieux à la lecture du tableau 2 sui- vant, o "NE" indique un état non essayé, "C" indique qu'un noeud ou segment de trajet est couramment essayé ou testé, et "E" qu'un noeud particulier ou segment de trajet a été essayé. Les désignations P1-P7' correspondent aux étapes de traitement P1-P7' de la figure 3. Comme on peut le voir dans le tableau 2, le système commence par un noeud observable non essayé, par exemple le noeud 1 et fait un repérage, jusqu'à un noeud contrôlable, par exemple CN1. Ayant atteint un noeud contrôlable, le système génère alors une configuration de signal d'entrée et de sensibilisation qui doit se traduire par une sortie désirée au noeud obser- vable pris en considération. Cela est exécuté dans l'étape de génération de configuration de la figure 3. 21. TABLEAU 2 DRAPEAU OBN CN A IMPOSI- ETAPE1 2 A. C 1 2 3 4 12 3 4 56 7 8 TION DEPART.N P1 C_____ -o -24__ - -. _ - _ ___ - _ -_ Pl c P2,P3 C P-P7.- - _ E _ _ P2,P3 C P4 IC, P2,P3 _ - - - _ - - C PS c P6,P7_ E __.E_: -P2,P3 _ ______ C __ _ -5 ó-_ - P6,P7 E E P2,P3 _ _ E P2,P3 C P6P P2,P3 C -- - - - s -- - - - - - - -- - P4 c P6,07 EE P2,#6,P? j E P2,P6,P7' E P1C P2,P3 C P4 --C ?2,P3 E - -. i 22. TABLEAU 2 (Suite) DRAPEAU OrN ON A DImpoSI- ETAPE 1 2 A C 1 2 3 4 1 2 3 4 5 6 7 8 TIa - - -, - - - DEPART NE NE NE NE' NE NE NE NE E NDEE NE NE NE NE NE - 1- __ - - - _ -- P4 IEME P2',P3 C P5 _ __ _ _ctlC PS -Z _--_- -- - _- _ - - - _- N m P6,P7 E E m_ E P2,3-- _ - _ _ -- _ _ ---_- P2,P6,P7' ( E. P2,P3,P7' FIN - - - - - --- - - - - - Dans le tableau 2, on peut voir que le systcme teste d'abord le traje comportant le noeud observable 1, le noeud d'opérateur A, le noeud contrôlable CNI et les trajets Al et A2. Après ce test, le syst eme revient au noeud observable le long P2,jP6,P7' E du trajet de test, entrant un drapeau E pour chaque segment de trajet, jusqu'à ce qu'il trouve un trajet dIentrance non essayé. Cela se produit immédiatement au noeud A, o le segment A3 de trajet non essayé est détecté. Ainsi, tout d'abord les FIN....L..__ I- --- désignations lE ne sont entrées que pouir quet le systegme teste d'abord le trajet 2.comportant le noeud observable 1, le noeud d'oprateu par A, le noeud A, contrable Csegmen et les trajet A3, et A2. noApreuds ce test, le sysegment dme revient au noeud observable te longstés, opé25 du trajetions suivide test, entrant un retoudrapea du "E" pour chau noque segment de trajet, jusqu'à ce qu'il trouve un trajet d'entrance non essayé. Cela se produit immédiatement au noeud A, off le segment A3 de trajet non essayé est détecté. Ainsi, tout d'abord les désignations "E" ne sont entrées que pour CN1 et le segment de trajet A2. A partir du noeud A, le segment de trajet A3, le noeud B et le segment de trajet A4 sont sélectionnés et testés, opérations suivies par un retour du repérage au noeud B auquel 23. le segment de trajet non essayé A5 est détecté et des dra- peaux "E" sont entrés pour CN2 et le segment de trajet A4. Après essai du segment de trajet A5, le système passe à tous les repérages pour revenir au noeud observable 1 sans trouver un segment de trajet d'entrance non essayé, et des drapeaux "E" sont entrés pour les segments de trajet A5, A3 et Al, CN3, les noeuds d'opérateur A et B et le noeud observable 1. Le noeud observable 2 est alors sélectionné, puis le segment de trajet A6, le noeud d'opérateur C et le seg- ment de trajet A7. A ce stade, le système trouve qu'il y a un noeud B déjà essayé qui est connecté à la dernière branche sélectionnée mais pas encore essayée A7, et le segment de trajet A4 (en même temps que CN2 et le noeud d'opérateur B) sont sélectionnés. Apres essai de ce trajet, un "E" est entré pour le segment de trajet A7 ainsi que de nouveau pour CN2, le segment A4 et le noeud d'opérateur B, et le système achève le test en sélectionnant A8 et CN4. L'indication "E" dans le tableau 2 indique simplement que le noeud d'opérateur B est déjà instauré à la valeur E et n'a pas besoin d'être réinstauré, alors que le noeud CN2 et le segment de trajet A4 ont été réinstaurés à "C" et doivent maintenant être changés en "E". Comme on peut le voir dans la description pré- cédente dans cette opération de sélection des trajets, des drapeaux non essayes sont instaurés pour tous les noeuds et segments de trajet. Les drapeaux non essayes sont changes en drapeaux "C" lorsque les noeuds et seg- ments de trajet sont sélectionnés lors du repérage, et lorsque l'opération de repérage est complète pour tous les segments de trajet qui peuvent partager un segment de trajet particulier, un drapeau "E" est entré qui indique la fin du test de ce segment particulier. Le procédé de la présente invention peut être utilisé non seulement avec des modèles de matériel et de 24. logiciel, mais également avec des modèles de micropro- grammation. Lorsque le procédé de la présente invention est exécuté, il peut être suspendu au cours du proces- sus de la figure 1, puis être repris au point de suspen- sion. La présente invention fournit un procédé per- mettant de générer efficacement des configurations de test par modélisation d'un circuit sous forme d'une combinai- son de noeuds et de trajets et par utilisation des étapes de repérage, de sensibilisation et de justification, tout en employant une configuration séquentielle d'entrées pour sensibiliser tout trajet pouvant comprendre des composants de circuit séquentiel. La présente invention n'est pas limitée aux exemples de réalisation qui viennent d'être décrits, elle est au contraire susceptible de modifications et de varian- tes qui apparaîtront à l'homme de l'art. 25. REVENDICATIONS i - Procédé de test d'un réseau, ce réseau com- prenant un noeud d'opérateur (22), un noeud contrôlable (23; 24; 25) un noeud observable (26) et des segments de trajet pour signaux afin de connecter les noeuds, caractérisé en ce qu'il comprend les étapes suivantes: - le repérage d'un trajet entre le noeud observa- ble (26) et le noeud contrôlable (23, 24; 25) par l'inter- médiaire du noeud d'opérateur (22); - la détermination d'une information de sensi- bilisation afin de sensibiliser le trajet repéré; - la génération d'une séquence de configuration d'entrée pour sensibiliser le trajet repéré, cette séquence comprenant au moins des première et seconde configura- tions d'entrée fournies à des instants différents; - l'application des configurations générées au réseau; et - l'examen des sorties du réseau afin de déter- miner l'existence de défauts dans le réseau. 2 - Procédé selon la revendication 1, caractéri- sé en ce que le réseau comprend un moyen (21) pouvant fonctionner en réponse à un signal d'horloge, et les pre- mière et seconde configurations d'entrée sont fournies lors de premier et second cycles du signal d'horloge avec le second cycle séparé dans le temps du premier cycle d'au moins un cycle d'horloge intermédiaire. 3 - Procédé selon la revendication 1, o le réseau comprenant une pluralité de noeuds contrôlables (23, 24,25) le procédé comprenant des trajets de repérage entre le noeud observable (26) et chacun des noeuds contrôla- oles jusqu'à ce que tous les trajets possibles entre les noeuds observable et contrôlablEsaient été repérés, et la génération de configurations de test pour chaque trajet repéré. 4 - Procédé selon la revendication 3, caracté- risé en ce que pour un trajet repéré qui n'est pas affecté 26. par des composants de circuit séquentiel, l'information d'entrée comprend une configuration d'entrée unique; pour un trajet repéré qui comporte des composants de circuit séquentiel, l'information d'entrée comprend au moins des première et seconde configurations d'entrée fournies à des instants différents; et pour untrajet repéré qui ne comporte lui-même aucun composant séquentiel mais dont la sensibilisation requiert le fonctionnement d'un compo- sant de circuit séquentiel l'information d'entrée comprend au moins des première et seconde configurations d'entrée fournies à des instants différents. - Procédé selon la revendication 1, caractérisé en ce que chaque configuration d'entrée comporte une plura- lité de bits. 6 - Procédé selon la revendication 3, caractéri- sé en ce que le réseau comprend une pluralité de noeuds observablesd'opérateur et contrôlables, l'étape de repé- rage comportant: A. le repérage d'un trajet entre un noeud observa- ble et un noeud contrôlable; B. le retour du noeud observable vers le noeud d'opérateur le plus récent dans le trajet repéré et la détermination du fait que des trajets non repérés exis- tent entre le noeud d'opérateur précédent et l'un quelcon- que des noeuds contrôlables; C. dans le cas o un trajet non repéré existe entre le noeud d'opérateur précédent et un noeud contrôla- ble, le repérage du trajet non repéré; D. dans le cas o un trajet non repéré existe entre le noeud d'opérateur précédent et un noeud contrôla- ble, le retour vers le noeud observable jusqu'au noeud suivant le plus récent dans le trajet entre le noeud obser- vable et le dernier noeud contrôlable jusqu'auquel un trajet a été repéré; E. la répétition des étapes B-D jusqu'à ce que 27. tous les trajets entre le noeud observable et n'importe quel noeud contrôlable aient été repérés; F. la sélection d'un autre noeud observable;et G. la répétition des étapes A-F jusqu'à ce qu'il y ait eu repérage de tous les trajets du réseau. 7 Procédé de génération de configurations d'entrée pour le test d'un réseau, ce réseau comportant un noeud d'opérateur (22), un noeud contrôlable (23; 24; 25), un noeud observable (26) et des segments de trajet de si- lo gnaux pour connecter les noeuds, caractérisé en ce qu'il comprend les étapes suivantes: - le repérage d'un trajet entre le noeud obser- vable et le noeud contrôlable en passant par le noeud d'opé- rateur; - la détermination d'une information de sensibi- lisation afin de sensibiliser le trajet repéré; et - la génération d'une séquence de configuration d'entrée pour sensibiliser le trajet repéré, cette séquen- ce comportant au moins des première et seconde configurations d'entrée fournies à des instants différents. 8 - Procédé selon la revendication 7, caracté- risé en ce que le réseau comprend un moyen (21) pouvant fonc- tionner en réponse à un signal d'horloge, et les première et seconde configurations d'entrée sont fournies lors de premier et second cycles du signal d'horloge, avec le second cycle séparé dans le temps du premier cycle d'au moins un cycle d'horloge intermédiaire. 9 - Procédé selon la revendication 7, caracté- risé en ce que le réseau comporte une pluralité de noeuds contrôlables, le procédé comprenant des trajets de repéra- ge entre le noeud observable et chacun des noeuds contrôla- bles, jusqu'à ce que tous les trajets possibles entre les noeuds observable et contrôlables aient été analysés et la génération de configurations de test pour chaque trajet repéré. 28. - Procédé selon la revendication 8, carac- térisé en ce que pour un trajet repéré non affecté par les composants de circuit séquentiel, l'information d'entrée comprend une configuration d'entrée unique; pour un trajet repéré comprenant des composants de circuit séquentiel, l'information d'entrée comprend au moins des première et seconde configurations d'entrée fournies à des instants différents; et pour un trajet repéré qui ne comporte lui- même aucun composant séquentiel mais dont la sensibilisa- tion requiert le fonctionnement d'un composant de cir- cuit séquentiel, l'information d'entrée comprend au moins des première et seconde configurations d'entrée fournies à des instants différents. 11 - Procédé selon la revendication 7, caractéri- sé en ce que chaque configuration d'entrée comporte une pluralité de bits. 12 - Procédé selon la revendication 9,caractéri- sé en ce que le réseau comprend une pluralité de noeuds observables, d'opérateur et contrôlables, et l'étape de repérage comporte: A. le repérage d'un trajet entre un noeud obser- vable et un noeud contrôlable; B. le retour vers le noeud observable jusqu'au noeud d'opérateur précédent, le plus récent dans le trajet repéré et la détermination du fait qu'un trajet quelconque non repéré existe entre le noeud d'opérateur précédent, et l'un quelconque des noeuds contrôlables; C. dans le cas o un trajet non repéré existe entre le noeud d'opérateur précédent et un noeud contrôla- ble, le repérage du trajet non repéré; D. dans le cas o aucun trajet non repéré n'exis- te entre le noeud de l'opérateur précédent et un noeud contrôlable, le retour vers le noeud observable jusqu'au noeud précédent le plus récent dans le trajet entre le noeud observable et le dernier noeud contrôlable jusqu'au- quel un trajet a été repéré; 29. E. la répétition des étapes B-D jusqu'à ce que tous les trajets entre le noeud observable et l'un quelconque des noeuds contrôlables aient été repérés; F. la sélection d'un autre noeud observable et G. la répétition des étapes A-F jusqu'à ce que tous les trajets du réseau aient été repérés.