FR3108441A1 - Method and integrated circuit for testing the integrated circuit arranged on a silicon wafer. - Google Patents

Method and integrated circuit for testing the integrated circuit arranged on a silicon wafer. Download PDF

Info

Publication number
FR3108441A1
FR3108441A1 FR2002671A FR2002671A FR3108441A1 FR 3108441 A1 FR3108441 A1 FR 3108441A1 FR 2002671 A FR2002671 A FR 2002671A FR 2002671 A FR2002671 A FR 2002671A FR 3108441 A1 FR3108441 A1 FR 3108441A1
Authority
FR
France
Prior art keywords
integrated circuit
flip
scan chain
flop
logic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR2002671A
Other languages
French (fr)
Inventor
Samuel LESNE
Cyrille LAMBERT
Bertrand Bruder
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Idemia Starchip SAS
Original Assignee
Idemia Starchip SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Idemia Starchip SAS filed Critical Idemia Starchip SAS
Priority to FR2002671A priority Critical patent/FR3108441A1/en
Publication of FR3108441A1 publication Critical patent/FR3108441A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318572Input/Output interfaces

Abstract

L’invention concerne un circuit intégré constitué de bascules logiques et de portes logiques, le circuit intégré comporte une unique connexion entrée sortie pour le test du circuit intégré et comporte : - des moyens (300) de détection d’une commande prédéterminée reçue par une unique connexion entrée sortie, - des moyens (300) de mémorisation dans une mémoire volatile (305) du circuit intégré, d’un vecteur de données reçu par l’unique connexion entrée sortie, - des moyens (300) de lecture dans la mémoire volatile du vecteur mémorisé uniquement lorsque la totalité du vecteur a été mémorisée, - des moyens (300) de chargement d’au moins une chaîne de balayage avec le vecteur lu, - des moyens (300) de capture de la sortie de la dernière bascule logique de la chaîne de balayage, - des moyens de génération (300) d’une information représentative du fonctionnement d’un circuit intégré, - des moyens de transfert (300), de l’information représentative du fonctionnement d’un circuit intégré. Fig. 3The invention relates to an integrated circuit consisting of logic flip-flops and logic gates, the integrated circuit comprises a single input-output connection for testing the integrated circuit and comprises: - means (300) for detecting a predetermined command received by a single input-output connection, - means (300) for storing in a volatile memory (305) of the integrated circuit, a data vector received by the single input-output connection, - means (300) for reading in the memory volatile vector stored only when the entire vector has been stored, - means (300) for loading at least one scan chain with the vector read, - means (300) for capturing the output of the last flip-flop logic of the scanning chain, - means for generating (300) information representative of the operation of an integrated circuit, - transfer means (300), information representative of the operation of an integrated circuit. Fig. 3

Description

Procédé et circuit intégré pour le test du circuit intégré disposé sur une galette de silicium.Method and integrated circuit for testing the integrated circuit placed on a silicon wafer.

La présente invention concerne un procédé et un circuit intégré pour le test du circuit intégré disposé sur une galette de silicium.The present invention relates to a method and an integrated circuit for testing the integrated circuit placed on a silicon wafer.

ETAT DE LA TECHNIQUE ANTERIEURESTATE OF THE PRIOR ART

Les circuits intégrés sont fabriqués sur des galettes de silicium (en anglais wafer). Une galette de silicium comporte un grand nombre de circuits intégrés, typiquement des milliers.Integrated circuits are made on silicon wafers. A silicon wafer comprises a large number of integrated circuits, typically thousands.

Les testeurs utilisés pour tester les circuits intégrés comportent une quantité limitée de connexions entrée/sortie avec la galette de silicium qui ne peut être augmentée. Le testeur se connecte au travers de pointes métalliques (probe en anglais) à la galette de silicium.The testers used to test integrated circuits have a limited amount of input/output connections with the silicon wafer which cannot be increased. The tester connects through metal tips (probe in English) to the silicon wafer.

Le test d’un circuit intégré consiste à vérifier sa fonctionnalité en s’assurant que les transistors soient bien connectés entre eux pour former la fonction recherchée. Le processus de fabrication d’un circuit intégré peut induire différentes fautes sur un ou plusieurs transistors ou au niveau des connections. Ces fautes doivent être détectées car elles peuvent altérer le comportement du circuit intégré.Testing an integrated circuit consists in verifying its functionality by ensuring that the transistors are well connected to each other to form the desired function. The manufacturing process of an integrated circuit can induce various faults on one or more transistors or at the level of the connections. These faults must be detected because they can alter the behavior of the integrated circuit.

Le testeur permet de tester un nombre limité de circuits intégrés en même temps. La capacité d’un testeur à tester en parallèle un grand nombre de circuits intégrés est directement liée au nombre de pointes métalliques qui sont à sa disposition et au nombre de connexions (pads en anglais) du circuit intégré.The tester allows a limited number of integrated circuits to be tested at the same time. The ability of a tester to test a large number of integrated circuits in parallel is directly related to the number of metal tips at its disposal and the number of connections (pads in English) of the integrated circuit.

Plus le nombre de circuits intégrés testés en parallèle est grand, plus le temps de test de la galette de silicium est court. Plus le nombre de pointes de test utilisées pour tester un circuit intégré est important, moins le nombre de circuits intégrés testés en parallèle est important du fait de la limitation imposée par le nombre de connexions et de pointes de test du testeur.The greater the number of integrated circuits tested in parallel, the shorter the test time of the silicon wafer. The greater the number of test tips used to test an integrated circuit, the fewer the number of integrated circuits tested in parallel due to the limitation imposed by the number of connections and test tips of the tester.

L’ajout de connexions aux circuits intégrés fait augmenter la surface des circuits intégrés, ce qui réduit le nombre de circuits intégrés que l’on peut disposer sur une galette de silicium.Adding connections to integrated circuits increases the area of integrated circuits, which reduces the number of integrated circuits that can be arranged on a silicon wafer.

La présente invention a pour but de résoudre les inconvénients de l’art antérieur en proposant un procédé et un circuit intégré pour le test du circuit intégré constitué de bascules logiques et de portes logiques dans lequel une seule connexion entrée/sortie est nécessaire au test d’un circuit intégré et qui permet de tester un nombre important de circuits intégrés en parallèle.The object of the present invention is to solve the drawbacks of the prior art by proposing a method and an integrated circuit for testing the integrated circuit consisting of logic flip-flops and logic gates in which a single input/output connection is necessary for the test of an integrated circuit and which makes it possible to test a large number of integrated circuits in parallel.

A cette fin, selon un premier aspect, l’invention propose un circuit intégré constitué de bascules logiques et de portes logiques, caractérisé en ce qu’il comporte une unique connexion entrée sortie pour le test du circuit intégré et en ce qu’il comporte :To this end, according to a first aspect, the invention proposes an integrated circuit consisting of logic flip-flops and logic gates, characterized in that it comprises a single input-output connection for testing the integrated circuit and in that it comprises :

- des moyens de réception de commandes par l’unique connexion entrée sortie,- means for receiving commands via the single input-output connection,

- des moyens de détection d’une commande prédéterminée reçue par l’unique connexion entrée sortie,- means for detecting a predetermined command received by the single input-output connection,

- des moyens de mémorisation, si la commande prédéterminée est détectée, dans une mémoire volatile du circuit intégré, d’un vecteur de données reçu par l’unique connexion entrée sortie,- Means for storing, if the predetermined command is detected, in a volatile memory of the integrated circuit, a data vector received by the single input-output connection,

- des moyens de lecture, si la commande prédéterminée est détectée, dans la mémoire volatile du vecteur mémorisé uniquement lorsque la totalité du vecteur a été mémorisée,- reading means, if the predetermined command is detected, in the volatile memory of the stored vector only when the entire vector has been stored,

