FR 2548382 A1 19850104 FR 8409211 A 19840613 La présente invention concerne un dispositif de test d'un circuit numérique. Un circuit numérique est un dispositif destiné à fournir des signaux numériques de sortie sous l'effet de signaux numériques d'entrée Un tel circuit numérique prend de façon caractéristique la forme d'un circuit de mémoire numérique ou d'un circuit logique numérique En particulier, un circuit de mémoire numérique est un dispositif destiné à enregistrer des données numériques dans divers éléments de 10 mémoire auxquels on peut accéder pour effectuer une lecture sous la dépendance de signaux d'adresse de mémoire Dans un circuit de mémoire vive, on peut changer les données enregistrées dans un élément de mémoire quelconque, par des moyens électriques, en conformité avec de nouvelles données 15 déterminées Dans un circuit de mémoire morte, on ne peut changer de façon réversible, par des moyens électriques, les données qui sont enregistrées. D'autre part, un circuit logique numérique est un dispositif, qu'on trouve de façon caractéristique dans un système de traitement de données, qui est destiné à traiter des données d'entrée numériques pour produire des données de sortie numériques conformément à des règles de calcul logique déterminées De tels circuits logiques se répartissent de façon générale en deux catégories: les circuits séquen25 tiels et les circuits combinatoires Les circuits logiques séquentiels comportent des éléments de mémoire fonctionnant sous la dépendance d'une horloge (ou des registres fonctionnant sous la dépendance d'une horloge) et ils accomplissent 2548382 ' leurs fonctions ou leurs calculs logiques déterminés en synchronisme avec une horloge externe qui fournit un rythme de commande à leurs éléments de mémoire Les circuits logiques combinatoires n'ont pas d'éléments de mémoire et ils n'exi5 gent pas une commande de rythme au moyen d'une horloge, bien qu'habituellement de nouvelles données soient appliquées à l'entrée d'un circuit logique combinatoire à chaque nouveau cycle d'une horloge qui commande le fonctionnement de circuits logiques séquentiels dans le même système de traite10 ment de données Ainsi, dans tous les cas, pendant chaque cycle de l'horloge, un circuit logique accomplit des opérations de calcul déterminées sur les données numériques, conformément à des règles déterminées Les données d'entrée comme de sortie pour un cycle donné de l'horloge prennent respectivement la forme d'un groupe de bits d'entrée et d'un groupe de bits de sortie, qu'on appelle couramment respectivement un mot d'entrée et un mot de sortie Les données de sortie d'un cycle donné peuvent correspondre au résultat désiré du traitement des données d'entrée de ce cycle (logi20 que combinatoire) et/ou d'un ou de plusieurs cycles antérieurs (logique séquentielle). Cependant, un circuit logique fabriqué par des techniques classiques peut avoir des défauts logiques indésirables, c'est-à-dire des écarts de certains des mots de données de sortie réels par rapport aux mots de sortie désirés qui sont fixés par les règles de transformation, ceci résultant d'une ou de plusieurs imperfections dans le circuit, comme un défaut "collé" (un transistor qui, de façon incorrecte, est toujours conducteur ou bloqué indépendamment 30 du signal d'entrée). Une technique de test, qui ne nécessite aucune conception spéciale du circuit logique lui-même pour faciliter le test, consiste simplement à appliquer une séquence de nombreux mots d'entrée prédéterminés (vecteurs de test) et à 35 comparer le mot de réponse de sortie du circuit logique pour chacun de ces mots d'entrée, avec le mot attendu, exempt de défaut, correspondant Toute discordance entre un bit quelconque d'un tel mot de réponse de sortie et le bit correspondant du mot attendu correspondant indique la présence d'au moins un défaut logique dans le circuit logique Un inconvénient important de cette technique réside dans le coût supplémentaire qui correspond au matériel supplémentaire nécessaire et au temps de fonctionnement supplémentaire qui est exigé pour générer et pour enregistrer les vecteurs de 10 test exigés, et pour les appliquer séquentiellement au circuit logique, ainsi que dans le coût supplémentaire en temps de fonctionnement qui est nécessaire pour comparer séquentiellement tous les mots de sortie avec le mot correspondant parmi les mots attendus Ce dernier inconvénient est particulière15 ment important du fait que le nombre nécessaire de tels vecteurs de test est de façon caractéristique de l'ordre de plusieurs centaines ou plusieurs milliers pour donner une probabilité raisonnablement élevée (de façon caractéristique d'au moins 80 %) de détecter un défaut dans le circuit logi20 que, c'est-à-dire pour assurer une détection raisonnablement complète des défauts. Diverses techniques ont donc été proposées dans l'art antérieur pour concevoir spécialement les circuits logiques eux-mêmes d'une manière qui facilite le test pour 25 détecter la présence de défauts logiques dans ces circuits. En général, ces techniques ont pour caractéristique de concevoir le circuit de façon à rendre un nombre relativement élevé de noeuds de circuit internes directement accessibles pour le test, tout en n'ajoutant au circuit qu'un petit nombre de 30 bornes ou de broches d'accès externes supplémentaires, ou même éventuellement aucune broche supplémentaire, comme il est expliqué par exemple de façon plus détaillée dans le brevet US 4 320 509. En particulier, le brevet US 3 783 254 décrit un 35 circuit logique qu'on peut placer dans un mode de test dans lequel toutes les bascules associées à des noeuds internes sélectionnés sont placées dans une configuration formant un ou plusieurs registres à décalage série à partir desquels des données peuvent être décalées en série hors des bascules dans un but de lecture et de comparaison avec la réponse exempte de défaut qui est attendue Un inconvénient important de cette technique consiste en ce qu'elle ne teste pas le circuit à sa pleine vitesse de fonctionnement nominale, ce qui fait que des défauts se produisant en haute fréquence 10 (en alternatif) peuvent ne pas être détectés De plus, le test effectué selon cette technique a l'inconvénient de prendre beaucoup de temps, à cause de la nécessité d'examiner bit par bit un train de bits de sortie relativement long. Un autre exemple de technique destinée à améliorer 15 l'aptitude au test fait appel à la génération d'un mot de signature d'une longueur d'un ou de plusieurs bits, en échantillonnant les signaux de parité présenrts sur un ou plusieurs noeuds internes donnés, à différents moments pendant le fonctionnement, et en additionnant arithmétiquement 20 ensemble les signaux de parité pour chaque noeud, afin de former un bit de parité comprimé dans le temps pour chaque noeud Une telle technique est décrite par exemple dans le brevet US 4 320 509 précité Toute discordance entre le mot de signature résultant qui est formé par la chaîne de tels 25 bits de parité comprimés pour chaque noeud, et le mot de signature exempt de défaut qui est attendu fournit l'information d'erreur désirée concernant les données présentes sur chacun des noeuds internes Cette technique présente les inconvénients importants qui consistent en ce qu'elle exige un nombre excessivement élevé de bornes diaccès supplémentaires et en ce qu'on ne peut pas tester aisément les circuits de test ajoutés eux-mêmes, pour trouver leurs propres erreurs. En outre, des problèmes similaires et des problè35 mes supplémentaires apparaissent dans le test de circuits de mémoire numériques Dans de tels circuits de mémoire, il peut apparaître de façon générale des défauts qui sont fonction des configurations de données; c'est-à-dire qu'une erreur apparaît ou n'apparaît pas dans un élément de mémoire donné en fonction de la configuration de données instantanée qui est enregistrée au moment considéré dans d'autres éléments de la mémoire Par conséquent, le test de circuits de mémoire pour la recherche de défauts présente généralement un problème qui est encore plus complexe que celui de la recherche de 10 défauts dans des circuits logiques de taille similaire. Il serait donc souhaitable de disposer d'un moyen permettant d'obtenir une probabilité de détection de défaut raisonnablement bonne pour un circuit numérique, qui atténue les problèmes de l'art antérieur. On parvient à ceci, conformément à l'invention, en réalisant un circuit numérique ayant un premier ensemble de bornes d'entrée destinées à recevoir des signaux numériques d'entrée appliqués au circuit numérique pendant chaque cycle de fonctionnement du circuit, et un second ensemble de bornes 20 de sortie destinées à fournir des signaux numériques de sortie du circuit numérique pendant chacun de ces cycles, et des moyens multiplexeurs d'entrée connectés de façon à recevoir à la fois des signaux numériques d'entrée normaux et les signaux de sortie, et à appliquer aux bornes d'entrée du cir25 cuit numérique les signaux d'entrée normaux pendant chaque cycle de fonctionnement normal du circuit, et à appliquer aux bornes d'entrée du circuit numérique les signaux de sortie pendant des cycles successifs d'une opération de test comportant un ensemble de cycles,pour détecter des défauts dans le 30 circuit numérique. L'invention est basée sur la découverte du fait qu'on peut parvenir à une probabilité de détection de défaut ("couverture de défaut") raisonnablement bonne pour un circuit numérique, tel qu'un circuit logique numérique, en employant des moyens de réaction pour effectuer une opération de test comportant un grand nombre de cycles (de façon caractéristique environ 250 de ces cycles pour un circuit logique multiplicateur capable de multiplier une paire de nombres à 16 bits), pendant laquelle le signal de sortie de 5 chaque cycle du circuit numérique est transmis en réaction pour constituer le signal d'entrée du circuit numérique pour le cycle immédiatement suivant Pendant les cycles initiaux de l'opération de test, le signal d'entrée qui est appliqué au circuit numérique est un mot prédéterminé, et pendant le 10 cycle final de l'opération de test, le mot de sortie du circuit numérique est comparé avec le mot de sortie attendu (exempt de défaut) prédéterminé Toute discordance entre un bit quelconque du mot de sortie du circuit numérique pendant le cycle final de l'opération de test et le bit correspondant 15 du mot de sortie attendu indique l'existence d'au moins un défaut dans le circuit numérique Le circuit numérique peut prendre la forme d'un circuit de mémoire ou d'un circuit logique. Ainsi, conformément à un mode de réalisation de 20 l'invention, un circuit numérique, comportant des bornes d'entrée de données destinées à recevoir des mots de données d'entrée et des bornes de sortie de données destinées à fournir des mots de données de sortie, comprend un multiplexeur d'entrée qui, pendant chaque cycle de fonctionnement normal, 25 permet l'application d'un mot d'entrée de données normal, en tant que signal d'entrée, aux bornes d'entrée de données du circuit numérique et qui, pendant le cycle initial (ou les cycles initiaux) d'une opération de test, permet l'application d'un mot (ou de plusieurs mots) de données d'entrée de 30 test prédéterminé, en tant que signal d'entrée, aux bornes d'entrée de données du circuit numérique, le multiplexeur d'entrée étant connecté par l'intermédiaire d'un dispositif de traitement de données de réaction aux bornes de sortie de données du circuit numérique de façon que, pendant l'opéra35 tion de test, mais après les cycles initiaux mentionnés ci- dessus, des données de sortie fournies par les bornes de sortie-de données du circuit numérique soient renvoyées par l'intermédiaire du dispositif de traitement de réaction, en tant que données d'entrée de test, aux bornes d'entrée de données du circuit numérique Il existe en outre avantageusement un détecteur de signature connecté de façon à recevoir et à détecter le mot de données de sortie du circuit numérique et à comparer, pendant un cycle prédéterminé de l'opération de test, chaque bit des données du mot de sortie du 10 circuit numérique avec un bit correspondant des données de sortie attendues, ce qui fait que le détecteur de signature génère un signal de sortie de détecteur de signature affirmatif si et seulement si chaque bit du mot de données de sortie du circuit numérique, pendant le cycle prédéterminé de l'opération de test, est égal au bit correspondant du mot de données de sortie prédéterminé attendu. Dans un mode de réalisation spécifique de l'invention, le circuit logique prend la forme d'un circuit logique multiplicateur destiné à calculer le produit arithmétique de 20 deux nombres binaires d'entrée, chacun d'eux se présentant sous la forme d'un mot d'entrée ayant m bits et représentant le nombre binaire d'entrée respectif, en notation binaire en complément à 2 On entend par "complément à 2 " le fait que le bit de plus fort poids a un poids de -2 n-1 au lieu de 25 2 N 1 comme en notation binaire ordinaire, tandis que les bits restants ont le même poids qu'en notation binaire ordinaire Le circuit multiplicateur comporte un ensemble de bornes de sortie, en nombre n, c'est-à-dire que chaque mot de sortie comporte N bits Le circuit multiplicateur compor30 te également un ensemble différent ( 2 N + 1) de bornes d'entrée: un jeu de N bornes d'entrée pour recevoir en tant que données d'entrée l'un des nombres binaires (multiplicande), un autre jeu de N bornes d'entrée pour recevoir en tant que données d'entrée l'autre nombre binaire (multiplicateur), 35 et une borne de commande d'entrée destinée à recevoir un signal de commande d'Ordre Supérieur Ce signal de commande d'Ordre Supérieur sélectionne pour l'application aux bornes de sortie du circuit multiplicateur soit les N premiers bits (fort poids), soit les N bits suivants (faible poids) du produit arithmétique en notation binaire en complément & 2 qui est calculé par le circuit logique multiplicateur Un multiplexeur d'entrée est conçu de façon à appliquer des données d'entrée au circuit logique, afin que pendant l'opération de calcul normale du- circuit multiplicateur, un pre10 mier groupe de bornes d'entrée du circuit multiplicateur reçoive l'un des nombres binaires, à partir des entrées principales de la puce, l'autre groupe reçoive l'autre nombre binaire, et la borne d'entrée de commande unique reçoive le signal de commande d'Ordre Supérieur Le multiplexeur d'entrée est en outre conçu de façon que, pendant une opération de test comprenant un grand nombre de cycles du circuit multiplicateur (le nombre de cycles étant de façon caractéristique approximativement égal au nombre de vecteurs de test qui seraient nécessaires pour la même probabilité de 20 détection de défaut), les N bits de la sortie du circuit multiplicateur, pendant chaque cycle, soient renvoyés avec une distribution prédéterminée pour devenir les 2 N + 1 bits de l'entrée du circuit pour le cycle immédiatement suivant. Cependant, pendant les trois premiers cycles de l'opération 25 de test, un mot d'entrée prédéterminé est appliqué par l'intermédiaire du multiplexeur aux 2 N + 1 bornes d'entrée du circuit multiplicateur Après environ 2 K cycles, l'opération de test accomplit son cycle final et un détecteur de signature est alors validé par un compteur des cycles, grâce à 30 quoi le mot de sortie du circuit logique qui existe à ce moment est comparé bit à bit avec le mot de sortie correct, c'est-à-dire la valeur attendue, exempte de défaut, du produit arithmétique désiré (du multiplicande et du multiplicateur) en notation binaire Si et seulement si chaque bit du 35 mot de sortie du circuit logique concorde alors avec le bit correspondant du mot attendu, un signal de sortie de détecteur de signature affirmatif (signal à un bit) est alors mémorisé dans une bascule de sortie pour indiquer l'absence de détection de défauts logiques quelconques dans le circuit multi5 plicateur, et donc l'absence réelle probable de tels défauts. L'invention sera mieux comprise à la lecture de la description qui va suivre de modes de réalisation et en se référant aux dessins annexés sur lesquels: La figure 1 est un schéma d'un circuit logique multiplicateur équipé de moyens de test conformes à un mode de réalisation spécifique de l'invention; La figure 2 est un schéma d'un exemple de réalisation d'un multiplexeur d'entrée utile pour la mise en oeuvre de l'invention; La figure 3 est un schéma d'un exemple de réalisation d'un détecteur de signature utile pour la mise en oeuvre de l'invention; La figure 4 est un schéma d'un exemple de réalisation d'une bascule de sortie utile pour la mise en oeuvre de 20 l'invention; La figure 5 est un schéma d'un dispositif de traitement de réaction utile pour la mise en oeuvre de l'invention; La figure 6 est un schéma d'un autre dispositif 25 de traitement de réaction utile pour la mise en oeuvre de l'invention; et La figure 7 est un schéma d'encore un autre dispositif de traitement de réaction utile pour la mise en oeuvre de l'invention. Comme le montre la figure 1, un circuit multiplicateur équipé de moyens de test conformément à un mode de réalisation spécifique de l'invention consiste en un circuit logique multiplicateur 100 qui comprend un générateur d'horloge 110, un multiplexeur d'entrée 200, des moyens de traite35 ment de réaction 210, un compteur binaire à 8 étages 300, un détecteur de signature 400 et une bascule de sortie 500. Sous la dépendance d'un signal binaire d'ordre d'opération de test T, le multiplexeur 200 sélectionne, pour l'application aux bornes d'entrée OS, X et Y du circuit multiplicateur 100, l'un des signaux d'entrée os et os', l'un des signaux d'entrée x et x' et l'un des signaux d'entrée y et y', respectivement, comme on le décrira ci-après de façon plus complète Le circuit logique multiplicateur 100 est conçu de façon à recevoir des signaux d'entrée sur des premier et second groupes de bornes d'entrée de données, portant respectivement les références X et Y Une séquence d'impulsions d'horloge externe O attaque un générateur d'horloge 110 qui fournit, sous l'effet du signal d'horloge externe 0, des séquences d'horloge 01 et 02 dont lesphases ne se chevauchent 15 pas, dans le but de commander les caractéristiques temporelles du fonctionnement du circuit logique 100, comme il est connu dans la technique. A titre d'exemple, le circuit logique multiplicateur 100 comporte seize bornes d'entrée dans le premier grou20 pe X et seize dans le second groupe Y Pendant chaque cycle (d'horloge) de fonctionnement, le premier groupe de bornes d'entrée X = ( 0, X 1, X 2, X 15) reçoit un premier mot de données d'entrée x = (x O, x 1, x 2, x 15), et le second groupe de bornes d'entrée Y = (Yo 0, YI, Y 15) reçoit un second 25 mot de données d'entrée y = (Yo Y 10, Y 2 'Yl Ceci signifie que la borne d'entrée X O reçoit x O; X 1 reçoit x 1, X 15 reçoit x 15; Y O reçoit y O; Y 1 reçoit Y 1,,; et Y 15 reçoit Y 15 ' Ces deux mots, x et y, contiennent ainsi 16 bits chacun et on peut considérer que chaque mot représente 30 un nombre à seize chiffres en notation binaire, avantageusement sous forme en complément à 2, pour représenter des nombres positifs et négatifs, comme il est connu dans la technique. Le circuit multiplicateur 100 a pour but de pro35 duire pendant le fonctionnement normal un mot de sortie z = (Zo, Z 1, z 2, z 15), qui représente en notation binaire sous forme en complément à 2 le produit arithmétique z = xy des premier et second mots d'entrée, considérés comme des nombres binaires à seize chiffres Le premier mot d'entrée x 5 est donc le "multiplicande" et le second, y, le "multiplicateur" Il n'y a cependant que seize bornes de sortie Z, ce qui fait que le circuit multiplicateur 100 peut produire un mot de sortie z ayant seulement une longueur de seize bits, c'est-à-dire un nombre en notation binaire ne contenant que 10 seize chiffres Ainsi, du fait que le produit arithmétique z (en forme en complément à 2) comporte trente-et-un chiffres, z = (zo O zl z 2 z 30), le mot de sortie z ne peut repré(z 0,z 1, 2, 30 senter, à un instant quelconque, qu'une partie (la moitié) du produit arithmétique désiré Par conséquent, le circuit mul15 tiplicateur 100 comporte une borne d'entrée de sélection d'Ordre Supérieur OS qui est destinée à recevoir un signal de sélection d'Ordre Supérieur os, de façon que lorsque cette borne OS reçoit par exemple un O binaire, la sortie z présente les seize bits de fort poids du produit arithméti20 que z = xy (avec 15 = z 30, c'est-à-dire le bit de signe) 15 z 30,9 ige et lorsque la borne OS reçoit un 1 binaire, la sortie Z présente les quinze bits de faible poids du produit z = xy (à l'exception du fait qu'à nouveau z 15 = z 30) Comme il est indiqué sur la figure 1, dans un but de test le circuit 100 25 comporte le multiplexeur d'entrée 200 (figure 2), les moyens de réaction de distribution 210, le compteur binaire à 8 étages 300 qui compte jusqu'à 255 (= 28-1), le détecteur de signature 400 (figure 3) et la bascule de sortie 500 (figure 4), tous ces éléments réagissant au signal binaire d'ordre 30 d'opération detest T Lorsque T = 1, c'est-à-dire que T est à l'état logique binaire HAUT, le système représenté sur la figure 1 accomplit des cycles de fonctionnement normaux; lorsque T = 0, c'est-à-dire que T est à l'état logique BAS, le système accomplit des cycles de fonctionnement de test, 35 comme on le décrira ci-après de façon plus complète. Il faut noter que l'ensemble formé par le circuit logique 100 avec le multiplexeur 200, les moyens de réaction 210, le compteur 300, le détecteur de signature 400 et la bascule de sortie 500, peut prendre la forme de circuits à semiconducteurs intégrés dans une seule puce de silicium semiconducteur Pendant le fonctionnement normal (T = 1), le multiplexeur d'entrée 200 applique aux bornes d'entrée respectives OS, X et Y du circuit multiplicateur 100 un signal d'entrée binaire de sélection d'Ordre Supérieur, os, 10 le premier mot de données d'entrée x et le second mot de données d'entrée y Les bornes de sortie Z appliquent alors à des moyens d'utilisation (non représentés) un mot de sortie Z qui est représentatif du produit xy Pendant ce fonctionnement normal, le compteur 300 n'accomplit aucune fonc15 tion de comptage. Pendant chaque cycle de fonctionnement de test (T = 0), le multiplexeur d'entrée 200 applique aux bornes d'entrée OS, X et Y des données de réaction os', x' et y' qui sont obtenues à partir des données de sortie z = (zo, z 1, z 15), provenant des bornes de sortie Z par l'intermédiaire des moyens de réaction de distribution 210, conformément au tableau suivant: Sortie Renvoie un signal vers la ou les bornes d'entrée z O OS, X 7, Y 13 z 1 X 2, Yll z 2 x 1 y 3 z 2 X 12 ' Y 3 Z 3 X 8 Y 5 Z 4 X 4 ' Y 12 z 5 X 10, Y 6 z 6 X 15, Y 2 z 7 XO' Y 9, Y 10 z 8 X 3, Y 1 Z 9 X 13, Y 8 z O l X 11 ' Y 7 Zll X 6, Y 4 z 12 Xi, Y 14 z 13 X 14, Y O Z 14 X 9, Y 15 z 15 x 5 Ainsi: z O =os' = x = Y 13 ' Zl = = y 1 l' ' ' Z 15 X=, les variables affectées du symbole prime désignant des signaux de réaction qui proviennent des bornes de sortie Z du circuit multiplicateur 100 Par conséquent, pendant 25 une opération de test, le multiplicateur 200 applique os' à la borne d'entrée OS du multiplicateur, x' à X, et y', à Y, c'est-à-dire x 6 à X 0, x 1 à X 1, x 1 5 X 15 ' YO YO Yl à Y 1,, et Y 15 à Y 15 Les moyens de traitement de réaction 210, représentés sur la figure 5, peuvent donc 30 prendre simplement la forme d'un câblage de distribution, avec une distribution d'une borne vers deux (sauf pour z O et z 7 pour lesquels la distribution est d'une borne vers trois, et pour z 15 qui n'attaque qu'une seule borne) Les données d'entrée appliquées à OS, X et Y pendant chaque cycle de fonctionnement de test (sauf pour les trois pre5 miers cycles) sont donc une représentation avec une certaine forme de distribution, conformémentau tableau, des données de sortie Z du cycle de test immédiatement précédent. Pour les trois premiers cycles de l'opération de test, le multiplexeur d'entrée 200 est conçu de façon à 1 I appliquer aux bornes d'entrée OS, X et Y un mot d'entrée d'initialisation présélectionné, soit à titre d'exemple: os = 0, x = ( 0, O, O, O, O, O, 1, 1, O, 1, 1, 1, 0, 1,, O,, 1, 1), et y = ( 0, 1, 1, 1, 1, O, 1, 1, 1, O, O, 0, 1, O, 1, 0), comme il est décrit ci-dessous de façon plus détaillée. 15 On a obtenu ce mot d'initialisation, et les distributions de réaction particulières indiquées dans le tableau ci-dessus, en procédant par approximations successives, et on a trouvé qu'ils donnaientune bonne probabilti détection de défaut (plus de 95 %) au cours de l'opération de test (de 20 255 cycles) qui est décrite. Après les trois cycles initiaux de l'opération de test, les moyens de réaction 210 appliquent au multiplexeur d'entrée 200 une représentation sous forme distribuée du mot de sortie z du cycle immédiatement précédent et le mul25 tiplexeur applique à son tour cette représentation distribuée aux bornes d'entrée OS, X et Y D'autre part, sous l'effet du signal d'ordre d'opération de test T = O, le compteur à 8 étages compte le nombre de tels cycles de test jusqu'à 28 -1 = 255 cycles et il applique ensuite un signal de sortie de compteur de validation (C = 1) au détecteur de signature 400 Sous l'effet de ce signal de validation, le détecteur de signature compare chaque bit du mot de sortie à 16 bits z du cycle d'opération de test final ( 255 ième cycle) avec la valeur attendue (exempte de défaut) 35 correspondante qui est déterminée par exemple par simulation sur le simulateur logique utilisé précédemment pour la conception et le test de la logique du multiplicateur Si et seulement si aucune discordance n'est trouvée, c'est-à-dire si chaque bit du mot de sortie z concorde avec le bit cor5 respondant du mot de sortie attendu, le détecteur de signature 400 applique à la bascule 500 un signal de sortie de détecteur de signature affirmatif (sous forme d'impulsion) S = l; dans le cas contraire, S = O La bascule 500 fournit alors un signal de résultat de test affirmatif R = 1 qui se 10 prolonge aussi longtemps que le signal d'ordre de test T continue à correspondre à l'opération de test (T = O). Lorsque le fonctionnement normal est repris (T = 1), la bascule 500 est restaurée, ce qui fait que le signal de résultat de test R retourne à R = O, et le compteur 300 est éga15 lement remis à 0. On notera que la mise en oeuvre de cette technique d'auto-test ne nécessite que deux broches d'entrée/sortie supplémentaires, c'est-à-dire une pour chacun des signaux T et R. Bien que la sélection des distributions de réaction et du mot d'entrée d'initialisation ait été faite par approximations successives, il existe un certain nombre de principes généraux susceptibles de guider le processus de sélection On doit choisir la réaction de façon que les mots 25 de sortie z ne se répètent pas pendant les cycles de l'opération de test, et de façon que pendant des cycles de test, la chalne de bits de chaque mot de produit xy ne soit pratiquement corrélée avec la chaîne de bits dans le mot de sortie z qui a généré ce produit xy par réaction. On a trouvé par simulation sur ordinateur que lorsque le circuit multiplicateur est testé conformément à l'invention en utilisant un nombredonné de cycles d'opération de test, la probabilité de détection de défaut résultante est approximativement la même que celle qu'on peut 35 obtenir à partir du même nombre donné de vecteurs de test générés de façon aléatoire conformément à l'art antérieur; l'invention a cependant l'avantage de nécessiter moins de matériel et/ou moins de temps pour le test En outre, du fait que l'opération de test conforme à l'invention peut être accomplie à une vitesse de fonctionnement égale à celle du fonctionnement normal du circuit, le test conformément à l'invention permet de détecter des défauts dynamiques (c'est-à-dire des défauts qui n'apparaissent qu'à des vitesses au moins aussi élevées que la vitesse de fonctionnement 10 normal), aussi bien que des défauts statiques. On peut procéder de la manière suivante pour initialiser et accomplir l'opération de test: premièrement, on arrête la séquence d'horloge O à sa valeur basse; on fixe ensuite os = O, c'est-à-dire qu'on fixe OS au potentiel de 15 la masse On fixe ensuite xo, x 1, x 15 et YO' Y 1,l''Y 15 à leurs valeurs d'initialisation prédéterminées On fixe ensuite T à la valeur 1 A ce moment, si R = 1, le circuit de test luimême est défectueux et on doit arrêter le test. Si R = O, on applique ensuite au moins trois transitions de 20 l'état bas vers l'état haut au générateur d'horloge 110, dans le but d'initialiser tous les registres internes du circuit multiplicateur On arrête ensuite l'horloge 0, on fixe T à O et on met ensuite en fonction l'horloge O de façon que le circuit logique 100 accomplisse automatique25 ment des cycles d'opération de test Après 255 cycles de l'horloge 0, en comptant à partir de l'instant auquel T a été fixé à O, la sortie R (qui a été restaurée à R = O lorsque T = 1) doit passer à R = 1 si le circuit fonctionne correctement. La figure 2 représente un exemple de réalisation du multiplexeur d'entrée 200 Ce multiplexeur est avantageusement réalisé en technologie MOS (métal-oxyde-semiconducteur) et il comprend des transistors de commutation connectés mutuellement en-parallèle, M 1 et M 2 destinés à appliquer des données d'entrée à la borne OS, M 3 et M 4 des- tinés à appliquer un signal d'entrée aux bornes XO, et ainsi de suite Les électrodes de grille des transistors M 1 et M 3 sont connectées de façon à recevoir le signal d'ordre de test T, tandis que les électrodes de grille de M 2 et M 4 sont connectées de façon à recevoir le complément logique de T, par l'intermédiaire d'un inverseur I Ainsi, lorsque T = O, M 1 et M 8 sont bloqués, tandis que M 2 et M 4 sont conducteurs; et lorsque T = 1, M 1 et M 3 sont conducteurs tandis que M 2 et M 4 sont bloqués Ainsi, lorsque T = O, le multi10 plexeur 200 applique le signal z O à la borne OS et le signal z 7 à la borne X; et lorsque T = 1, le signal os est appliqué à OS et le signal x O est appliqué à X 0. La figure 3 représente un exemple de réalisation du détecteur de signature 300 Ce détecteur comprend une 15 porte ET à 17 bornes d'entrée, portant la référence A. L'une des 17 bornes d'entrée de cette porte reçoit le signal de validation C qui provient du compteur, 4 autres bornes parmi ses 17 bornes d'entrée reçoivent respectivement les signaux de sortie z O, z 4, Zll et z 13 qui proviennent du circuit logique 100 par l'intermédiaire d'un groupe d'inverseurs I', de façon à appliquer ainsi le complément logique de chacun des signaux zo, z 4, Zll et z 13 à une borne respective parmi ces 4 bornes, et les 12 bornes d'entrée restantes de la porte ET A reçoivent un signal distinct parmi les douze 25 signaux de sortie restants (z 1, z 2, z 3, z 5 z 56, z 7, z 8, z 9, z 10, z 12, z 14, z 15) provenant du circuit logique 100. Ainsi, si et seulement si C = 1 alors que le mot z = (ZO, Zl, z 15) est simultanément égal à la valeur attendue exempte de défaut ( 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 30 0, 1, 0, 1, 1), la sortie S de la porte ET A prend la valeur S = 1; dans le cas contraire, S = O Le détecteur 300 représenté sur la figure 3 fonctionne donc à la manière du détecteur de signature désiré. La figure 4 représente un exemple d'un schéma logique pour la bascule 500 Cette bascule comprend une paire de portes NON-OU N 1 et N 2 en couplage croisé Le signal d'ordre de test T est appliqué à une entrée de N 1 et le signal de sortie de signature S est appliqué à une entrée de N 2 Le signal de sortie de résultat de test R de la bascule 500 passe de l'état logique bas (R = O) à l'état logique haut (R = 1) si et seulement si S passe à l'état haut à un moment auquel T est à l'état bas (S = 1 pendant que T = O), et ce signal de résultat de test R demeure ensuite à l'état haut (R = 1) après que S est retourné à l'état logique bas 10 ( 50), aussi longtemps que T reste à l'état bas (T = O); mais lorsque T passe à l'état haut (T = 1), le signal de résultat de test R passe à l'état bas (R = 0) Ainsi, la bascule 500 ne peut passer à l'état haut (R = 1) que pendant une opération de test (T = 0), c'est-à-dire lorsque S passe 15 à l'état haut, et le résultat de test R de la bascule 500 demeure à l'état haut (R = 1) pendant tout le reste de l'opération de test, indépendamment de changements ultérieurs de S, exactement comme on le désire pour mémoriser le signal de sortie S du détecteur de signature 400. Il faut noter que les moyens de traitement de réaction 210 du type simple à distribution qui sont représentés sur la figure 5 ont la propriété qui consiste en ce que deux signaux de sortie (ou plus) du dispositif de traitement sont mutuellement égaux pendant toute l'opération de test. 25 Ainsi, par exemple, pendant toute l'opération de test, des contraintes sont imposées aux signaux de sortie que le multiplexeur d'entrée 200 applique en tant que signaux d'entrée au circuit logique multiplicateur 100, c'est-à-dire qu'on a: os' = x'7 = y'13, x'2 = y'1 l, etc De telles contraintes imposées aux signaux d'entrée peuvent constituer une limitation indésirable de l'étendue de l'opération de test Pour éviter de telles contraintes, on peut utiliser d'autres moyens de traitement de réaction 610 et 710, représentés respectivement sur les figures 6 et 7 Les signaux de réac35 tion résultants ne correspondent plus au tableau précédent. Plus précisément, les moyens de traitement de réaction 610 (figure 6) utilisent des portes OU 611, 612, 613 624 pour faire disparaître les contraintes en détruisant les identités et en introduisant des inégalités de signaux 5 entre os', x 17 et x'13 ' entre x'2 et y'11 entre x 12 et y'3, etc Les portes OU sont de préférence branchées de façon qu'aucun des signaux z n'attaque plus de trois de ces portes OU, et la majeure partie des signaux zi n'attaque que deux portes OU Selon une variante, les moyens de traite10 ment de réaction 710 (figure 7) utilisent un registre à décalage avec réaction linéaire (bascules synchrones F Fo, FF 1, FF 2, etc) avec des portes OU-EXCLUSIF 711, 712, 713, etc, non seulement pour supprimer les contraintes, mais également pour donner un caractère pseudoaléatoire aux signaux de sortie 15 x' et y' par rapport aux signaux d'entrée z. Bien qu'on ait décrit l'invention en détail en considérant un mode de réalisation spécifique, ce dernier peut faire l'objet de diverses modifications. A titre d'exemple, le circuit logique 100 peut 20 consister en pratiquement n'importe quel type de circuit logique, au lieu d'un multiplicateur, comme un circuit logique combinatoire quelconque dans lequel la voie de réaction ajoutée conformément à l'invention contient des éléments de retard à mémoire se présentant de façon caractéristique sous 25 la forme d'un registre à décalage de réaction linéaire (figure 7), dans le but de retarder la réaction et d'empêcher une condition indésirable d'indétermination due aux incertitudes sur les temps de propagation On peut en outre utiliser l'invention dans des circuits logiques séquentiels 30 ayant des éléments d'enregistrement de données (registres) tels que les données de sortie d'un cycle donné soient entièrement déterminées par les données d'entrée pour un nombre fixe N de cycles de fonctionnement antérieurs Dans le cas de tels circuits logiques, l'initialisation des éléments 35 d'enregistrement de données est effectuée conformément à l'invention, en appliquant au circuit logique un ou plusieurs mots d'initialisation présélectionnés, avec l'un de ces mots appliqué à l'entrée du circuit logique pendant chaque cycle parmi N + 1 cycles d'initialisation successifs On comprend 5 évidemment que la sélection du ou des mots d'initialisation, du nombre de cycles de test et des détails des connexions de réaction variera pour des circuits logiques différents, afin d'obtenir une probabilité de détection de défaut raisonnablement bonne, conformément à l'invention. On peut également utiliser avantageusement l'invention pour concevoir et tester n'importe quel circuit numérique ayant des entrées et des sorties, comme des mémoires vives et des mémoires mortes Dans le cas du test d'un circuit de mémoire vive ayant une telle conception, après l'initialisation de la mémoire avec des données prédéterminées, un dispositif de traitement de réaction applique des signaux de réaction, pendant un grand nombre de cycles de mémoire successifs, à un multiplexeur d'entrée qui, à son tour, applique des signaux à la fois à des lignes d'adresse 20 de mémoire (connectées comme des lignes d'entrée pendant le test) et à des lignes d'entrée de données de mémoire, d'une manière similaire à celle employée pour les lignes d'entrée du circuit logique décrit ci-dessus On peut tester un circuit de mémoire morte par un dispositif similaire, à 25 l'exception du fait qu'il n'y a alors que des lignes d'adresse (connectées en lignes d'entrée pendant le test) et il n'y a pas de lignes d'entrée de données. Il va de soi que de nombreuses autres modifications peuvent être apportées au dispositif décrit et repré30 senté, sans sortir du cadre de l'invention. REVENDICATIONS 1 Dispositif de test de circuit numérique comprenant un circuit numérique ayant un premier ensemble de bornes d'entrée destinées à recevoir des signaux numériques d'entrée appliqués au circuit numérique pendant chaque cycle de fonctionnement du circuit, et un second ensemble de bornes de sortie destinées à fournir des signaux numériques de sortie du circuit numérique pendant chacun de ces cycles, caractérisé en ce qu'il comporte des moyens multiplexeurs d'entrée 10 connectés de façon à recevoir à la fois des signaux numériques d'entrée normaux et les signaux de sortie, et à appliquer aux bornes d'entrée du circuit numérique les signaux d'entrée normaux pendant chaque cycle de fonctionnement normal du circuit, et à appliquer les signaux de sortie aux 15 bornes d'entrée du circuit numérique pendant des cycles successifs d'une opération de test ayant un ensemble de cycles, afin de détecter des défauts dans le circuit numérique. 2 Dispositif selon la revendication 1, caractéri20 sé en outre en ce qu'il comporte un détecteur de signature conçu de façon à comparer les signaux de sortie du circuit numérique qui apparaissent pendant le cycle final de l'opération de test, et à produire un signal de sortie de détecteur de signature qui indique l'absence de toute discordance 25 entre tout bit du signal de sortie du circuit numérique et le bit correspondant du signal de sortie attendu de l'opération de test. 3 Dispositif selon la revendication 2, caractérisé en ce qu'il comprend en outre un compteur, connecté au détecteur de signature, pour compter le nombre de cycles pendant l'opération de test, et pour fournir un signal de validation au détecteur de signature pendant le cycle final de l'opération de test, afin d'autoriser le détecteur de signature à produire le signal de sortie de détecteur de signatu- re. 4 Dispositif selon la revendication 3, caractérisé en ce qu'il comporte en outre une bascule de sortie, connectée au détecteur de signature, dans le but de recevoir et 5 d'enregistrer le signal de sortie de détecteur de signature. Dispositif selon la revendication 4, caractérisé en ce qu'il comporte en outre des moyens de traitement de réaction connectés aux bornes de sortie du circuit numérique dans le but de recevoir des données de sortie provenant des 10 bornes de sortie de données du circuit numérique, de traiter les données de sortie pour produire des données d'entrée de test, et d'appliquer les données d'entrée de test à un second groupe de bornes d'entrée des moyens multiplexeurs d'entrée. 6 Dispositif selon la revendication 1, caractérisé en ce que le circuit numérique est un circuit multiplicateur qui est destiné à fournir des données de sortie représentatives du produit arithmétique d'un premier et d'un second nombres binaires qui correspondent à une paire d'équivalents numériques des signaux numériques d'entrée que reçoivent les bornes d'entrée du circuit multiplicateur.