Brevet FR2906891A1 — publié le 20080411

REGISTRE SCAN PARAMETRIQUE, CIRCUIT NUMERIQUE ET PROCEDE DE TEST D'UN CIRCUIT NUMERIQUE A L'AIDE D'UN TEL REGISTRE La présente invention concerne un registre scan paramétrique comprenant au moins une cellule scan paramétrique. Elle concerne également un procédé de test d'un circuit numérique à l'aide d'un tel registre. Elle concerne enfin un circuit numérique équipé d'au moins un registre scan paramétrique ou une cellule scan paramétrique. L'invention s'applique notamment pour le test de circuits intégrés à forte densité d'intégration, par exemple dans le domaine des nanotechnologies. Si on considère le cas des circuits intégrés (Cls) numériques, un objectif des tests est de rejeter des Cls défaillants durant un flot de fabrication, c'est-à-dire des Cls ne répondant pas aux spécifications souhaitées. On entend par Cl numérique un circuit intégré réalisant une fonction spécifique, par exemple un circuit du type ASIC (Application Specific Integrated Circuit). II est connu d'appliquer des stimuli ou vecteurs de test sur les entrées d'un Cl et d'analyser par la suite les réponses. Si les réponses observées sont comparables à celles attendues alors le test conclut à un succès, sinon le Cl est considéré comme défectueux. Un test exhaustif permet de détecter le maximum de défauts. Ce type de test est néanmoins très coûteux en terme de temps, en effet le nombre de vecteurs croît en puissance de 2 avec le nombre d'entrées. Des méthodes de test ont été proposées dans la littérature avec pour objectif de minimiser le temps de test par Cl. Ces méthodes peuvent être classées en deux catégories selon l'approche adoptée : test fonctionnel ou test structurel. Dans la première approche, les vecteurs de test sont justifiés par la fonction digitale du Cl à tester. Dans l'approche de test structurel, le but est non plus de vérifier la fonction du Cl mais sa structure. Pour cela les vecteurs de test sont générés à partir de modèles représentant des comportements fautifs de la structure du Cl. Les modèles utilisés dans le test structurel sont appelés fautes et représentent des mécanismes de défaillance dus à des défauts physiques. Par exemple, le modèle de faute de collage à 0, ou 1, représente un défaut de type court-circuit franc d'une ligne du circuit à une équipotentielle à 0, ou 2906891 2 à 1, comme décrit notamment dans l'ouvrage de C. Landrault Test de Circuits et de Systèmes Intégrés , Chap. 2, pp. 60-62, Editions Lavoisier, 2004. D'autres modèles ont été proposés afin de couvrir le maximum de défauts physiques tels que le modèle de fautes de délai pour la prise en 5 compte de retards , notamment décrit l'article de M.A. Breuer The Effects of Races, Delays and Delay Faults on Test Generation , IEEE Trans. On Computers, Vol. 23, pp. 1078-1092, Octobre 1974. Bien que ces tests permettent de détecter un large éventail de défauts physiques pendant la phase de fabrication, l'avancée dans la miniaturisation des Cls induit 10 d'autres défauts qui ne sont pas détectés par ces tests. D'autres méthodes de test sont encore connues comme le test de courant notamment décrit dans l'ouvrage de C. Landrault précité au chapitre 5, pp. 148-153. Ce test consiste à détecter une surconsommation en courant du circuit dans un état connu. Cette approche est envisageable si la 15 consommation dynamique reste suffisamment supérieure aux courants statiques d'un transistor. Une utilisation conjointe de ces méthodes de test permet de détecter la majorité des défauts physiques dans les Cls en technologie submicronique. Avec l'accroissement du nombre de fonctions intégrées dans un même 20 substrat de silicium, les techniques de test actuelles ne peuvent pas garantir une couverture complète de défauts dans un temps acceptable. Afin de limiter la complexité des tests de production, des techniques de conception des Cls en vue de ces tests ont été proposées dans la littérature. Ces techniques permettent d'améliorer la capacité de test des Cls. L'insertion de 25 chaînes dite de Scan est une solution couramment utilisée. Elle permet notamment de faciliter le test des Cls en améliorant leur contrôle et leur observabilité comme le montre l'ouvrage de C. Landrault au chapitre 7, pp. 200-210 ou l'article de M. William et J. Angel Enhancing testability of LSI Circuits via Test Points and Additional Logic , IEEE Trans. On Computers, 30 Vol. C-22, n 1, janvier 1973. Le principe de l'insertion de chaînes de Scan consiste à modifier la structure des registres mémoires d'un Cl en un registre Scan. Ce registre possède deux modes de fonctionnement : test et normal. Dans le mode test, les registres Scan proposent un accès en série. L'entrée et la sortie de la chaîne permettent respectivement le chargement et le déchargement en série de vecteurs de test et des réponses, via les entrées 2906891 3 et les sorties de test. Dans le mode normal, le fonctionnement du registre est conservé, rendant l'insertion de chaînes de Scan transparente pour le fonctionnement du Cl. Cependant, l'application de ces techniques de test classiques ne permet pas 5 de garantir que le circuit sera exempt de défaillance pendant son utilisation. Ce phénomène s'accentue avec l'utilisation des nanotechnologies. En effet, le nombre de défaillances dynamiques augmente avec la réduction des tailles des transistors. Ce type de défaillance peut être dû à des défauts induits, c'est-à-dire des mécanismes de défaillances résultant de 10 phénomènes de diaphonie entre des composants internes du circuit ou avec l'environnement extérieur. II peut aussi être dû à l'usure rapide du Cl qui se traduit par l'apparition de phénomènes physiques, par exemple une électromigration ou encore une corrosion de l'oxyde. Ainsi, si l'accroissement de la densité d'intégration des Cl numériques 15 permet d'y insérer un nombre croissant de fonctions, on constate en contrepartie une forte augmentation de la probabilité de manifestation de défauts permanents, ou de fabrication, et de défauts transitoires, en cours de fonctionnement. De tels défauts peuvent induire des défaillances pouvant être inacceptables dans certains domaines d'application. Un test, sous toutes 20 ses variantes telles que décrites précédemment, permet d'améliorer la fiabilité des Cls. Cependant, avec l'arrivée des nanotechnologies , de nouveaux problèmes technologiques se posent sur la fiabilité des Cls. Parmi les principaux problèmes, on peut citer : 25 la complexité du test qui a tendance à augmenter de manière quasi-exponentielle avec le nombre de portes logiques ou de transistors des Cls, rendant d'autant plus important les coûts de développement des Cls la réduction de la taille des procédés de fabrication qui implique 30 inévitablement une diminution de la robustesse de la technologie utilisée, ce qui se traduit notamment par la manifestation de nouveaux défauts sur la structure pour lesquels les techniques de test actuelles ne permettent pas leur détection ; le comportement plutôt analogique des Cls en technologie 35 nanométrique qui montre que certains mécanismes de défaillance, 2906891 4 auparavant masqués dans les technologies submicroniques, deviennent prépondérants, en particulier, les phénomènes transitoires et les bruits engendrés par l'environnement extérieur ou la structure elle-même deviennent prépondérants pendant le fonctionnement d'un 5 Cl, normal ou sous test. Dans la suite du document, on entend par cellule un élément de mémoire unitaire d'un Cl. Une cellule mémoire comporte typiquement une bascule et des éléments de structure. 10 Un registre est un opérateur logique composé de n cellules présentant chacune une sortie logique, muni de commandes globales, d'inhibition ou de remise à zéro notamment. II est destiné à garder momentanément en mémoire un nombre binaire de n chiffres. Un registre est composé d'au moins deux cellules mémoire qui peuvent ou non être chaînées entre elles. 15 Une chaîne de scan est constituée par la mise en série, uniquement pour le test, des cellules dans un registre. Un registre scan (RS) est composé de plusieurs cellules de scan. Un registre scan paramétrique (RSP) comporte plusieurs cellules de scan, dont au moins une cellule de scan paramétrique (CSP). 20 Un Cl comporte au moins une cellule mémoire et généralement au moins un registre de plusieurs cellules. Un but de l'invention est notamment de répondre à ces problèmes. A cet effet, l'invention a pour objet un registre scan comportant une cellule 25 mémoire scan paramétrique ayant au moins une entrée de donnée d, apte à recevoir une donnée de test e_scan, et transférant sur sa sortie s un signal représentatif de la donnée d'entrée au moyen d'un signal de synchronisation, la cellule scan comporte en outre un bloc de test paramétrique dont une entrée est reliée à la sortie s de la cellule mémoire, le signal de sortie s de la 30 cellule étant transféré en sortie s_reg du bloc à travers un module interne, ce module interne fonctionnant selon des modes aptes à modifier les propriétés du signal de sortie de la cellule CSP. Avantageusement, la sortie s_reg du bloc de test paramétrique forme par exemple la sortie de ladite cellule scan paramétrique. 2906891 5 Plusieurs modes de fonctionnement du bloc de test paramétrique sont possibles. Dans un mode de fonctionnement normal, le signal de sortie de la cellule mémoire est, par exemple, transféré en sortie du bloc sans modification. Dans d'autres modes, un retard est appliqué sur le signal de 5 sortie de la cellule mémoire, sur la pente ou sur l'état transitoire, ce retard pouvant être infini de telle sorte que la sortie du bloc de test paramétrique affiche la valeur précédemment présente avant le front d'horloge. Dans d'autres modes, une modification d'amplitude est appliquée sur le signal de sortie de la cellule mémoire. Ces modifications sont, par exemple, effectuées 10 par un module interne au bloc de test paramétrique. Dans une variante de réalisation, le bloc de test paramétrique comporte par exemple un module de génération de signaux arbitraires, ces signaux étant transférés sur la sortie du bloc. Selon les modes précédents des modifications peuvent être appliquées aux signaux arbitraires, ces derniers 15 pouvant par ailleurs être fournis par un générateur extérieur. La cellule scan comporte par exemple en entrée un multiplexeur dont la sortie est reliée à l'entrée d de la cellule mémoire, une entrée du multiplexeur recevant la donnée de test e_scan, la donnée de test e_scan étant sélectionnée en sortie du multiplexeur par une entrée de contrôle 20 ctrl_NormTest. L'invention a également pour objet un circuit intégré numérique comportant au moins un registre scan paramétrique tel que défini précédemment. Avantageusement, ce circuit numérique comporte par exemple un contrôleur 25 générant des signaux de sélection des modes de fonctionnement du bloc de test paramétrique. L'invention a également pour objet un procédé de test d'un circuit intégré numérique comportant des registres scan dont au moins un registre scan tel 30 que défini précédemment, le procédé comportant au moins les étapes suivantes : charger au moins un vecteur de test dans les registres scan ; sélectionner un mode de fonctionnement du bloc de test paramétrique équipant le ou les registres scan (CS) ; 2906891 6 - valider le mode de fonctionnement pour modifier le signal d'entrée du bloc avant sa propagation dans le circuit numérique ; analyser le signal en sortie du chemin sous test, le chemin sous test étant situé entre la sortie s_reg et une sortie primaire ou secondaire 5 du Cl. En option il est possible de prévoir, en fonction du mode de test choisi de prévoir une étape de chargement d'un vecteur de sensibilisation pour agir sur la commutation des cellules scan paramétriques. En d'autres termes, le procédé comporte en outre une étape supplémentaire entre l'étape de 10 validation du mode de fonctionnement et l'étape d'analyse du signal en sortie du chemin sous test, cette étape consistant à charger un vecteur de sensibilisation pour agir sur la commutation de ou des cellules formant un registre scan paramétrique. Un vecteur de test est par exemple un mot binaire de n bits où n est le nombre de cellules scan dans le registre. 15 D'autres caractéristiques et avantages de l'invention apparaîtront à l'aide de la description qui suit faite en regard de dessins annexés qui représentent : la figure 1, une illustration d'un modèle générique de Cl numérique séquentiel ; 20 la figure 2, une présentation par un schéma de principe d'une cellule mémoire simple d'un registre ; la figure 3, une présentation d'une cellule scan selon l'art antérieur d'un registre scan ; la figure 4, une présentation d'un exemple de cellule scan 25 paramétrique selon l'invention ; la figure 5, une illustration d'un premier mode de fonctionnement d'une cellule scan paramétrique selon l'invention ; la figure 6, une illustration d'un mode de fonctionnement appliquant des délais ; 30 la figure 7, une illustration d'un mode de fonctionnement appliquant des modifications de niveau d'amplitude ; la figure 8, une illustration d'un mode de fonctionnement combinant les deux modes précédents ; 2906891 7 la figure 9, un autre exemple de réalisation d'une cellule scan paramétrique selon l'invention générant notamment des signaux arbitraires ; la figure 10, un exemple de mise en oeuvre d'un procédé de test 5 paramétrique selon l'invention ; la figure 11, un état des cellules scan contenues dans un registre lors du chargement d'un vecteur de test ; la figure 12, une illustration d'un résultat de test observée dans les cellules du registre du registre scan précité. 10 La figure 1 illustre un modèle générique de représentation d'un Cl numérique 10. La fonction réalisée par un Cl numérique peut se représenter sous la forme d'une machine de Moore ou de Mealy telle que décrite notamment dans le document de E.F. Moore Sequential Machines : 15 Selected Papers , Addison Wesley, Reading, MA, 1964. Dans ces deux modèles, le Cl est divisé en deux parties : une partie combinatoire 1 et une partie registre 2. La partie combinatoire peut se représenter par une fonction logique à n entrées 3 et k sorties 4. La partie registre 2 regroupe r cellules mémoires dont les entrées, respectivement les sorties, sont connectées à r 20 sorties 12, ou entrées 11, secondaires de la partie combinatoire 1. Plus précisément, les r entrées de la partie registre 2 sont reliées à r sorties secondaires parmi les k sorties de la partie combinatoire 1. De même, les r sorties de la partie registre 2 sont reliées à r entrées secondaires parmi les n entrées de la partie combinatoire. Il s'ensuit que r REVENDICATIONS 1. Registre scan paramétrique comportant une cellule scan (21, C2) ayant au moins une entrée de donnée (d), apte à recevoir une donnée de test (e_scan), et transférant sur sa sortie (s) un signal représentatif (62) de la donnée d'entrée au moyen d'un signal de synchronisation (h), caractérisé en ce que la cellule scan (21, C2) comporte un bloc de test paramétrique (42) dont une entrée est reliée à la sortie (s) de la cellule scan (21), le signal de sortie (62) de la cellule scan étant transféré en sortie (s_reg) du bloc (42) à travers un module interne (61), ce module interne fonctionnant selon des modes aptes à modifier le signal de sortie (62) de la cellule scan. 2. Registre selon la revendication 1, caractérisé en ce que la sortie (s_reg) du bloc de test paramétrique (42) forme la sortie de la cellule. 3. Registre selon l'une quelconque des revendications précédentes, caractérisé en ce que dans un mode de fonctionnement le signal de sortie (62) de la cellule (21) est transféré en sortie du bloc (42) sans modification (51). 4. Registre selon l'une quelconque des revendications précédentes, 20 caractérisé en ce que dans un mode de fonctionnement, le module interne (61) applique un retard sur le signal de sortie (62) de la cellule. 5. Registre selon la revendication 4, caractérisé en ce que dans un mode de fonctionnement le module (61) applique un retard (Tr) sur le signal de sortie 25 (62) de la cellule. 6. Registre selon l'une quelconque des revendications 4 ou 5, caractérisé en ce que dans un mode de fonctionnement le module (61) applique un retard (Tm) sur l'état transitoire du signal de sortie (62) de la cellule. 7. Registre selon la revendication 4, caractérisé en ce que dans un mode de fonctionnement le module (61) applique un retard infini sur le signal de sortie (62) de la cellule. 30 2906891 19 8. Registre selon l'une quelconque des revendications précédentes, caractérisé en ce que dans un mode de fonctionnement le module interne (61) applique une modification d'amplitude du signal de sortie (62) du de la cellule. 9. Registre selon l'une quelconque des revendications précédentes, caractérisé en ce que le bloc de test paramétrique (42) comporte un module de génération de signaux arbitraires (91), ces signaux étant transférés sur la sortie (s_reg) du bloc (42). 10 10. Registre selon la revendication 9, caractérisé en ce que les signaux générés par le module (91) sont transférés sur la sortie (s_reg) du bloc (42) à travers le module interne (61) de modification de signaux. 15 11. Registre selon l'une quelconque des revendications 9 ou 10, caractérisé en ce que la sortie (s_reg) du bloc de test paramétrique (42) est issue de la sortie d'un multiplexeur (92), une entrée du multiplexeur recevant un signal arbitraire généré par un générateur externe (94). 12. Registre selon l'une quelconque des revendications précédentes, caractérisé en ce qu'il comporte en entrée un multiplexeur (32) dont la sortie est reliée à l'entrée (d) de la cellule (21), une entrée (Dl) du multiplexeur recevant la donnée de test (e_scan), la donnée de test (e_scan) étant sélectionnée en sortie du multiplexeur (32) par une entrée de contrôle (ctrl_NormTest). 13. Circuit intégré numérique, caractérisé en ce qu'il comporte au moins un registre scan paramétrique selon l'une quelconque des revendications précédentes. 14. Circuit intégré numérique selon la revendication 13, caractérisé en ce qu'il comporte un contrôleur (33) générant des signaux de sélection des modes de fonctionnement du bloc de test paramétrique (42). 5 2906891 20 15. Circuit intégré numérique selon la revendication 14, caractérisé en ce que le contrôleur (33) génère le signal de contrôle (ctrl_NormTest) du multiplexeur d'entrée (32). 5 16. Procédé de test d'un circuit intégré numérique, ledit circuit comportant des cellules scan (Cl, C2, C3) dont au moins une cellule scan formant un registre scan paramétrique selon l'une quelconque des revendications 1 à 12, caractérisé en ce qu'il comporte au moins les étapes suivantes : charger au moins un vecteur de test (0, 1, 1) dans les cellules (Cl, 1 o C2, C3) ; sélectionner un mode de fonctionnement du bloc de test paramétrique (42) équipant la cellule scan (C2) formant un registre scan paramétrique ; - valider le mode de fonctionnement pour modifier le signal d'entrée 15 (62) du bloc (42) avant sa propagation dans le circuit numérique ; analyser le signal (100) en sortie du chemin sous test. 17. Procédé de test selon la revendication 16, caractérisé en ce qu'il comporte en outre une étape supplémentaire entre l'étape de validation du 20 mode de fonctionnement et l'étape d'analyse du signal en sortie du chemin sous test, cette étape consistant à charger un vecteur de sensibilisation pour agir sur la commutation de ou des cellules formant un registre scan paramétrique. 25 30