- des moyens de chargement, si la commande prédéterminée est détectée, d’au moins une chaîne de balayage constituée d’un ensemble de bascules logiques réalisant une fonction du circuit intégré avec le vecteur lu, l’entrée de la première bascule logique recevant le vecteur lu, et la sortie de la première bascule logique étant reliée à l’entrée de la seconde bascule de la chaîne de balayage, la sortie de la dernière bascule de la chaîne de balayage n’étant pas reliée à une entrée d’une bascule logique de la chaîne de balayage, les sorties des autres bascules logiques étant reliées à l’entrée de la bascule logique suivante dans la chaîne de balayage,- means for loading, if the predetermined command is detected, at least one scan chain consisting of a set of logic flip-flops performing a function of the integrated circuit with the read vector, the input of the first logic flip-flop receiving the vector read, and the output of the first logic flip-flop being connected to the input of the second flip-flop of the scan chain, the output of the last flip-flop of the scan chain not being connected to an input of a flip-flop logic of the scan chain, the outputs of the other logic flip-flops being connected to the input of the next logic flip-flop in the scan chain,

- des moyens de capture, si la commande prédéterminée est détectée, de la sortie de la dernière bascule logique de la chaîne de balayage en reliant les entrées des bascules logiques de la chaîne de balayage à des portes logiques,- means for capturing, if the predetermined command is detected, the output of the last logic flip-flop of the scan chain by connecting the inputs of the logic flip-flops of the scan chain to logic gates,

- des moyens de génération, si la commande prédéterminée est détectée, d’une information représentative du fonctionnement d’un circuit intégré pendant un déchargement de la chaîne de balayage,- means for generating, if the predetermined command is detected, information representative of the operation of an integrated circuit during an unloading of the scanning chain,

- des moyens de transfert, si la commande prédéterminée est détectée, de l’information représentative du fonctionnement d’un circuit intégré au testeur.- Means for transferring, if the predetermined command is detected, information representative of the operation of an integrated circuit to the tester.

La présente invention concerne aussi un procédé de test d’un circuit intégré constitué de bascules logiques et de portes logiques, le circuit intégré comportant une unique connexion entrée sortie pour le test du circuit intégré, caractérisé en ce que le procédé comporte les étapes, exécutées par le circuit intégré de :The present invention also relates to a method for testing an integrated circuit consisting of logic flip-flops and logic gates, the integrated circuit comprising a single input-output connection for testing the integrated circuit, characterized in that the method comprises the steps, carried out by the integrated circuit of:

- réception de commandes par l’unique connexion entrée sortie,- reception of commands via the single input-output connection,

- détection d’une commande prédéterminée reçue par l’unique connexion entrée sortie,- detection of a predetermined command received by the single input-output connection,

- mémorisation, si la commande prédéterminée est détectée, dans une mémoire volatile du circuit intégré, d’un vecteur de données reçu par l’unique connexion entrée sortie,- storage, if the predetermined command is detected, in a volatile memory of the integrated circuit, of a data vector received by the single input-output connection,

- lecture, si la commande prédéterminée est détectée, dans la mémoire volatile du vecteur mémorisé uniquement lorsque la totalité du vecteur a été mémorisée,- reading, if the predetermined command is detected, in the volatile memory of the stored vector only when the entire vector has been stored,

- chargement, si la commande prédéterminée est détectée, d’au moins une chaîne de balayage constituée d’un ensemble de bascules logiques réalisant une fonction du circuit intégré avec le vecteur lu, l’entrée de la première bascule logique recevant le vecteur lu, et la sortie de la première bascule logique étant reliée à l’entrée de la seconde bascule de la chaîne de balayage, la sortie de la dernière bascule de la chaîne de balayage n’étant pas reliée à une entrée d’une bascule logique de la chaîne de balayage, les sorties des autres bascules logiques étant reliées à l’entrée de la bascule logique suivante dans la chaîne de balayage,- loading, if the predetermined command is detected, at least one scan chain consisting of a set of logic flip-flops performing a function of the integrated circuit with the read vector, the input of the first logic flip-flop receiving the read vector, and the output of the first logic flip-flop being connected to the input of the second flip-flop of the scan chain, the output of the last flip-flop of the scan chain not being connected to an input of a logic flip-flop of the scan chain, the outputs of the other logic flip-flops being connected to the input of the next logic flip-flop in the scan chain,

- capture, si la commande prédéterminée est détectée, de la sortie de la dernière bascule logique de la chaîne de balayage en reliant les entrées des bascules logiques de la chaîne de balayage à des portes logiques,- capture, if the predetermined command is detected, of the output of the last logic flip-flop of the scan chain by connecting the inputs of the logic flip-flops of the scan chain to logic gates,

- génération, si la commande prédéterminée est détectée, d’une information représentative du fonctionnement d’un circuit intégré pendant le déchargement de la chaîne de balayage,- generation, if the predetermined command is detected, of information representative of the operation of an integrated circuit during the unloading of the scanning chain,

- transfert, si la commande prédéterminée est détectée, de l’information représentative du fonctionnement d’un circuit intégré au testeur.- transfer, if the predetermined command is detected, of information representative of the operation of an integrated circuit to the tester.

Ainsi, en utilisant une seule connexion entrée/sortie pour le test du circuit intégré constitué de bascules logiques et de portes logiques, il est possible de tester un nombre important de circuits intégrés en parallèle.Thus, by using a single input/output connection for testing the integrated circuit consisting of logic flip-flops and logic gates, it is possible to test a large number of integrated circuits in parallel.

De plus, en mémorisant le vecteur de données dans une mémoire volatile du circuit intégré, il est possible de pallier la faible bande passante du circuit intégré et d’effectuer les différentes opérations de test des fonctionnalités du circuit intégré en parallèle de la réception de nouvelles commandes ou de vecteurs.Moreover, by storing the data vector in a volatile memory of the integrated circuit, it is possible to overcome the low passband of the integrated circuit and to carry out the various operations of testing the functionalities of the integrated circuit in parallel with the reception of new commands or vectors.

Enfin, en exécutant séquentiellement les différentes actions relatives au test de la fonctionnalité lorsque la commande prédéterminée est reçue, le temps de test de la galette de silicium est réduit.Finally, by sequentially executing the various actions relating to the testing of the functionality when the predetermined command is received, the time for testing the silicon wafer is reduced.

Selon un mode particulier de l’invention, l’information représentative du fonctionnement d’un circuit intégré est le résultat d’une comparaison d’un contrôle de redondance cyclique calculé en sortie de la dernière bascule logique de la chaîne de balayage avec une valeur reçue du testeur.According to a particular embodiment of the invention, the information representative of the operation of an integrated circuit is the result of a comparison of a cyclic redundancy check calculated at the output of the last logic flip-flop of the scan chain with a value received from the tester.

Ainsi, le testeur est informé de l’état de fonctionnement du circuit intégré sans avoir à effectuer de calcul.Thus, the tester is informed of the operating state of the integrated circuit without having to perform any calculations.

Selon un mode particulier de l’invention, l’information représentative du fonctionnement d’un circuit intégré est un contrôle de redondance cyclique calculé en sortie de la dernière bascule logique de la chaîne de balayage.According to a particular mode of the invention, the information representative of the operation of an integrated circuit is a cyclic redundancy check calculated at the output of the last logic flip-flop of the scan chain.

Selon un mode particulier de l’invention, chaque commande reçue est précédée d’un signal de référence pour synchroniser le testeur et le circuit intégré.According to a particular embodiment of the invention, each command received is preceded by a reference signal to synchronize the tester and the integrated circuit.

Selon un mode particulier de l’invention, le circuit intégré comporte en outre des moyens de déchargement de la ou de chaque chaîne de balayage en mettant les entrées des bascules logiques dans la même configuration que pendant le chargement de la chaîne de balayage.According to a particular embodiment of the invention, the integrated circuit further comprises means for unloading the or each scan chain by putting the inputs of the logic flip-flops in the same configuration as during the loading of the scan chain.

