Brevet FR2872944A1 — publié le 20060113

SUPPORT DE DONNEES A MODE DE TEST L'invention concerne un support de données comprenant une 5 unité de mémoire, une unité de commande et une interface à contact qui a des plages de contact pour au moins une alimentation en tension et une transmission de données. Des supports de données de ce genre sont, par exemple, des contrôleurs à carte à puce qui ont, dans un mode de réalisation très io sophistiqué, de grandes mémoires flash. Les mémoires actuelles ont une capacité de plus de 100 kB. Les générations à venir de cartes à puce auront même des unités de mémoire de l'ordre du MB. Le coût pour les tests de fonctionnement et de qualité lors de la fabrication des supports de données est d'autant plus grand que les supports 15 de données sont plus complexes et plus complets. Pour les tests et une personnalisation des supports de données, on utilise des appareils de test spéciaux qui peuvent tester et personnaliser simultanément plusieurs supports de données. Les coûts créés par les tests et la personnalisation sont d'autant plus petits que l'on peut tester et personnaliser en même temps plusieurs supports de données. Un premier problème concernant le temps nécessaire pour effectuer les tests et la personnalisation réside dans la vitesse, petite dans certaines circonstances, de transfert des données de l'interface, notamment lorsque l'interface à contact est prévue suivant la norme ISO correspondante pour des cartes à puce. Le test et la personnalisation durent d'autant plus longtemps et cette opération est d'autant plus coûteuse que la vitesse de transfert des données est plus petite. Une première possibilité connue dans l'état de la technique de réduction des coûts pour les tests et la personnalisation consiste à utiliser des appareils de test ayant plusieurs canaux de test, de sorte que l'on peut tester et personnaliser en même temps plusieurs supports de données. Mais des dispositifs de test assez grands sont coûteux et ne sont disponibles que jusqu'à un nombre déterminé de canaux de test. Pour écourter la durée du test et de la personnalisation dans les appareils de test disponibles, il est possible d'augmenter la vitesse de transmission de l'interface à contact. Mais la vitesse de transmission maximum est limitée par la rapidité des transmissions de l'interface utilisée. Notamment pour accélérer la personnalisation, il est connu, par exemple par io les produits SLE66 et SLE88 de la société Infineon Technologies AG, d'utiliser pour la personnalisation une fréquence externe de cadence plus grande que celle qui est prévue dans ce cas par la norme ISO 7816. Le facteur de division maximum peut, en outre, être réduit. Une augmentation supplémentaire de la fréquence du signal externe d'horloge pose problème, parce que ni les appareils de test ni les contacts ne sont conçus pour cela. A cela s'ajoute que des supports de données ont souvent des capteurs qui provoquent, si la fréquence externe d'horloge est surélevée, une remise à l'état initial du circuit ou une destruction de composants du support de données, puisque l'on prend en compte la possibilité d'une attaque par un tiers du support de données. Mais même une élévation supplémentaire de la fréquence du signal externe d'horloge ne pourrait pas réduire d'une façon illimitée la durée de personnalisation d'un support de données, puisque la durée de personnalisation est limitée par le temps de programmation de la mémoire flash dans la mesure où on en utilise une. Une élévation supplémentaire de la vitesse de transmission n'écourterait donc pas la durée de personnalisation. L'invention vise un support de données dont le test et la personnalisation peuvent être mieux mis en parallèle sur des appareils de test existants. On y parvient par un support de données du type mentionné ci-dessus, qui est caractérisé par un dispositif de production de signaux de test déterminés à l'avance qui sont nécessaires pour un test du support de données, par un dispositif de sélection qui sélectionne entre les signaux de test déterminés à l'avance du dispositif de production de signaux et les signaux des plages de contact pour la transmission de données, et en ce que le support de données peut être commuté dans un mode de test dans lequel les signaùx de test déterminés à l'avance sont produits pour le test par les dispositifs de production de signaux, sont sélectionnés par le dispositif de sélection et sont envoyés à l'unité de commande. L'invention suit la considération que, comme mentionné ci-dessus, une augmentation supplémentaire de la vitesse de transmission des données n'écourte pas la durée de test et de personnalisation. L'invention suit, en outre, la considération que la durée moyenne de test et de personnalisation par support de données peut être réduite en testant et en personnalisant en même temps, c'est-à-dire en parallèle, un nombre aussi grand que possible de supports de données. L'avantage du support de données suivant l'invention réside dans le fait que le nombre des canaux de test et l'appareil de test qui sont nécessaires par support de données est réduit. On peut ainsi tester et personnaliser en même temps plusieurs supports de données sur des appareils de test existants. Cela est obtenu par le fait que, dans un mode de test, il n'est pas envoyé de signal externe de test, par exemple un signal externe d'horloge, mais qu'il est produit en interne un signal de test correspondant et qu'il prend la place du signal envoyé sinon de manière externe. Pour la mise à dispositif d'un signal d'horloge, on peut, par exemple, traiter un signal d'horloge produit en interne de façon à ce qu'il puisse prendre la place du signal externe d'horloge. Les supports de données actuels ont de toute façon une unité de production d'un signal interne d'horloge puisque cette horloge est nécessaire pour avoir la puissance maximum et pour des raisons de sécurité. Un perfectionnement avantageux de l'invention utilise d'une manière habile ces composants présents pour produire d'une manière simple à partir du signal interne d'horloge un signal d'horloge pour le test qui rend superflu l'envoi d'un signal externe d'horloge. Le nombre de canaux de test nécessaires par support de données peut être ainsi réduit par exemple de quatre à trois. On peut ainsi, sur le même appareil de test, tester et personnaliser plus de 30 % de plus de support de données. Les quatre plages occupées normalement par un canal de test sont celles pour le signal d'horloge, pour un signal de remise à l'état initial, pour le signal de données et pour la tension d'alimentation. Dans un perfectionnement avantageux de l'invention, on remplace aussi, lors du test, le signal externe de remise à l'état initial par un signal produit sur le support de données. On peut diriger un signal de test de remise à l'état initial à partir d'un signal interne qui est produit de toute façon. Un signal de ce genre est, par exemple, le signal de remise à l'état initial Power-On. De préférence, le support de données suivant l'invention est caractérisé en ce que: - l'interface à contact a des plages de contact pour un signal io d'horloge externe, - il est prévu une unité de production d'un signal d'horloge interne et - il est prévu un dispositif de traitement du signal d'horloge, dans lequel, dans le mode de test, il est produit par le dispositif is de traitement du signal d'horloge à partir du signal d'horloge interne un signal d'horloge qui vient à la place du signal d'horloge externe. De préférence, le support de données suivant l'invention est caractérisé en ce que: - l'interface à contact a des plages de contact pour un signal externe de remise à l'état initial, dans lequel, dans le mode de test, il est produit à partir d'un signal interne de remise à l'état initial un signal de test de remise à l'état initial qui vient à la place du signal externe de remise à l'état initial; - l'interface à contact est constituée suivant la norme ISO 7816; - l'unité de mémoire est une mémoire flash. L'invention vise également un procédé de test d'un support de données comprenant une unité de mémoire, une unité de commande et une interface à contact ayant des plages de contact pour au moins une alimentation en tension et un signal de transmission de données, le support de données ayant un mode de test dans lequel on contrôle au moins le fonctionnement de l'unité de mémoire ou de l'unité de commande par un traitement de signaux de test déterminé à l'avance, caractérisé en ce que le support de données a un dispositif de production de signal et un dispositif de sélection par lequel on peut acheminer à volonté un signal du dispositif de production de signaux ou de l'interface à au moins l'unité de commande, et dans le mode de test, on choisit le dispositif de production de signaux par le dispositif de sélection et on envoie des signaux de test déterminés à l'avance à au moins l'unité de traitement qui servent à tester le fonctionnement du support de données. L'invention est explicitée d'une manière plus précise dans ce qui suit au moyen d'un exemple de réalisation. Au dessin: la Figure 1 représente un support de données suivant l'invention dans lequel un signal d'horloge pour le test est mis en disposition io dans un mode de test et la Figure 2 représente un support de données suivant l'invention dans lequel il est mis aussi supplémentairement à disposition un signal de test remis à l'état initial. La Figure 1 représente un support de données selon l'invention is suivant une représentation schématique. Le support 1 de données a une unité 2 de mémoire, une unité 3 de commande et une interface 5 à contact qui comprend des plages de contact et qui a une unité 6 de contrôle d'interface pour la transmission de données. L'unité 6 de contrôle d'interface, l'unité 2 de mémoire et l'unité 3 de commande sont reliées entre elles par un bus 7. L'unité 7 de commande peut, par l'intermédiaire du bus, écrire dans l'unité 2 de mémoire et y lire. L'unité 6 de contrôle de l'interface permet de préparer des données qui sont disponibles sur le bus 7 suivant les spécifications d'interface, de sorte qu'elles peuvent être émises par l'intermédiaire de la plage "IO" de contact correspondante. En sens opposé, les données reçues sur la plage "IO" de contact sont transformées de manière à pouvoir être lues par l'unité 3 de commande par l'intermédiaire du bus 7. Dans les supports de données décrits, la norme est de mettre à disposition un signal CLK_EXT d'horloge externe sur l'une des plages de contact et, le cas échéant, après un traitement par un dispositif 8b de traitement du signal d'horloge en aval, de l'utiliser pour le traitement des données sur le support de données. Un traitement éventuel consiste, par exemple, à diviser la fréquence. Les supports de données ont de nos jours souvent aussi leur propre unité 4 de production de cadence qui met à disposition un signal CLK_INT interne d'horloge ayant une fréquence qui, en règle générale, est plus haute que la fréquence du signal CLK_EXT externe d'horloge. Le signal CLK_INT interne d'horloge est utilisé afin de pouvoir exécuter certaines opérations de traitement à une vitesse plus grande. En outre, des mesures de sécurité peuvent être réalisées en utilisant le signal CLK_INT d'horloge interne. L'unité 4 de production de cadence est donc reliée à l'unité 3 de commande, le signal CLK_INT interne d'horloge pouvant être traité par un dispositif 8a de traitement du signal d'horloge monté intermédiairement le cas échéant. Les autres bornes du support de données de la Figure 1 sont prévues pour l'application d'une tension VCC d'alimentation pour la liaison à io un potentiel GND de référence, ainsi que pour l'envoi d'un signal externe de remise à l'état initial. Le support de données décrit jusqu'ici correspondant à un mode de réalisation suivant l'état de la technique. Pour tester et personnaliser des supports de données de ce genre, il faut alimenter dans un appareil de test is les bornes VCC, CLK_EXT, IO et RST par des signaux de test, c'est-à-dire qu'il faut prévoir quatre canaux de test par support de données. L'idée suivant l'invention consiste à envoyer des signaux individuels non de l'extérieur mais, suivant ce qui est possible, de les produire sur le support de données soi-même, de sorte que l'on libère un canal de test pour chaque signal "économisé", canal qui peut être utilisé pour les tests en parallèle d'un autre support de données. Suivant l'exemple de réalisation de la Figure 1, le signal CLK EXT externe d'horloge est remplacé par un signal d'horloge produit sur _ le support de données. Le signal CLK_INT interne d'horloge a, en général, une fréquence qui est plus haute que la fréquence du signal CLK_EXT d'horloge externe. C'est pourquoi il est prévu un dispositif 8a de traitement du signal d'horloge qui produit, à partir du signal CLK_INT interne d'horloge, un signal d'horloge ayant une fréquence adaptée. Les dispositifs 8a et 8b de traitement du signal d'horloge sont reliés respectivement à un dispositif 9 de sélection du signal d'horloge. A une sortie du dispositif 9 de sélection du signal d'horloge, peut être prélevé un signal CLK_SYS d'horloge du système qui est utilisé pour le fonctionnement du support de données. En fonctionnement normal, le support de données reçoit le signal CLK SYS d'horloge du système qui est dérivé soit par l'intermédiaire du dispositif 8a de traitement du signal d'horloge du signal CLK_INT d'horloge interne, soit par l'intermédiaire du dispositif 8b de traitement du signal d'horloge du signal CLK_EXT d'horloge externe. L'unité 6 de contrôle d'interface a besoin à la fois du signal CLK_EXT d'horloge externe que du signal CLK_SYS d'horloge du système. En fonctionnement en test, le support de données suivant l'invention fonctionne avec le signal CLK_SYS d'horloge du système déduit du signal d'horloge interne, au lieu que ce soit avec le signal CLK_EXT d'horloge externe. Le dispositif 6 de contrôle d'interface ne reçoit plus aussi que le signal d'horloge interne au lieu du signal d'horloge externe. io Lorsque l'on teste un support de données suivant l'invention, on n'a ainsi à utiliser plus que trois canaux de test, à savoir pour la tension VCC d'alimentation, pour le signal 10 de données et pour le signal RST_EXT de remise à l'état initial. La Figure 2 représente un perfectionnement du support de données de la Figure 1. Dans cet exemple de réalisation, le signal RST_EXT externe de remise à l'état initial est remplacé sans plus dans le mode de test par un signal de remise à l'état initial produit en interne. Suivant l'exemple de réalisation présent, le signal de remise à l'état initial dit Power-On est utilisé pour produire un signal RST_TEST de test de remise à l'état initial qui prend la place d'un signal RST_EXT de remise à l'état initial envoyé de l'extérieur. Le signal de remise à l'état initial Power-On est utilisé normalement pour provoquer, après l'application de la tension d'alimentation, une remise à l'état initial de tous les composants du circuit. Des composants logiques du circuit prennent, lorsque la tension s'élève de zéro à une valeur de tension de consigne, dans certaines circonstances, des états logiques indéfinis. Pour assurer un fonctionnement en bon ordre du circuit, il est donc nécessaire d'effectuer, après avoir obtenu une valeur de tension d'alimentation minimale définie, une remise à l'état initial afin que tous les composants du circuit prennent des états définis. Le signal de remise à l'état initial Power-On est utilisé, dans cet exemple de réalisation, pour déclencher une minuterie qui produit, après un laps de temps déterminé à l'avance, un signal test de remise à l'état initial qui peut prendre la place du signal RST_EXT de remise à l'état initial. Un dispositif 10 de sélection du signal de remise en état initial assume la fonction de relier la plage de contact prévue pour le signal RST EXT externe de remise à l'état initial à une sortie du dispositif 10 de sélection du signal de remise à l'état initial mais aussi un dispositif 11 de production d'un signal de remise à l'état initial avec la sortie du dispositif de sélection du signal de remise à l'état initial. Dans le mode de test, le signal RST_TEST de test de remise à l'état initial produit par le dispositif 11 de production du signal de remise à l'état initial est sélectionné et prend ainsi la place d'un signal RST_EXT envoyé de l'extérieur de remise à l'état initial. En fonctionnement normal, la sortie du dispositif 10 de sélection du signal de remise à l'état initial est reliée en revanche à la plage de contact correspondante. io Lors du test du support de données, il ne faut plus ainsi que deux canaux de test d'un dispositif de test, à savoir pour la tension VCC d'alimentation et pour le signal 10 de données. Dans cette configuration, on peut, pour un appareil de test présent, tester et personnaliser en même temps deux fois plus de supports de données que pour des supports de données suivant l'état de la technique. Les coûts pour le test et la personnalisation, qui sont proportionnels au temps passé, peuvent être abaissés ainsi de 50 %. Suivant le type des supports de données à tester, on envoie dans certaines circonstances d'autres signaux pour le test et pour la personnalisation. L'invention s'étend bien entendu aussi à des signaux autres de ce genre en produisant sur le support de données un remplacement de ces signaux envoyés de l'extérieur et en s'en remettant dans un mode de test aux signaux produits sur le support de données, tandis qu'en fonctionnement normal, les signaux envoyés de l'extérieur sont utilisés. Pour se protéger de manipulations, il faut s'assurer que l'on ne peut pas passer au mode de test à volonté. Le passage au mode de test peut s'effectuer par l'unité 3 de commande qui commande aussi de manière correspondante les dispositifs 9 et 10 de sélection. Bien entendu, on peut appliquer sur ce circuit de passage au mode de fonctionnement toutes les mesures de sécurité qui sont utilisées aussi pour d'autres modes de test et qui sont courantes donc pour l'homme du métier. On peut, par exemple, n'établir le mode de test que si un fusible est encore intact. De préférence, le mode de test s'établit automatiquement lorsque le fusible est intact. Lorsque le test est achevé, le fusible est détruit d'une manière irréversible. On empêche ainsi que l'on puisse mettre, à un instant ultérieur après la livraison du support de données, ce dernier dans le mode de test et essayer ainsi d'obtenir des informations secrètes. Le test d'un support de données se déroule de la façon suivante dans l'exemple de réalisation décrit ici. Après la connexion d'alimentation en courant, on règle dans une première phase la tension interne à 1,5 V. Lorsque la tension est stable, on engendre un signal de remise à l'état initial Power-On. A la différence de ce qui se passe dans tous les autres modes de fonctionnement, l'unité 3 de commande démarre alors sans un signal externe de remise à l'état initial. Cela est obtenu par la production décrite d'un signal de test de remise à l'état initial. Le générateur 4 interne d'horloge commence à osciller. io Dans une deuxième phase, la communication par l'interface à contact est préparée. Sans un signal externe d'horloge, il est à cet égard nécessaire de synchroniser la fréquence d'un appareil de test raccordé et la fréquence de l'unité 6 de contrôle d'interface. Par un bit de registre, on constate si une ligne de signal d'horloge du dispositif 6 de contrôle d'interface est reliée à la borne IO ou à une ligne interne d'horloge du système. Après que cela est effectué, on entre dans une phase d'attente. Cela est nécessaire puisque la durée vraiment nécessaire pour la synchronisation d'un support de données à l'autre peut varier. Après cette phase d'attente en règle générale courte, l'appareil de test externe émet une instruction sur la borne "IO". Tout d'abord, le signal d'horloge utilisé dans l'unité 6 de contrôle d'interface doit être transformé en le signal CLK_SYS d'horloge du système qui est alors synchronisé avec l'appareil de test externe. Le convertisseur utilisé à cet effet est commandé, comme décrit ci-dessus, par un bit de registre. Dans une quatrième phase, la phase d'instruction, l'appareil de test externe envoie des instructions au support de données et reçoit des réponses du support de données par la borne 10. Enumération des signes de référence 1 Support de données 2 Unité de mémoire 3 Unité de commande 4 Unité de production interne de cadence Interface à contact 6 Unité de contrôle d'interface 7 Bus io 8a, 8b CLK SYS CLK EXT CLK INT RST EXT RST INT io RST_TEST RST Dispositif de traitement du signal d'horloge Dispositif de sélection du signal d'horloge Dispositif de sélection du signal de remise à l'état initial Dispositif de production du signal de remise à l'état initial Signal d'horloge du système Signal d'horloge externe Signal d'horloge interne Signal externe de remise à l'état initial Signal interne de remise à l'état initial Signal de test de remise à l'état initial Signal de remise à l'état initial Io REVENDICATIONS 1. Support (1) de données comprenant une unité (2) de mémoire, une unité (3) de commande et une interface (5, 6) à contact qui a des plages (5) de contact pour au moins une alimentation en tension et une transmission de données, caractérisé en ce que il est prévu un dispositif (4, 11) de production de signaux de test déterminés à l'avance qui sont nécessaires pour un test du support (1) de données, il est prévu un dispositif (9, 10) de sélection qui sélectionne entre les signaux de test déterminés à l'avance du dispositif (4, 11) de production de signaux et les signaux des plages (5) de contact pour la transmission de données, et le support (1) de données peut être commuté dans un mode de test dans lequel les signaux de test déterminés à l'avance sont produits pour le test par les dispositifs (4, 11) de production de signaux, sont sélectionnés par le dispositif (9, 10) de sélection et sont envoyés à l'unité (3) de commande. 2. Support de données suivant la revendication 1, caractérisé en ce que l'interface (5, 6) à contact a des plages (5) de contact pour un signal (CLK_EXT) d'horloge externe, il est prévu une unité (4) de production d'un signal (CLK_INT) d'horloge interne et il est prévu un dispositif (8a) de traitement du signal d'horloge, dans lequel, dans le mode de test, il est produit par le dispositif (8a) de traitement du signal d'horloge à partir du signal (CLK_INT) d'horloge interne un signal d'horloge qui vient à la place du signal (CLK_EXT) d'horloge externe. 3. Support de données suivant la revendication 1 ou 2, caractérisé en ce que l'interface à contact a des plages (5) de contact pour un signal (RST_EXT) externe de remise à l'état initial, dans lequel, dans le mode de test, il est produit à partir d'un signal (RST_INT) interne de remise à l'état initial un signal (RST_TEST) de test de remise à l'état initial qui vient à la place du signal (RST_EXT) externe de remise à l'état lo initial. 4. Support de données suivant l'une des revendications 1 à 3, caractérisé en ce que l'interface (5, 6) à contact est constituée suivant la norme ISO 7816. 5. Support de données suivant l'une des revendications 1 à 4, 15 caractérisé en ce que l'unité (2) de mémoire est une mémoire flash. 6. Procédé de test d'un support (1) de données comprenant une unité (2) de mémoire, une unité (3) de commande et une interface à contact ayant des plages (5) de contact pour au moins une alimentation en tension et un signal de transmission de données, le support (1) de données ayant un mode de test dans lequel on contrôle au moins le fonctionnement de l'unité (2) de mémoire ou de l'unité (3) de commande par un traitement de signaux de test déterminé à l'avance, caractérisé en ce que le support (1) de données a un dispositif (4, 11) de production de signal et un dispositif (9, 10) de sélection par lequel on peut acheminer à volonté un signal du dispositif (4, 11) de production de signaux ou de l'interface (5) à au moins l'unité (3) de commande, et dans le mode de test, on choisit le dispositif (4, 11) de production de signaux par le dispositif (9, 10) de sélection et on envoie des signaux de test déterminés à l'avance à au moins l'unité (3) de traitement qui servent à tester le fonctionnement du support de données.