Brevet FR2692695A1 — publié le 19931224

PROCEDE ET DISPOSITIF D'AUTO-TEST DE MICROPROCESSEUR La présente invention concerne un procédé et dispositif d'auto-test de microprocesseur. L'invention s'applique notamment aux systèmes de sécurité commandés par microprocesseurs. Plus généralement, elle s'applique à tous systèmes commandés par microprocesseurs et dont il est nécessaire d'assurer une grande sûreté de fonctionnement. Les systèmes de contrôle et de sécurité nécessitant une grande sûreté de fonctionnement n'utilisent généralement pas de microprocesseurs à cause du manque de fiabilité accordé à ces derniers pour de telles applications. Ces systèmes de contrôle et de sécurité utilisent alors des circuits discrets et banalisés dont la fiabilité est éprouvée. Cependant de tels circuits produisent des systèmes encombrants et coûteux. Par ailleurs, la complexité croissante des séquences de contrôle et de sécurité exige des systèmes de plus en plus souples, condition que les systèmes précités ne remplissent manifestement pas. Un moyen d'accroître leur souplesse tout en réduisant leur encombrement et leur coût consiste à utiliser des circuits numériques, notamment un ou plusieurs microprocesseurs. Pour augmenter la fiabilité de ces derniers, des techniques connues de l'homme de métier font notamment appel à des analyses de signatures de séquences de test. Celles-ci sont contenues dans les séquences de code délivrées par les microprocesseurs et obtenues par compactage de celui-ci. Les signatures sont testés en permanence. Quand une mauvaise signature est détectée, le microprocesseur en cause est considéré être en mauvais fonctionnement et diverses actions sont alors mises en oeuvre suivant par exemple le degré de sûreté exigé pour le système. Dans le cas de systèmes à grande sûreté de fonctionnement, les séquences de test sont de préférence complexes. En conséquence les circuits de compactage, et d'analyse de signature, extérieurs aux microprocesseurs, sont complexes tout en restant construits à base de composants discrets et banalisés. Ainsi, si la souplesse de fonctionnement d'un système de contrôle et de sécurité, par exemple, est alors assurée, son encombrement et son coût restent importants comme dans le cas précédent où tout le système était réalisé par des composants discrets. De plus, cette complexité des circuits d'analyse de signature tend elle même à diminuer la fiabilité de l'ensemble. Le but de l'invention est de pallier les inconvénients précités, notamment en supprimant le circuit de compactage et en élaborant un codage de séquences de test pour microprocesseurs complexe et donc adapté à des applications à grande sûreté de fonctionnement tout en réduisant le nombre de circuits nécessaires à l'analyse de signatures. A cet effet, I'invention a pour objet un procédé d'auto-test de microprocesseur, le microprocesseur délivrant des séquences de test, les séquences de test générant une signature comparée à une signature de référence, caractérisé en ce que la juxtaposition des séquences de test dans un ordre donné compose un code périodique répétant un motif, ce motif constituant la signature comparée à la signature de référence, les deux signatures différentes indiquant un mauvais fonctionnement du microprocesseur. L'invention à également pour objet un dispositif pour la mise en oeuvre du procédé précité. Outre les avantages déjà mentionnés, l'invention a pour principaux avantages qu'elle permet des auto-tests de micro-processeurs les plus exhaustifs possibles, qu'elle augmente la fiabilité des systèmes qui les utilisent, qu'elle s'adapte à tous types de microprocesseurs, qu'elle est transparente vis à vis du fonctionnement de ces derniers, qu'elle est économique et facile à mettre en oeuvre. D'autres caractéristiques et avantages de l'invention apparaîtront à l'aide de la description qui suit faite en regard des dessins annexés qui représentent - la figure 1, un dispositif de test selon l'art antérieur - la figure 2a, un motif de base, représenté dans le domaine analogique, contenu dans une séquence de test selon l'invention; - la figure 2b, la répétition du motif précédent - la figure 2c, la répétition du motif précédent dans deux branchements de programme différents - la figure 3a, la juxtaposition de séquences de test selon l'invention; - la figure 3b, un stockage possible des séquences précédentes dans une mémoire - la figure 3c, les séquences précédentes déroulées dans un mauvais ordre - la figure 4, un premier mode de réalisation possible pour la mise en oeuvre du procédé selon l'invention; - la figure 5, un deuxième mode de réalisation possible pour la mise en oeuvre du procédé selon l'invention; - les figures Ga à 6k, un exemple de déroulement de test selon l'invention. La figure 1, présente un système d'analyse de signature relatif à un codage de séquences de test selon l'art antérieur. Une séquence de test entre dans un circuit numérique 1 à tester, ce circuit peut par exemple être un microprocesseur. Dans ce cas, la séquence de test peut être contenue dans une mémoire puis lue par le microprocesseur qui la stocke provisoirement dans un de ses registres. A sa sortie, le circuit numérique 1 délivre la séquence de test d'entrée ou une séquence fonction de cette dernière, codée par exemple sur m bits. La suite de 1 et de 0 représentés sur la figure 1 illustre un exemple de séquence en sortie du circuit numérique 1. Cette séquence est caractéristique de son bon fonctionnement et il convient de la reconnaître. A cet effet, la sortie du circuit numérique l est reliée à l'entrée d'un circuit de compactage, appelé encore compacteur 2, qui transforme les m bits de la séquence générée par le circuit numérique en k bits caractéristiques de cette séquence, k étant inférieur à m. Ces k bits constituent la signature de la séquence. A titre d'exemple, sur la figure 1, cette signature est présentée égale à 1011, en sortie du compacteur 2. Le compactage de la séquence de test permet de limiter le nombre de bits sur lesquels est effectuée l'analyse. Dans le cas de la figure 1, cette analyse se fait par comparaison entre la signature obtenue en sortie du compacteur 2 et une signature de référence 3 stockée en mémoire par exemple. A cet effet, la sortie du compacteur 2 est reliée à une entrée de moyens de comparaison 4 et la mémoire contenant la signature de référence 3 est reliée à l'autre entrée des moyens de comparaison. Le compacteur 2 contient généralement un diviseur polynomial qui doit posséder des caractéristiques telles qu'il puisse minimiser les probabilités de masquage ou de création de faux homonymes correspondant à des cas où deux séquences d'entrée différentes produisent la même signature. Dans le cas du test d'un micro-controleur ou d'un microprocesseur par exemple, la séquence de test générée peut être fournie par le bon déroulement du programme, chaque instruction déroulée émettant par exemple une séquence de bits caractéristique. Après compactage, les séquences générées fournissent des suites de signatures successives à comparer à la signature de référence. Des séquences complexes augmentent le nombre de circuits nécessaires à la réalisation du compacteur 2, des moyens de comparaison 4 et des circuits de mémoire de la signature de référence 3. Cependant, un système comprenant un microprocesseur et un organe extérieur d'analyse de signature est d'autant plus fiable que la signature est issue d'une sequence complexe et que le circuit d'analyse de signature est simple. Par ailleurs, alors que l'augmentation de circuits discrets par exemple tend à diminuer la fiabilité, l'accroissement de complexité du code servant à générer les séquences de test n'influe pas sur la fiabilité d'un microprocesseur. Le procédé d'auto-test de microprocesseur selon l'invention consiste donc à définir des séquences d'auto-test complexes, propres à assurer la fiabilité de systèmes à microprocesseurs nécessitant une grande sûreté de fonctionnement, tout en simplifiant l'analyse de signature. A cet effet, selon l'invention, les séquences de test générées par le microprocesseur composent, quand elles sont dans un certain ordre, un code périodique. Ce code périodique est produit par le microprocesseur lors de son fonctionnement opérationnel. Cela se traduit par la répétition d'un motif de base dont le code est prédéterminé. La figure 2a montre un exemple de motif de base M représenté dans le domaine analogique pour faciliter la compréhension du procédé selon l'invention. La figure 2a représente donc l'amplitude Am du motif de base M en fonction du temps. Le codage numérique de ce motif M correspond à la période du code périodique généré par un microprocesseur en auto-test selon l'invention. Le microprocesseur produit ce code périodique en générant des séquences de test successives, de longueurs éventuellement variables, la longueur correspondant ici au nombre de bits. A partir d'un jeu donné de séquences, la juxtaposition de celIes-ci dans un ordre donné compose le code périodique. Ces séquences sont répétées dans cet ordre donné durant toute la phase d'auto-test du microprocesseur et donc éventuellement pendant tout le déroulement du programme opérationnel. La figure 2b, illustre un exemple de reconstitution possible d'un code périodique à partir de la juxtaposition de séquences générées par le microprocesseur. Les séquences sont représentées dans le domaine analogique, le codage numérique de leur amplitude Am en fonction du temps t pouvant correspondre aux séquences de test effectivement déroulées par le microprocesseur. Dans l'exemple de la figure 2b, six séquences A, B, C, D, E, F composent respectivement un signal périodique dont le motif répétitif ou la période est par exemple le motif de base de la figure 2a. Le bon fonctionnement du microprocesseur entraîne donc le déroulement de la séquence A, suivie respectivement de la séquence B, puis de la séquence C, puis de la séquence D, puis de la séquence E, puis de la séquence F. Cette dernière est suivie de la séquence A et ainsi un nouveau cycle de déroulement des séquences recommence. Sur la figure 2b, la séquence A est séparée de la séquence B par un trait 21, la séquence B est séparée de ia séquence C par un trait 22, la séquence C est séparée de la séquence D par un trait 23, la séquence D est séparée de la séquence E par un trait 24, la séquence E est séparée de la séquence F par un trait 25 et la séquence F est séparée de la séquence A par un trait 26. Si un autre ordre d'exécution est adopté, le code résultant n'est plus périodique et le motif M n'est plus reproduit. Ainsi, selon l'invention, le bon fonctionnement du microprocesseur implique la répétition du motif M à partir du déroulement des séquences précitées. Le motif M constitue la signature de ces séquences L'analyse de cette signature peut se faire par exemple en comparant la suite de séquences A, B, C, D, E, F avec un motif de référence, égal au motif M, chaque comparaison étant initialisée, par exemple par des moyens de comptage, à partir d'un instant de recommencement du motif M. Cette signature n'est pas reproduite si l'ordre des séquences A, B, C, D, E, F, d'un cycle n'est pas respecté ou si l'une de ces séquences n'est pas convenabIement reproduite. Dans les deux cas, cela témoigne d'un dysfonctionnement du microprocesseur. Le procédé d'auto-test selon l'invention permet au microprocesseur de générer une séquence globale complexe, correspondant à l'ensemble de toutes les séquences A, B, C, D, E, F d'un cycle alors que l'analyse de la signature ne porte que sur le motif M répété à l'intérieur de ce cycle. La figure 2c, illustre un cas, fréquent en pratique, où le déroulement du programme comprend au moins deux branches de traitement. Ces deux branches se séparent au niveau des deuxième et troisième séquence C, D du cycle de séquences précédent. A la place de ces deux séquences C, D peuvent se dérouler par exemple successivement trois séquences C', D', D". Sur la figure 2c, C' est séparée de D' par un trait 27 et D' est séparée de D" par un trait 28. Le bon déroulement de la seconde branche implique que les séquences A, B, C', D', D", E, F se suivent respectivement, car dans ce cas, la répétition du motif M est bien reproduite. La figure 3a, illustre un autre exemple d'auto-test selon l'invention, mais cette fois-ci, représenté directement avec des données numériques. Dans ce cas le motif M' est codé par exemple sur cinq bits, et M' = 01011. Les séquences S1, S2, S3, S4 > S5 déroulées par le microprocesseur et dont la juxtaposition reproduit la répétition du motif M' sont par exemple de même longueur, égale à quatre bits, et au nombre de cinq. M' = 01011 constitue leur signature. Les séquences sont par exemple les suivantes S1 = 0101 S2 = 1010 S3 = 1101 S4 = 0110 S5 = 1011 Cet ensemble de cinq séquences de 4 bits chacune constitue en fait une séquence globale, plus complexe de 20 bits. La figure 3b, représente cinq emplacements 31, 32, 33, 34, 35 d'une mémoire Me ou d'un registre d'un microprocesseur à tester où sont stockées respectivement les séquences S1, S2, S3, S4, S5. En cas de bon fonctionnement, le microprocesseur déroule successivement et dans le bon ordre les données présentes à ces emplacements. Un analyseur de signature vérifie alors le bon déroulement du motif M' égal à 01011 qui est la signature du mot global constitué des séquences S1, S2, S3, S4, S5. La figure 3c, illustre un cas de dysfonctionnement où les quatrièmes et cinquièmes séquences S4, S5 ont été inversées., Durant le déroulement des trois premières séquences, le motif M' est bien reproduit et donc la signature est bonne, mais après la troisième séquence S3 apparaît une signature produite par un motif Ml = 01101 différente de la signature de référence 01011 de l'exemple d'application donné. De même le motif suivant M2 reproduit une mauvaise signature. Toujours à partir du même exemple d'application que celui des figures 3a, 3b et 3c, le synoptique de la figure 4 illustre un premier mode de réalisation possible d'un dispositif pour la mise en oeuvre du procédé selon l'invention. Un premier registre à décalage 41, contient par exemple la signature de référence, égale à 01011 dans l'exemple d'application donné. La sortie de ce premier registre à décalage est par exemple rebouclée sur son entrée. La sortie du microprocesseur à tester déroulant les séquences de test S1, S2, S3, S4, S5 est reliée par exemple à l'entrée d'un registre à décalage 42 dont les bits se décalent par exemple en même temps que ceux du premier registre 41, pour cela, la sortie du deuxième registre 42 est par exemple reliée à une entrée de commande du premier registre 41, cette liaison n'est pas représentée sur la figure 4, d'autres moyens connus de l'homme du métier étant possibles pour synchroniser les deux décalages. Un décalage se produit à chaque fois qu'un nouveau bit se présente à l'entrée du deuxième registre 42. Les sorties des deux registres à décalages 41, 42 sont reliées chacune sur une entrée d'un comparateur 43. Quand la signature contenue dans le deuxième registre 42 est différente de la signature de référence contenue dans le premier registre 41, cela se traduit par l'apparition de deux bits différents sur les deux entrées du comparateur 43. La sortie de ce dernier, reliée par exemple à un circuit de commande 44, indique par exemple par un niveau logique l'égalité ou l'inégalité des bits présents à ses entrées. En cas de mauvais fonctionnement, c'est à dire par exemple en cas d'inégalité des bits, du microprocesseur testé, le circuit de commande peut mettre par exemple celui-ci hors circuit ou engager toute autre action. Le synoptique du dispositif de la figure 4 est simple car il s'applique à l'exemple didactique illustré par les figures 3a, 3b et 3c où le nombre de bits de chacune des séquences est faible. Dans la pratique, pour des systèmes à grande sûreté de fonctionnement, l'auto-test des microprocesseurs nécessite un nombre de bits plus important. En appliquant le procédé d'auto-test selon l'invention, il est alors possible de réaliser directement un mode de lecture des séquences de test en sortie d'un microprocesseur par transformée de Laplace discrète effectuées sur ces séquences de test, ce qui diminue le nombre de circuits nécessaire à l'analyse de la signature. Pour illustrer un autre mode de réalisation possible d'un dispositif d'auto-test selon l'invention faisant appel à la lecture de la signature par transformée de Laplace discrète, l'exemple de signatures et de séquences suivant a été choisi. Dans cet exemple d'application, cette signature comprend neuf bits et est égale à M" = 100110101. Là encore pour des raisons didactiques, le nombre de bits de la signature est limité à neuf, mais ce nombre peut très facilement être augmenté dans la pratique. Neuf séquences S'1, S'2, S'3, S'4, S'5, S'6, S'7, S'8, S '9 qui se suivent composent une répétition de la signature M", ces séquences ont par exemple les codes suivant S'1 = 10011010 S'2 = 11001101 S'3 = 01100110 S'4 = 10110011 S'5 = 01011001 S'6 = 10101100 S'7 = 11010110 S'8 = 01101011 S'9 = 00110101 Ces neuf séquences de 8 bits chacune constituent en fait une séquence globale de 64 bits. En choisissant par exemple un code égal à 111111111 en sortie du dispositif d'auto-test selon l'invention alors que le code d'entrée répète la signature précédente, égale à 100110101, en réalisant la division polynomiale du rapport du code de sortie par la signature de façon à obtenir une décomposition en polynômes premiers et enfin en appliquant la transformée de Laplace discrète à chacun de ces polynômes premiers, selon des méthodes connues de l'homme du métier, il se déduit un câblage de circuits logiques élémentaires, permettant d'obtenir le code de sortie 111111111 à partir du code d'entré égal à 100110101 qui est la signature à vérifier. Les figures 5 et 6a à 6k, illustrent un mode de réalisation possible d'un dispositif d'auto-test selon l'invention obtenu par transformée de Laplace discrète et appliqué aux séquences de test S'1 à S'9 précédentes, le code d'entrée à vérifier à l'entrée du dispositif d'auto-test étant la signature précédente 100110101 et le bon déroulement de ce code à l'entrée du dispositif entraînant le déroulement d'une suite de 1 par exemple à la sortie du dispositif. Une telle suite simplifie les moyens de comparaison en sortie du dispositif d'auto-test, puisqu'il ne suffit plus que de vérifier le déroulement d'un même niveau logique, le niveau logique 0 aurait à cet effet très bien pu être choisi. Une partie du dispositif d'auto-test selon l'invention constitue en fait des moyens de transformation qui transforment la signature présente à leur entrée en une suite de bits de -me me valeur, une mauvaise signature produisant le changement d'état d'au moins un de ces bits, la transformation pouvant être une transformation de Laplace discrète. Le dispositif d'auto-test représenté par la figure 5 comprend six registres à décalages 51, 52, 53, 54, 55, 56 câblés en série. Chaque registre contient par exemple un bit, la présence d'un nouveau bit à l'entrée décale l'ancien bit contenu à la sortie du registre. Ce décalage peut par exemple être commandé par des moyens de synchronisation non représentés mais connus de l'homme du métier. L'entrée du dispositif est une entrée d'une première porte logique "ou inclusif" 59 dont la sortie est reliée à l'entrée du premier registre 51. L'autre entrée de la première porte "ou inclusif" 59 est reliée à la sortie d'une première porte logique "ou exclusif" 57 dont une première entrée est reliée à la sortie du premier registre 51, une deuxième entrée étant reliée à la sortie du quatrième registre 54, une troisième entrée à la sortie du cinquième registre 55 et une quatrième entrée à la sortie du sixième registre 56. La première porte "ou exclusif" 57 fonctionne de telle façon que sa sortie est égale à 1 si une seule de ses entrées est égale à 1 et est égale à 0 dans tous les autres cas. La première porte "ou inclusif" 59 fonctionne de telle façon que sa sortie est égale à 0 si ses deux entrées sont à O et est égale à 1 dans tous les autres cas. La sortie du sixième registre 56 est reliée à une entrée d'une deuxième porte logique "ou inclusif" 60. La sortie de la première porte "ou inclusif" 59 est reliée à une entrée d'une deuxième porte logique "ou exclusif" 58, l'autre entrée de cette dernière étant reliée à la sortie du troisième registre 53. La sortie de la deuxième porte "ou exclusif" 58 est reliée à l'autre entrée de la deuxième porte "ou inclusif" 60. La deuxième porte logique "ou inclusif" 60 fonctionne de la même façon que la première 59 et la deuxième porte logique "ou exclusif" 58 fonctionne de la même façon que la première 57. La sortie de la deuxième porte "ou inclusif" 60 est par exemple reliée à une entrée d'un comparateur 61, l'autre entrée du comparateur 61 étant reliée à la sortie d'une mémoire 62 contenant par exemple un bit, ce bit étant un bit de référence, égal à 1 dans le cas d'application où la sortie de la porte "ou inclusif" 60 déroule une suite continue de 1 en cas de bon fonctionnement du microprocesseur à tester. La sortie du comparateur 61 indique par exemple par un niveau logique prédéterminé une différence de valeur entre les bits présents à ses deux entrées. Le dispositif de la figure 5 n'étant pas en fonctionnement, les registres à décalage 51, 52, 53, 54, 55, 56 sont par exemple initialisés à la valeur 0. Le rebouclage des sorties de certains registres sur les entrées des portes "ou exclusif" 57, 58 permet d'économiser des registres à décalage. Dans l'exemple présente, alors que le nombre de bits de la signature est égal à 9, seulement 6 registres sont nécessaires. De plus, la séquence de test globale correspond à un mot complexe de 64 bits. Les figures 6a à 6k, illustre la lecture de la signature 100110101 précédemment donnée à titre d'exemple et les bits correspondants en sortie de la deuxième porte "ou inclusif" 60 avant le comparateur 61, le dispositif d'auto-test étant celui de la figure 5 sans la mémoire 62 et le comparateur 61. La succession de bits sortant de la deuxième porte "ou inclusif" 60 est représentée par son code souligné à droite de cette dernière. La figure 6a correspond au cas initial où le bit délivré par un microprocesseur à tester et présent à l'entrée du dispositif d'auto-test, donc de la première porte "ou inclusif" 59 a une valeur égale à 0. Dans ce cas, tous les registres à décalages ayant été initialisés à 0, la sortie de la deuxième porte "ou inclusif" 60 est égale à 0. Dans les figures suivantes, la signature 10010101 se déroule à l'entrée du dispositif, son cablage étant tel que la sortie de la deuxième porte "ou inclusif" 60 présente un bit égal à 1 en cas de bon déroulement de cette signature. La figure 6b correspond au cas où le bit à l'entrée du dispositif de test est égal à 1, la figure 6c au cas où il est égal à 0, la figure 6d au cas où il est égal à 0, la figure 6e au cas où il est égal à 1, la figure 6f au cas où il est égal à 1, la figure 6g au cas où il est égal à 0, la figure 6h au cas où il est égal à 1, la figure 6i au cas où il est égal à 0, la figure 6j au cas où il est égal à 1 et la figure 6k au cas où il est égal à 1. Selon l'invention la signature 100110101, étant un motif se répétant à l'entrée du dispositif de test, la figure 6k correspond au début de la signature suivante. Tant que la sortie de la deuxième porte logique "ou inclusif" 60 délivre un bit égal à 1, le comparateur 61, comparant ce bit avec le bit inscrit en mémoire 62 de valeur égal à 1 indique à sa sortie, par un niveau logique prédéterminé, l'égalité des deux bits. En cas d'inégalité, cela indique un dysfonctionnement du microprocesseur à tester. Dans le cas de la figure 6a, au moment de la phase d'initialisation où la valeur d'entrée du dispositif d'auto-test ne correspond pas à la signature, cela entraîne une valeur 0 en sortie de la deuxième porte "ou inclusif" 60 non significative, la sortie du comparateur 61 peut alors être inhibée durant cette phase. La figure 5 et les figures 6a à 6k présentent un mode de réalisation possible d'un dispositif d'auto-test pour la mise en oeuvre du procédé selon l'invention. Selon la longueur et la valeur de la signature choisie et aussi selon le code de sortie défini en sortie du dispositif d'auto-test, d'autres dispositifs analogues sont réalisables pour la mise en oeuvre de ce procédé, notamment des dispositifs ayant en entrée une première porte "ou inclusif " suivie d'une suite de registres à décalages câblés en série et dont le dernier est relié à l'entrée d'une deuxième porte logique "ou inclusif", l'autre entrée de chacune des portes "ou inclusif" étant reliée à la sortie d'une porte "ou exclusif". Dans ce type de dispositif, le nombre de registre à décalage ainsi que le rebouclage de leur sortie sur l'une ou l'autre des deux portes logiques "ou exclusif" dépend en fait de la signature choisie et du choix du code se déroulant en sortie de la deuxième porte logique "ou inclusif". REVENDICATIONS 1. Procédé d'auto-test de microprocesseur, le microprocesseur délivrant des séquences de test, les séquences de test générant une signature comparée à une signature de référence, caractérisé en ce que la juxtaposition des séquences de test dans un ordre donné compose un code périodique répétant un motif (M, M', M"), ce motif constituant la signature comparée à la signature de référence, les deux signatures différentes indiquant un mauvais fonctionnement du microprocesseur. 2. Procédé selon la revendication 1, caractérisé en ce que les séquences ont la même longueur. 3. Procédé selon l'une quelconque des revendications 1 ou 2, caractérisé en ce que les séquences (S1, S2, S3, S4, S5) sont stockées dans une mémoire (Me) et lues par le microprocesseur. 4. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que la signature (M") est transformée en une suite de bits de même valeur par des moyens de transformation (51, 52, 53, 64, 55, 56, 59, 60), la signature (M") à l'entrée des moyens de transformation différente de la signature de référence produisant à leur sortie le passage d'au moins un bit de valeur différente de celle des autres bits de sortie. 5. Procédé selon la revendication 4, caractérisé en ce que la transformation est une transformation de Laplace discrète. 6. Dispositif pour la mise en oeuvre du procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce qu'il comprend au moins - un premier registre à décalage (41) dont la sortie est rebouclée sur l'entrée et est reliée à une entrée d'un comparateur (43) - un deuxième registre à décalage (42) dont l'entrée est reliée à la sortie du microprocesseur et la sortie est reliée à l'autre entrée du comparateur (43). 7. Dispositif pour la mise en oeuvre du procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce qu'il comprend au moins - une première porte logique "ou inclusif" (59) dont une entrée constitue l'entrée du dispositif, l'autre entrée étant reliée à la sortie d'une première porte logique "ou exclusif (57) - des registres à décalage (51, 52, 53, 54, 55, 56) reliés en série, l'entrée du premier registre (51) étant relié à la sortie de la première porte logique "ou inclusif" (59) - une deuxième porte logique "ou inclusif" (60) dont une entrée est reliée à la sortie du dernier registre à décalage (56) et l'autre entrée est reliée à la sortie d'une deuxième porte logique "ou exclusif" (58), le câblage des sorties des registres à décalage sur les entrées des deux portes "ou exclusif" (57, 58) dépendant du code de la signature de référence et du code en sortie du dispositif. 8. Dispositif selon la revendication 7, caractérisé en ce qu'il comporte en outre un comparateur (61) dont une entrée est reliée à la sortie de la deuxième porte logique "ou exclusif" et l'autre entrée est reliée à une mémoire (62) contenant un bit de référence, une différence de valeur entre les bits présents sur les entrées du comparateur (61) provoquant un changement d'état à sa sortie.