Selon un mode particulier de l’invention, le circuit intégré comporte en outre des moyens d’exécution d’une autre commande reçue du testeur si la commande prédéterminée n’est pas détectée.According to a particular embodiment of the invention, the integrated circuit further comprises means for executing another command received from the tester if the predetermined command is not detected.

Selon un mode particulier de l’invention, l’autre commande reçue est une commande de mémorisation du vecteur dans la mémoire volatile, une commande de chargement ou de capture ou de déchargement de la chaîne de balayage.According to a particular mode of the invention, the other command received is a command for storing the vector in the volatile memory, a command for loading or capturing or unloading the scan chain.

L’invention concerne aussi les programmes d’ordinateur stockés sur un support d’informations, lesdits programmes comportant des instructions permettant de mettre en œuvre les procédés précédemment décrits, lorsqu’ils sont chargés et exécutés par un système informatique.The invention also relates to computer programs stored on an information medium, said programs comprising instructions making it possible to implement the methods described above, when they are loaded and executed by a computer system.

Les caractéristiques de l’invention mentionnées ci-dessus, ainsi que d’autres, apparaîtront plus clairement à la lecture de la description suivante d’un exemple de réalisation, ladite description étant faite en relation avec les dessins joints, parmi lesquels :The characteristics of the invention mentioned above, as well as others, will appear more clearly on reading the following description of an exemplary embodiment, said description being made in relation to the attached drawings, among which:

représente un système de test de circuits intégré sur galette de silicium ; depicts a silicon wafer integrated circuit test system;

représente une architecture de dispositif de test selon la présente invention ; represents a test device architecture according to the present invention;

représente une architecture de circuit intégré sur une galette de silicium selon la présente invention ; represents an integrated circuit architecture on a silicon wafer according to the present invention;

représente un exemple d’une configuration de chargement d’une chaîne de balayage d’un ensemble de bascules logiques réalisant une fonction d’un circuit intégré ; represents an example of a configuration for loading a scan chain of a set of logic flip-flops performing a function of an integrated circuit;

représente un exemple d’une configuration de capture d’une chaîne de balayage d’un ensemble de bascules logiques réalisant une fonction d’un circuit intégré ; represents an example of a configuration for capturing a scan chain of a set of logic flip-flops performing a function of an integrated circuit;

représente un exemple d’une configuration de déchargement d’une chaîne de balayage d’un ensemble de bascules logiques réalisant une fonction d’un circuit intégré ; shows an example of a configuration for unloading a scan chain of a set of logic flip-flops performing a function of an integrated circuit;

représente un algorithme de test exécuté par un circuit intégré selon la présente invention ; represents a test algorithm executed by an integrated circuit according to the present invention;

représente un exemple d’une implémentation d’un module génération d’une information représentative du fonctionnement d’un circuit intégré à l’issue du test du circuit intégré ; represents an example of an implementation of a module generating information representative of the operation of an integrated circuit at the end of the test of the integrated circuit;

représente un exemple de signaux reçus par un circuit intégré lors du test du circuit intégré dans un mode de test appelé direct et d’actions effectuées par le circuit intégré pendant le test du circuit intégré ; represents an example of signals received by an integrated circuit during the test of the integrated circuit in a test mode called direct and of actions performed by the integrated circuit during the test of the integrated circuit;

représente un exemple de signaux reçus par un circuit intégré lors du test du circuit intégré dans un mode de test appelé indirect et d’actions effectuées par le circuit intégré pendant le test du circuit intégré. shows an example of signals received by an integrated circuit when testing the integrated circuit in a so-called indirect test mode and actions performed by the integrated circuit during the testing of the integrated circuit.

EXPOSE DETAILLE DE MODES DE REALISATIONDETAILED DESCRIPTION OF EMBODIMENTS

La Fig. 1 représente un système de test de circuits intégré sur galette de silicium.Fig. 1 shows an integrated circuit test system on a silicon wafer.

Dans la Fig. 1, un testeur Te teste les circuits intégrés CI d’une galette de silicium DUT à l’aide d’une pluralité de cartes à pointe venant en contact des zones rectangulaires d’un groupe de circuits intégrés qui sont testés en parallèle.In Fig. 1, a tester Te tests the integrated circuits ICs of a silicon wafer DUT using a plurality of tip boards contacting rectangular areas of a group of integrated circuits which are tested in parallel.

Le testeur Te est par exemple un ordinateur qui pilote une ou plusieurs cartes à pointes. Le testeur Te teste si les circuits intégrés sont conformes à un cahier des charges et permet de configurer et d’ajuster des paramètres des circuits intégrés.The tester Te is for example a computer which drives one or more probe cards. The tester Te tests whether the integrated circuits comply with a specification and allows configuration and adjustment of the parameters of the integrated circuits.

Selon la présente invention, chaque circuit intégré dispose d’une unique zone de contact représentée par un carré noir dans la Fig. 1 qui est utilisée pour le test du circuit intégré. Une seule pointe est utilisée par le testeur Te pour tester un circuit intégré en sus des pointes d’alimentation des circuits intégrés. Lorsqu’une pointe est en contact avec la zone de contact, une connexion entrée sortie est réalisée selon la présente invention.According to the present invention, each integrated circuit has a single contact area represented by a black square in Fig. 1 which is used for testing the integrated circuit. A single tip is used by the Te tester to test an IC in addition to the IC power supply tips. When a tip is in contact with the contact area, an input-output connection is made according to the present invention.

Dans la Fig. 1, trois circuits intégrés sont testés en parallèle à l’aide d’une carte à pointe comportant les pointes Cap1 à Cap3. Bien entendu, un nombre plus important de circuits intégrés sont testés en parallèle, l’exemple de la Fig. 1 n’étant qu’une simplification de conditions réelles.In Fig. 1, three integrated circuits are tested in parallel using a tip board comprising the tips Cap1 to Cap3. Of course, a larger number of integrated circuits are tested in parallel, the example of Fig. 1 being only a simplification of real conditions.

De même, seulement sept circuits intégrés sont représentés dans la Fig. 1 par souci de simplification. Bien entendu, un nombre plus important de circuits intégrés sont présents sur la galette de silicium DUT.Similarly, only seven integrated circuits are shown in Fig. 1 for simplicity. Of course, a greater number of integrated circuits are present on the silicon wafer DUT.

L’utilisation d’une unique zone de contact selon la présente invention est possible grâce à un ajout, dans chaque circuit intégré, d’un module de contrôle qui sera décrit en référence à la Fig. 3 et à une utilisation par le module de contrôle d’une mémoire vive comprise dans le circuit intégré.The use of a single contact zone according to the present invention is possible thanks to the addition, in each integrated circuit, of a control module which will be described with reference to FIG. 3 and to use by the control module of a random access memory included in the integrated circuit.

Pour détecter les fautes d’un circuit intégré, il faut vérifier le comportement des fonctions du circuit intégré. Une fonction est réalisée par un ensemble de portes logiques et de connections. Le comportement d’une fonction est déterminé par les signaux à ses entrées.To detect the faults of an integrated circuit, it is necessary to check the behavior of the functions of the integrated circuit. A function is performed by a set of logic gates and connections. The behavior of a function is determined by the signals at its inputs.

Une méthode consiste à chaîner, toutes ou une partie des bascules d’une ou plusieurs fonctions du circuit intégré, l’une à la suite des autres dans un état particulier du circuit intégré. Ce regroupement sera appelé « chaîne de balayage ». Comme il s’agit de bascules, leurs mises à jour se feront à chaque évènement d’une horloge par exemple. Ainsi, la bascule mettra à jour celle qui la suit et sera mise à jour par celle qui la précède : cette action sera appelée « chargement de balayage ».One method consists in chaining all or part of the flip-flops of one or more functions of the integrated circuit, one after the other in a particular state of the integrated circuit. This grouping will be called a “scan chain”. As these are flip-flops, their updates will be made at each event of a clock for example. Thus, the toggle will update the one after it and will be updated by the one before it: this action will be called "scan loading".

En fixant les valeurs des bascules, on peut fixer les entrées des différents nuages combinatoires du circuit intégré. Un nuage combinatoire est constitué d’un ensemble de portes logiques ne réalisant pas la fonction de bascule.By fixing the values of the flip-flops, it is possible to fix the inputs of the various combinatorial clouds of the integrated circuit. A combinatorial cloud is made up of a set of logic gates that do not perform the flip-flop function.

Pour capturer les sorties des nuages combinatoires, il suffit de désactiver le chaînage des bascules pour que leurs entrées soient directement connectées aux sorties des nuages combinatoires. En appliquant un évènement sur toutes les bascules comme celui d’une horloge, on met à jour toutes ces bascules : cette action sera appelée « capture de balayage ».To capture the outputs of the combinatorial clouds, it suffices to deactivate the chaining of the flip-flops so that their inputs are directly connected to the outputs of the combinatorial clouds. By applying an event to all the flip-flops like that of a clock, we update all these flip-flops: this action will be called “scan capture”.

Pour extraire le contenu des bascules mises à jour, on réactive leur chaînage et on applique autant d’évènements à la « chaîne de balayage » qu’il y a de bascules : cette action sera appelée « déchargement de balayage ». Il est à remarquer ici qu’un déchargement de balayage peut correspondre à un chargement de balayage d’une chaîne de balayage suivante.To extract the contents of the updated flip-flops, we reactivate their chaining and apply as many events to the “scan chain” as there are flip-flops: this action will be called “scan unloading”. Note here that a scan unload may correspond to a scan load of a subsequent scan chain.

Les valeurs à appliquer pendant le « chargement de balayage », le moment d’appliquer la « capture de balayage » et les valeurs attendues pendant le « déchargement de balayage » sont données par un outil de génération automatique des vecteurs de test (ATPG en anglais, Automatic Test Pattern Generator).The values to apply during "scan loading", when to apply "scan capture" and the expected values during "scan unloading" are given by an automatic test vector generation (ATPG) tool. , Automatic Test Pattern Generator).

La Fig. 2 représente une architecture de dispositif de test ou testeur selon la présente invention.Fig. 2 represents a test device or tester architecture according to the present invention.

Le testeur Te comprend :The Te tester includes:

- un processeur, micro-processeur, ou microcontrôleur 200 ;- a processor, microprocessor, or microcontroller 200;

- une mémoire volatile 203 ;- a volatile memory 203;

- une mémoire ROM 202 ;- a ROM memory 202;

- une interface 205 qui comporte au moins une carte à pointe ;- an interface 205 which includes at least one tip card;

- un bus de communication 201 reliant le processeur 200 à la mémoire ROM 202, à la mémoire RAM 203 et à l’interface 205.- a communication bus 201 connecting the processor 200 to the ROM memory 202, to the RAM memory 203 and to the interface 205.

Le processeur 200 est capable d’exécuter des instructions chargées dans la mémoire volatile 203 à partir de la mémoire ROM 202, d’une mémoire externe (non représentée), d’un support de stockage. Lorsque le testeur Te est mis sous tension, le processeur 200 est capable de lire de la mémoire volatile 203 des instructions et de les exécuter. Ces instructions forment un programme d’ordinateur qui cause la mise en œuvre, par le processeur 200, du programme de test de circuits intégrés.The processor 200 is capable of executing instructions loaded into the volatile memory 203 from the ROM memory 202, from an external memory (not shown), from a storage medium. When the tester Te is powered up, the processor 200 is able to read instructions from the volatile memory 203 and execute them. These instructions form a computer program which causes the processor 200 to execute the integrated circuit test program.

Tout ou partie du programme de test peut être implémenté sous forme logicielle par exécution d’un ensemble d’instructions par une machine programmable, telle qu’un DSP (Digital Signal Processoren anglais ouUnité de Traitement de Signal Numériqueen français) ou un microcontrôleur ou être implémenté sous forme matérielle par une machine ou un composant dédié, tel qu’un FPGA (Field-Programmable Gate Arrayen anglais ouMatrice de Portes Programmable sur le Terrainen français) ou un ASIC (Application-Specific Integrated Circuiten anglais ouCircuit Intégré Spécifique à une Applicationen français).All or part of the test program can be implemented in software form by executing a set of instructions by a programmable machine, such as a DSP ( Digital Signal Processor in English or Digital Signal Processing Unit in French) or a microcontroller or be implemented in hardware form by a dedicated machine or component, such as an FPGA ( Field-Programmable Gate Array ) or an ASIC ( Application-Specific Integrated Circuit ) or Integrated Circuit Specific to an Application in French).

La Fig. 3 représente une architecture de circuit intégré sur une galette de silicium selon la présente invention.Fig. 3 represents an integrated circuit architecture on a silicon wafer according to the present invention.

Le circuit intégré CI comprend une unique entrée/sortie Cap1 reliée à un module de contrôle 300. Le module de contrôle 300 est capable de lire des instructions et de les exécuter. Ces instructions forment un programme d’ordinateur qui cause la mise en œuvre, par le module de contrôle 300, de tout ou partie du procédé décrit en relation avec la Fig. 5.The integrated circuit CI comprises a single input/output Cap1 connected to a control module 300. The control module 300 is capable of reading instructions and executing them. These instructions form a computer program which causes the implementation, by the control module 300, of all or part of the method described in relation to FIG. 5.

Tout ou partie des procédés décrits en relation avec la Fig. 5 peut être implémenté sous forme logicielle par exécution d’un ensemble d’instructions par une machine programmable, telle qu’un DSP (Digital Signal Processoren anglais ouUnité de Traitement de Signal Numériqueen français) ou un microcontrôleur ou être implémenté sous forme matérielle par une machine ou un composant dédié.All or part of the methods described in relation to FIG. 5 can be implemented in software form by executing a set of instructions by a programmable machine, such as a DSP ( Digital Signal Processor in English or Digital Signal Processing Unit in French) or a microcontroller, or be implemented in the form hardware by a dedicated machine or component.

Le module de contrôle 300 reçoit par l’intermédiaire de l’unique entrée sortie Cap1, des commandes du testeur TE. Le module de contrôle 300 génère à destination d’au moins une chaîne de bascules à balayer 310 et en fonction des commandes reçues, un signal d’activation Ac (ou strobe en anglais) et une horloge Ho. Le module de contrôle 300 est configuré pour transférer des données reçues par l’intermédiaire de l’unique entrée sortie Cap1 à au moins une chaîne de bascules à balayer 310.The control module 300 receives, via the single input/output Cap1, commands from the TE tester. The control module 300 generates for at least one chain of flip-flops to be scanned 310 and depending on the commands received, an activation signal Ac (or strobe in English) and a clock Ho. The control module 300 is configured to transfer data received via the single input output Cap1 to at least one chain of flip-flops to be scanned 310.

Le module de contrôle 300 est configuré pour recevoir des données de la au moins une chaîne de bascules à balayer 310.The control module 300 is configured to receive data from the at least one chain of flip-flops 310.

Le module de contrôle 300 est configuré pour mémoriser dans une mémoire volatile RAM 305 des données reçues par l’intermédiaire de l’unique entrée sortie Cap1.The control module 300 is configured to memorize in a volatile memory RAM 305 data received via the single input output Cap1.

Le module de contrôle 300 est configuré pour lire dans la mémoire volatile RAM 305 des données préalablement mémorisées.The control module 300 is configured to read previously stored data from the volatile RAM 305 memory.

Il est à remarquer ici que la mémoire volatile RAM 305 est une mémoire non dédiée au test du circuit intégré CI. La mémoire volatile RAM 305 est aussi utilisée par le circuit intégré CI lors du fonctionnement pour lequel il a été conçu.It should be noted here that the volatile memory RAM 305 is a memory not dedicated to testing the integrated circuit CI. The volatile memory RAM 305 is also used by the integrated circuit CI during the operation for which it was designed.

La Fig. 4a représente un exemple d’une configuration de chargement d’une chaîne de balayage d’un ensemble de bascules logiques réalisant une fonction d’un circuit intégré.Fig. 4a shows an example of a configuration for loading a scan chain of a set of logic flip-flops performing a function of an integrated circuit.

La chaîne de balayage 310 comporte une pluralité de bascules notées D1, D2, DN-1 à DN. La mise à jour des bascules D1 à DN est effectuée à chaque évènement de l’horloge Ho. Ainsi, chaque bascule met à jour la bascule suivante dans la chaîne de balayage et est mise à jour par la bascule la précédant dans la chaîne de balayage. Les données de mises à jour sont notées Din et les données de sorties sont notées Do.The scan chain 310 comprises a plurality of flip-flops denoted D1, D2, DN-1 to DN. The update of flip-flops D1 to DN is performed at each event of the clock Ho. Thus, each flip-flop updates the next flip-flop in the scan chain and is updated by the flip-flop preceding it in the scan chain . Update data is denoted Din and output data is denoted Do.

En fixant les valeurs des bascules, on peut fixer les entrées des différents nuages combinatoires de la puce.By fixing the values of the flip-flops, you can fix the inputs of the different combinatorial clouds of the chip.

La Fig. 4b représente un exemple d’une configuration de capture d’une chaîne de balayage d’un ensemble de bascules logiques réalisant une fonction d’un circuit intégré.Fig. 4b shows an example of a configuration for capturing a scan chain of a set of logic flip-flops performing a function of an integrated circuit.

Pour capturer les sorties des nuages combinatoires Nc1, Nc2, NcN-1 à NcN, il suffit de désactiver le chaînage des bascules pour que leurs entrées soient directement connectées aux sorties des nuages combinatoires.To capture the outputs of combinatorial clouds Nc1, Nc2, NcN-1 to NcN, it suffices to deactivate the chaining of the flip-flops so that their inputs are directly connected to the outputs of the combinatorial clouds.

L’entrée de la bascule D1 est reliée au nuage combinatoire Nc1, l’entrée de la bascule D2 est reliée au nuage combinatoire Nc2, l’entrée de la bascule DN-1 est reliée au nuage combinatoire NcN-1 et l’entrée de la bascule DN est reliée au nuage combinatoire NcN.The input of flip-flop D1 is connected to combinatorial cloud Nc1, the input of flip-flop D2 is connected to combinatorial cloud Nc2, the input of flip-flop DN-1 is connected to combinatorial cloud NcN-1 and the input of the DN flip-flop is connected to the NcN combinatorial cloud.

En appliquant un évènement sur toutes les bascules comme celui d’une horloge, on met à jour toutes les bascules D1 à DN, c’est la capture de balayage.By applying an event to all the flip-flops like that of a clock, we update all the flip-flops D1 to DN, this is the scan capture.

La Fig. 4c représente un exemple d’une configuration de déchargement d’une chaîne de balayage d’un ensemble de bascules logiques réalisant une fonction d’un circuit intégré.Fig. 4c shows an example of a configuration for unloading a scan chain of a set of logic flip-flops performing a function of an integrated circuit.

Pour extraire le contenu des bascules mises à jour, on réactive leur chaînage et on applique autant d’évènements à la chaîne de balayage qu’il y a de bascules.To extract the contents of the updated flip-flops, we reactivate their chaining and apply as many events to the scan chain as there are flip-flops.

La Fig. 5 représente un algorithme de test exécuté par un circuit intégré selon la présente invention.Fig. 5 represents a test algorithm executed by an integrated circuit according to the present invention.

Plus précisément, le présent algorithme est exécuté par le module de contrôle 300 de chaque circuit intégré.More precisely, the present algorithm is executed by the control module 300 of each integrated circuit.

A l’étape E50, le module de contrôle 300 est dans un état inactif.At step E50, the control module 300 is in an inactive state.

A l’étape suivante E51, le module de contrôle 300 vérifie si un message est reçu du testeur par l’intermédiaire de l’unique entrée sortie Cap1.At the next step E51, the control module 300 checks whether a message has been received from the tester via the single input output Cap1.

Dans l’affirmative, le module de contrôle 300 passe à l’étape E52. Dans la négative, le module de contrôle retourne à l’étape E50.If so, the control module 300 goes to step E52. If not, the control module returns to step E50.

Selon l’invention, chaque message comprend un signal de référence qui permet au dispositif de contrôle de se synchroniser avec le testeur Te et une commande ou des données. Le signal de référence est par exemple une séquence de bits prédéterminée.According to the invention, each message comprises a reference signal which allows the control device to synchronize with the tester Te and a command or data. The reference signal is for example a sequence of predetermined bits.

A l’étape E52, le module de contrôle 300 vérifie si la commande suivant le signal de référence est une commande de test dans un mode dit direct ou dans un mode dit indirect.At step E52, the control module 300 verifies whether the command following the reference signal is a test command in a so-called direct mode or in a so-called indirect mode.

Le mode direct est un mode dans lequel le test d’une chaîne de bascules à balayer 310 est effectué de manière automatique. Le mode indirect permet d’envoyer des commandes les unes après les autres, par exemple, pour déterminer précisément quelle partie d’un circuit est défectueuse.The direct mode is a mode in which the test of a chain of flip-flops to be scanned 310 is carried out automatically. The indirect mode makes it possible to send commands one after the other, for example, to determine precisely which part of a circuit is defective.

Si la commande suivant le signal de référence est une commande de test dans le mode direct, le module de contrôle 300 passe à l’étape E53. Dans la négative, le module de contrôle 300 passe à l’étape E58.If the command following the reference signal is a test command in the direct mode, the control module 300 goes to step E53. If not, the control module 300 goes to step E58.

A l’étape E53, le module de contrôle 300 commande la mémorisation des données suivant le signal de référence suivant dans la mémoire volatile 305. Les données ont une taille prédéterminée connue du module de contrôle. L’ensemble des données est appelé vecteur. La taille du vecteur correspond au nombre de bascules de la chaîne de bascules.In step E53, the control module 300 commands the storage of data according to the following reference signal in the volatile memory 305. The data has a predetermined size known to the control module. The set of data is called a vector. The size of the vector corresponds to the number of flip-flops in the chain of flip-flops.

A l’étape suivante E54, le module de contrôle 300 vérifie si la totalité du vecteur est reçue.At the next step E54, the control module 300 verifies whether the entire vector is received.

Dans l’affirmative, le module de contrôle 300 passe à l’étape E55. Dans la négative, le module de contrôle 300 retourne à l’étape E53.If so, the control module 300 goes to step E55. If not, the control module 300 returns to step E53.

A l’étape E55, le module de contrôle 300 lit le vecteur mémorisé dans la mémoire volatile RAM 305 et applique le vecteur à la chaîne de balayage. En d’autres mots, le module de contrôle procède au chargement de la chaîne de balayage de l’ensemble de bascules logiques.At step E55, the control module 300 reads the vector stored in the volatile RAM memory 305 and applies the vector to the scan chain. In other words, the control module proceeds to load the scan chain of the set of logic flip-flops.

Si, à une précédente itération du présent algorithme, un vecteur a été appliqué à la chaîne de balayage et une capture de la chaîne de balayage a été effectuée, on effectue à cette même étape un déchargement de balayage de la chaîne de balayage de la précédente itération. Lors du déchargement de balayage, on extrait le contenu des bascules mises à jour, on réactive leur chaînage et on applique autant d’évènements à la chaîne de balayage qu’il y a de bascules.If, at a previous iteration of this algorithm, a vector has been applied to the scan chain and a capture of the scan chain has been performed, a scan unload of the scan chain from the previous one is performed at this same step. iteration. During scan unloading, the content of the updated flip-flops is extracted, their chaining is reactivated and as many events are applied to the scan chain as there are flip-flops.

A l’étape suivante E56, le module de contrôle 300 vérifie si la totalité du vecteur est lue.At the next step E56, the control module 300 verifies whether the entire vector is read.

Dans l’affirmative, le module de contrôle 300 passe à l’étape E57. Dans la négative, le module de contrôle 300 retourne à l’étape E55.If so, the control module 300 goes to step E57. If not, the control module 300 returns to step E55.

A l’étape E57, le module de contrôle 300 lance l’exécution de la capture de la chaîne de balayage de l’ensemble de bascules logiques réalisant une fonction d’un circuit intégré.At step E57, the control module 300 launches the execution of the capture of the scan chain of the set of logic flip-flops performing a function of an integrated circuit.

Ainsi, lors de la capture de balayage, on désactive le chaînage des bascules pour que leurs entrées soient directement connectées aux sorties des nuages combinatoires et en appliquant un évènement, comme celui d’une horloge, sur toutes les bascules, on met à jour toutes ces bascules.Thus, during sweep capture, we deactivate the chaining of the flip-flops so that their inputs are directly connected to the outputs of the combinatorial clouds and by applying an event, such as that of a clock, on all the flip-flops, we update all these flip-flops.

La Fig. 6 représente un exemple d’une implémentation d’un module génération d’une information représentative du fonctionnement d’un circuit intégré à l’issue du test du circuit intégré.Fig. 6 represents an example of an implementation of a module generating information representative of the operation of an integrated circuit following the test of the integrated circuit.

Le module génération d’une information représentative du fonctionnement d’un circuit intégré 600 calcule par exemple une signature pendant le déchargement de la chaîne de balayage. Le module génération d’une information représentative du fonctionnement d’un circuit intégré 600 est connecté à la sortie de la dernière bascule de la chaîne de bascules. Ainsi, pendant le déchargement de la chaîne de bascules, les données en sortie des bascules sont propagées vers le module génération d’une information représentative du fonctionnement d’un circuit intégré 600.The module generating information representative of the operation of an integrated circuit 600 calculates for example a signature during the unloading of the scanning chain. The module generating information representative of the operation of an integrated circuit 600 is connected to the output of the last flip-flop of the chain of flip-flops. Thus, during the unloading of the chain of flip-flops, the data at the output of the flip-flops are propagated towards the module generating information representative of the operation of an integrated circuit 600.

La signature est par exemple, un bit de parité ou un contrôle de redondance cyclique.The signature is, for example, a parity bit or a cyclic redundancy check.

L’information représentative du fonctionnement d’un circuit intégré est le contrôle de redondance cyclique ou le résultat de la comparaison de la signature avec une signature reçue du testeur Te.The information representative of the operation of an integrated circuit is the cyclic redundancy check or the result of the comparison of the signature with a signature received from the tester Te.

La Fig. 7 représente un exemple de signaux reçus par un circuit intégré lors du test du circuit intégré dans un mode de test appelé direct et d’actions effectuées par le circuit intégré pendant le test du circuit intégré.Fig. 7 shows an example of signals received by an integrated circuit when testing the integrated circuit in a so-called direct test mode and actions performed by the integrated circuit during the testing of the integrated circuit.

Dans l’exemple de la Fig. 7, le module de contrôle 300 reçoit un signal de référence 701 suivi d’un vecteur de référence 702.In the example of Fig. 7, the control module 300 receives a reference signal 701 followed by a reference vector 702.

Le module de contrôle 300 commande, pendant la durée notée 703, la mémorisation du vecteur 701 dans la mémoire volatile 305 et le chargement du vecteur 701 dans la chaîne de balayage pendant la durée 704 de l’ensemble de bascules logiques.The control module 300 commands, during the duration noted 703, the storage of the vector 701 in the volatile memory 305 and the loading of the vector 701 into the scan chain during the duration 704 of the set of logic flip-flops.

Le module de contrôle 300 reçoit un signal de référence 705 suivi d’une commande 706 d’initialisation du module de génération d’une information représentative du fonctionnement d’un circuit intégré 600.The control module 300 receives a reference signal 705 followed by a command 706 to initialize the module for generating information representative of the operation of an integrated circuit 600.

Le module de contrôle 300 reçoit un signal de référence 707 suivi d’un nouveau vecteur de référence 708.The control module 300 receives a reference signal 707 followed by a new reference vector 708.

Le module de contrôle 300 commande, pendant la durée notée 709, la mémorisation du vecteur 708 dans la mémoire volatile 305, le déchargement du vecteur 702 pendant le chargement du vecteur 708 de la chaîne de balayage de l’ensemble de bascules logiques. La capture du vecteur 708 est effectuée à la fin du chargement du vecteur 708.The control module 300 commands, for the duration noted 709, the storage of the vector 708 in the volatile memory 305, the unloading of the vector 702 during the loading of the vector 708 of the scanning chain of the set of logic flip-flops. The capture of the vector 708 is performed at the end of the loading of the vector 708.

Le module de contrôle 300 reçoit un signal de référence 711 suivi d’une commande 712 de génération d’une information représentative du fonctionnement d’un circuit intégré 600.The control module 300 receives a reference signal 711 followed by a command 712 to generate information representative of the operation of an integrated circuit 600.

Le module de contrôle 300 commande le transfert au testeur Te de l’information représentative du fonctionnement d’un circuit intégré 600 pendant la durée 713.The control module 300 controls the transfer to the tester Te of information representative of the operation of an integrated circuit 600 during the duration 713.

La Fig. 8 représente un exemple de signaux reçus par un circuit intégré lors du test du circuit intégré dans un mode de test appelé indirect et d’actions effectuées par le circuit intégré pendant le test du circuit intégré.Fig. 8 shows an example of signals received by an integrated circuit during the test of the integrated circuit in a test mode called indirect and of actions performed by the integrated circuit during the test of the integrated circuit.

Dans l’exemple de la Fig. 8, le module de contrôle 300 reçoit un signal de référence 800 suivi d’une commande de mémorisation 801 dans la mémoire volatile 305 et d’un vecteur de référence 802.In the example of Fig. 8, the control module 300 receives a reference signal 800 followed by a storage command 801 in the volatile memory 305 and a reference vector 802.

Le module de contrôle 300 commande, pendant la durée notée 803, la mémorisation du vecteur 802 dans la mémoire volatile 305.The control module 300 commands, for the duration denoted 803, the storage of the vector 802 in the volatile memory 305.

Le module de contrôle 300 reçoit un signal de référence 804 suivi d’une commande de chargement 805 avec le vecteur 802 de la chaîne de balayage de l’ensemble de bascules logiques.The control module 300 receives a reference signal 804 followed by a load command 805 with the vector 802 of the logic flip-flop set scan chain.

Le module de contrôle 300 procède pendant la durée 806 au chargement du vecteur 802 pour la chaîne de balayage de l’ensemble de bascules logiques.The control module 300 proceeds during the duration 806 to the loading of the vector 802 for the scan chain of the set of logic flip-flops.

Le module de contrôle 300 reçoit un signal de référence 807 suivi d’une commande 808 d’initialisation du module de génération d’une information représentative du fonctionnement d’un circuit intégré 600.The control module 300 receives a reference signal 807 followed by a command 808 to initialize the module for generating information representative of the operation of an integrated circuit 600.

Le module de contrôle 300 reçoit un signal de référence 809 suivi d’une commande 810 de capture de la chaîne de balayage de l’ensemble de bascules logiques.The control module 300 receives a reference signal 809 followed by a command 810 to capture the scan chain of the set of logic flip-flops.

Le module de contrôle 300 procède pendant la durée 811 à la capture de la chaîne de balayage de l’ensemble de bascules logiques.The control module 300 proceeds during the duration 811 to capture the scan chain of the set of logic flip-flops.

Le module de contrôle 300 reçoit un signal de référence 812 suivi d’une commande 813 de déchargement de la chaîne de balayage de l’ensemble de bascules logiques.The control module 300 receives a reference signal 812 followed by a command 813 to unload the scan chain from the set of logic flip-flops.

Le module de contrôle 300 procède pendant la durée 814 au déchargement de la chaîne de balayage de l’ensemble de bascules logiques vers la mémoire volatile RAM 305 et au calcul de l’information représentative du fonctionnement du circuit intégré.The control module 300 proceeds during the duration 814 to unload the scan chain of the set of logic flip-flops to the volatile RAM memory 305 and to the calculation of the information representative of the operation of the integrated circuit.

Le module de contrôle 300 reçoit un signal de référence 815 suivi d’une commande 816 de génération d’une information représentative du fonctionnement d’un circuit intégré 600.The control module 300 receives a reference signal 815 followed by a command 816 to generate information representative of the operation of an integrated circuit 600.

Le module de contrôle 300 commande le transfert au testeur Te de l’information représentative du fonctionnement d’un circuit intégré 600 pendant la durée 817.The control module 300 controls the transfer to the tester Te of information representative of the operation of an integrated circuit 600 during the duration 817.

En variante, le module de contrôle 300 commande le transfert au testeur Te de la chaîne de balayage de l’ensemble de bascules logiques capturé.Alternatively, the control module 300 commands the transfer to the tester Te of the scan chain of the set of logic flip-flops captured.

Claims (8)

Circuit intégré constitué de bascules logiques et de portes logiques, caractérisé en ce qu’il comporte une unique connexion entrée sortie pour le test du circuit intégré et en ce qu’il comporte :
  • des moyens (300) de réception de commandes par l’unique connexion entrée sortie,
  • des moyens (300) de détection d’une commande prédéterminée reçue par l’unique connexion entrée sortie,
  • des moyens (300) de mémorisation, si la commande prédéterminée est détectée, dans une mémoire volatile (305) du circuit intégré, d’un vecteur de données reçu par l’unique connexion entrée sortie,
  • des moyens (300) de lecture, si la commande prédéterminée est détectée, dans la mémoire volatile du vecteur mémorisé uniquement lorsque la totalité du vecteur a été mémorisée,
  • des moyens (300) de chargement, si la commande prédéterminée est détectée, d’au moins une chaîne de balayage constituée d’un ensemble de bascules logiques réalisant une fonction du circuit intégré avec le vecteur lu, l’entrée de la première bascule logique recevant le vecteur lu, et la sortie de la première bascule logique étant reliée à l’entrée de la seconde bascule de la chaîne de balayage, la sortie de la dernière bascule de la chaîne de balayage n’étant pas reliée à une entrée d’une bascule logique de la chaîne de balayage, les sorties des autres bascules logiques étant reliées à l’entrée de la bascule logique suivante dans la chaîne de balayage,
  • des moyens (300) de capture, si la commande prédéterminée est détectée, de la sortie de la dernière bascule logique de la chaîne de balayage en reliant les entrées des bascules logiques de la chaîne de balayage à des portes logiques,
  • des moyens de génération (300), si la commande prédéterminée est détectée, d’une information représentative du fonctionnement d’un circuit intégré pendant un chargement d’une chaîne de balayage suivante ou un déchargement de la chaîne de balayage,
  • des moyens de transfert (300), si la commande prédéterminée est détectée, de l’information représentative du fonctionnement d’un circuit intégré à un testeur.
Integrated circuit consisting of logic flip-flops and logic gates, characterized in that it comprises a single input-output connection for testing the integrated circuit and in that it comprises:
  • means (300) for receiving commands via the single input-output connection,
  • means (300) for detecting a predetermined command received by the single input-output connection,
  • means (300) for storing, if the predetermined command is detected, in a volatile memory (305) of the integrated circuit, a data vector received by the single input-output connection,
  • means (300) for reading, if the predetermined command is detected, in the volatile memory of the stored vector only when the entire vector has been stored,
  • means (300) for loading, if the predetermined command is detected, at least one scan chain consisting of a set of logic flip-flops performing a function of the integrated circuit with the read vector, the input of the first logic flip-flop receiving the read vector, and the output of the first logic flip-flop being connected to the input of the second flip-flop of the scan chain, the output of the last flip-flop of the scan chain not being connected to an input of a logic flip-flop of the scan chain, the outputs of the other logic flip-flops being connected to the input of the next logic flip-flop in the scan chain,
  • means (300) for capturing, if the predetermined command is detected, the output of the last logic flip-flop of the scan chain by connecting the inputs of the logic flip-flops of the scan chain to logic gates,
  • means for generating (300), if the predetermined command is detected, information representative of the operation of an integrated circuit during a loading of a following scan chain or an unloading of the scan chain,
  • transfer means (300), if the predetermined command is detected, of information representative of the operation of an integrated circuit to a tester.
Circuit intégré selon la revendication 1, caractérisé en ce que l’information représentative du fonctionnement d’un circuit intégré est le résultat d’une comparaison d’un contrôle de redondance cyclique calculé en sortie de la dernière bascule logique de la chaîne de balayage avec une valeur reçue du testeur.Integrated circuit according to Claim 1, characterized in that the information representative of the operation of an integrated circuit is the result of a comparison of a cyclic redundancy check calculated at the output of the last logic flip-flop of the scan chain with a value received from the tester. Circuit intégré selon la revendication 1, caractérisé en ce que l’information représentative du fonctionnement d’un circuit intégré est un contrôle de redondance cyclique calculé en sortie de la dernière bascule logique de la chaîne de balayage.Integrated circuit according to Claim 1, characterized in that the information representative of the operation of an integrated circuit is a cyclic redundancy check calculated at the output of the last logic flip-flop of the scanning chain. Circuit intégré selon l’une quelconque des revendications précédentes, caractérisé en ce que chaque commande reçue est précédée d’un signal de référence pour synchroniser le testeur et le circuit intégré.Integrated circuit according to any one of the preceding claims, characterized in that each command received is preceded by a reference signal to synchronize the tester and the integrated circuit. Circuit intégré selon l’une quelconque des revendications précédentes, caractérisé en ce que le circuit intégré comporte en outre des moyens de déchargement de la ou chaque chaîne de balayage en mettant les entrées des bascules logiques dans la même configuration que pendant le chargement de la chaîne de balayage.Integrated circuit according to any one of the preceding claims, characterized in that the integrated circuit further comprises means for unloading the or each scan chain by putting the inputs of the logic flip-flops in the same configuration as during the loading of the chain sweep. Circuit intégré selon la revendication 5, caractérisé en ce que le circuit intégré comporte en outre des moyens d’exécution d’une autre commande reçue du testeur si la commande prédéterminée n’est pas détectée.Integrated circuit according to Claim 5, characterized in that the integrated circuit further comprises means for executing another command received from the tester if the predetermined command is not detected. Circuit intégré selon la revendication 6, caractérisé en ce que l’autre commande reçue est une commande de mémorisation du vecteur dans la mémoire volatile, une commande de chargement ou de capture ou de déchargement de la chaîne de balayage.Integrated circuit according to Claim 6, characterized in that the other command received is a command to store the vector in the volatile memory, a command to load or capture or unload the scanning chain. Procédé de test d’un circuit intégré constitué de bascules logiques et de portes logiques, le circuit intégré comportant une unique connexion entrée sortie pour le test du circuit intégré, caractérisé en ce que le procédé comporte les étapes, exécutées par le circuit intégré de :
  • réception de commandes par l’unique connexion entrée sortie,
  • détection d’une commande prédéterminée reçue par l’unique connexion entrée sortie,
  • mémorisation, si la commande prédéterminée est détectée, dans une mémoire volatile du circuit intégré, d’un vecteur de données reçu par l’unique connexion entrée sortie,
  • lecture, si la commande prédéterminée est détectée, dans la mémoire volatile du vecteur mémorisé uniquement lorsque la totalité du vecteur a été mémorisée,
  • chargement, si la commande prédéterminée est détectée, d’une chaîne de balayage constituée d’un ensemble de bascules logiques réalisant une fonction du circuit intégré avec le vecteur lu, l’entrée de la première bascule logique recevant le vecteur lu, et la sortie de la première bascule logique étant reliée à l’entrée de la seconde bascule de la chaîne de balayage, la sortie de la dernière bascule de la chaîne de balayage n’étant pas reliée à une entrée d’une bascule logique de la chaîne de balayage, les sorties des autres bascules logiques étant reliées à l’entrée de la bascule logique suivante dans la chaîne de balayage,
  • capture, si la commande prédéterminée est détectée, de la sortie de la dernière bascule logique de la chaîne de balayage en reliant les entrées des bascules logiques de la chaîne de balayage à des portes logiques,
  • génération, si la commande prédéterminée est détectée, d’une information représentative du fonctionnement d’un circuit intégré pendant un déchargement de la chaîne de balayage,
  • transfert, si la commande prédéterminée est détectée, de l’information représentative du fonctionnement d’un circuit intégré à un testeur.
Method for testing an integrated circuit consisting of logic flip-flops and logic gates, the integrated circuit comprising a single input-output connection for testing the integrated circuit, characterized in that the method comprises the steps, executed by the integrated circuit, of:
  • reception of commands by the single input-output connection,
  • detection of a predetermined command received by the single input-output connection,
  • storage, if the predetermined command is detected, in a volatile memory of the integrated circuit, of a data vector received by the single input-output connection,
  • reading, if the predetermined command is detected, in the volatile memory of the stored vector only when the entire vector has been stored,
  • loading, if the predetermined command is detected, of a scan chain consisting of a set of logic flip-flops carrying out a function of the integrated circuit with the read vector, the input of the first logic flip-flop receiving the read vector, and the output of the first logic flip-flop being connected to the input of the second flip-flop of the scan chain, the output of the last flip-flop of the scan chain not being connected to an input of a logic flip-flop of the scan chain , the outputs of the other logic flip-flops being connected to the input of the next logic flip-flop in the scan chain,
  • capture, if the predetermined command is detected, of the output of the last logic flip-flop of the scan chain by connecting the inputs of the logic flip-flops of the scan chain to logic gates,
  • generation, if the predetermined command is detected, of information representative of the operation of an integrated circuit during an unloading of the scanning chain,
  • transfer, if the predetermined command is detected, of information representative of the operation of an integrated circuit to a tester.
FR2002671A 2020-03-18 2020-03-18 Method and integrated circuit for testing the integrated circuit arranged on a silicon wafer. Pending FR3108441A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR2002671A FR3108441A1 (en) 2020-03-18 2020-03-18 Method and integrated circuit for testing the integrated circuit arranged on a silicon wafer.

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2002671A FR3108441A1 (en) 2020-03-18 2020-03-18 Method and integrated circuit for testing the integrated circuit arranged on a silicon wafer.
FR2002671 2020-03-18

Publications (1)

Publication Number Publication Date
FR3108441A1 true FR3108441A1 (en) 2021-09-24

Family

ID=71784167

Family Applications (1)

Application Number Title Priority Date Filing Date
FR2002671A Pending FR3108441A1 (en) 2020-03-18 2020-03-18 Method and integrated circuit for testing the integrated circuit arranged on a silicon wafer.

Country Status (1)

Country Link
FR (1) FR3108441A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6321354B1 (en) * 1997-04-29 2001-11-20 Sgs-Thomson Microelectronics S.A. Testable circuit with a low number of leads
US20040044936A1 (en) * 2002-03-08 2004-03-04 Rearick Jeffrey R. Systems and methods for facilitating testing of pads of integrated circuits
US20060087307A1 (en) * 2002-06-21 2006-04-27 Rudi De Winter Single pin multilevel integrated circuit test interface
US20120166901A1 (en) * 2010-12-27 2012-06-28 Samsung Electronics Co., Ltd. Integrated circuit for testing smart card and driving method of the circuit

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6321354B1 (en) * 1997-04-29 2001-11-20 Sgs-Thomson Microelectronics S.A. Testable circuit with a low number of leads
US20040044936A1 (en) * 2002-03-08 2004-03-04 Rearick Jeffrey R. Systems and methods for facilitating testing of pads of integrated circuits
US20060087307A1 (en) * 2002-06-21 2006-04-27 Rudi De Winter Single pin multilevel integrated circuit test interface
US20120166901A1 (en) * 2010-12-27 2012-06-28 Samsung Electronics Co., Ltd. Integrated circuit for testing smart card and driving method of the circuit

Similar Documents

Publication Publication Date Title
EP0642683B1 (en) Method and test platforms for the development of an integrated circuit (asic)
FR2760534A1 (en) FUNCTIONAL TESTING OF IN-PROCESS CALCULATION DEVICES USING FUNCTIONAL TESTS BASED ON MICROPROGRAMS APPLIED USING THE DEVICE-SPECIFIC FIXING PORT
EP0146661B1 (en) Electrical-diagnosis method for a defect cell in a chain of cells of a shift register
US20050138514A1 (en) ABIST-assisted detection of scan chain defects
FR2626402A1 (en) METHOD AND SYSTEM FOR FUNCTIONALLY MONITORING OR TESTING AT HIGH SPEED AND WITH HIGH PRECISION OF MEMORIES IN MICROPROCESSOR UNITS
EP0578540B1 (en) Method of testing the functionality of an ASIC and related ASIC
US20080082883A1 (en) System for and method of performing high speed memory diagnostics via built-in-self-test
US7238958B2 (en) Fault position identification system for a semiconductor device and method of identifying a fault position of a semiconductor device
US20180306858A1 (en) Logic built in self test circuitry for use in an integrated circuit with scan chains
US9958502B2 (en) Defect isolation methods and systems
FR3108441A1 (en) Method and integrated circuit for testing the integrated circuit arranged on a silicon wafer.
US7607057B2 (en) Test wrapper including integrated scan chain for testing embedded hard macro in an integrated circuit chip
FR2595474A1 (en) DEVICE FOR CHECKING AND VERIFYING THE OPERATION OF INTERNAL BLOCKS IN AN INTEGRATED CIRCUIT
FR3110261A1 (en) METHOD AND SYSTEM FOR TESTING AN INTEGRATED CIRCUIT
EP3073280B1 (en) Tester of integrated circuits on a silicon wafer, and integrated circuit
US10324131B1 (en) Laser-based integrated circuit testing techniques
FR2660759A1 (en) APPARATUS AND METHOD FOR DETECTING A REDUNDANT CIRCUIT INCORPORATED IN A LOGIC CIRCUIT.
Lizarraga et al. Experimental validation of a BIST techcnique for CMOS active pixel sensors
JP2503895B2 (en) Failure analysis system for semiconductor integrated circuits
EP0408425A1 (en) Component net test appliance especially for an electronic circuit
US6353903B1 (en) Method and apparatus for testing differential signals
WO2000029953A9 (en) Method and installation for fast fault localization in an integrated circuit
FR3136868A1 (en) Fault Calendar for Accelerating Integrated Circuit Reliability Analysis
JP4433363B2 (en) Logic BIST verification device, verification simulation method, and program thereof
Bahukudumbi et al. AWafer-Level Defect Screening Technique to Reduce Test and Packaging Costs for" Big-D/Small-A" Mixed-Signal SoCs

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20210924

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5