Brevet FR2692993A1 — publié le 19931231

AUTOMATE DE CONTROLE D'UN BUS DE TESTABILITE L'invention concerne un automate de contrôle d'un bus de testabilité piloté par un microprocesseur et plus particulièrement un dispositif électronique contrôlant une logique digitale ainsi qu un micrologiciel commandant l'automate. Un bus de te stabilité est distribué soit au milieu de composants électroniques d'une carte logique, soit au niveau des cartes logiques qui constituent un module informatique. Les composants électroniques des cartes électroniques ou l'assemblage des cartes logiques étant d'origine et de niveau de testabilité différents, l'utilisation d'une technique unique et massive de testabilité semble inadaptée. Les bus de testabilité jusqu'alors utilisés sont des bus de testabilité parallèles constitués généralement d'au moins 8 fils permettant l'adressage de cartes logiques. Ces bus nécessitent d'une part de nombreux fils pour sélectionner les différents boîtiers à tester sur les cartes logiques et d'autre part de nombreux circuits logiques (multiplexeurs, démultiplexeurs...) pour l'adressage des boîtiers. Ces bus ont donc un coût de conception relativement important lié en grande partie à l'utilisation d'un matériel important et à la réalisation en série limitée de ces derniers. D'autre part, l'utilisation d'un système complexe (nombre de fils et circuits logiques importants) soulève un problème de sûreté de fonctionnement. Enfin, lors du déroulement du test, le microprocesseur hôte pilote le bus de testabilité et ne peut effectuer d'autres opérations, ce qui le prive de son indépendance en l'obligeant à utiliser ses fonctions internes pour effectuer le test. Bien qu'un bus de te stabilité standard composé de 5 fils soit en cours de réalisation, il n'existe pas, jusqu'à présent, de bus utilisé de façon industrielle. L'invention a pour objet un dispositif électronique adaptable à différents types de bus de te stabilité le plus universel possible pour permettre le test des différents éléments électroniques. Ce dispositif doit permettre une utilisation massive de techniques de testabilité, doit être le plus simple possible et doit mobiliser le moins possible le processeur hôte. Le dispositif électronique de contrôle d'un bus de te stabilité de l'invention est caractérisé en ce qu'il comporte un automate de contrôle commandé par un micrologiciel, un circuit logique de commande relié à un bus de testabilité et une mémoire d'échange reliée à un processeur et à l'automate. L'invention sera mieux comprise à la lecture de la description détaillée d'un mode de réalisation illustré par le dessin annexé sur lequel: - la figure 1 est un schéma synoptique du dispositif électronique et contrôle d'un bus de te stabilité selon l'invention; - la figure 2 est un organigramme du micrologiciel contenu dans le dispositif électronique de contrôle du bus de te stabilité selon l'invention; - la figure 3 est un tableau de correspondance des ordres permettant le fonctionnement du dispositif électronique de contrôle du bus de testabilité selon l'invention. La figure 1, représente le synoptique du dispositif électronique I de contrôle d'un bus de testabilité selon l'invention. Ce dispositif électronique 1 reçoit des informations émises par un microprocesseur 2, appelées Tables d'ordres ; ce microprocesseur 2 est, par exemple, un microprocesseur de la familie 68000 mais peut être tout autre microprocesseur. Les informations émises sont ensuite chargées dans une mémoire d'échange de commandes 3 constituée, par exemple, d'une FIFO d'émission ; ces informations sont transmises en parallèle dans cette mémoire 3. Après l'émission des informations par le microprocesseur 2, ce dernier envoie un signal de démarrage START qui lance un automate 4 en lecture du contenu de la FIFO d'émission 3. L'automate 4, par l'intermédiaire, par exemple, d'une logique de commande 5, permet d'analyser la lecture des informations émises et de transmettre ces informations en série à une interface 6, comportant des circuits connus en soi. La logique de commande 5 est constituée, par exemple, de circuits électroniques adaptés à des fréquences d'horloge utilisées pour la transmission d'informations en émission/réception. L'interface 6 assure l'adaptation des signaux de commande reçus et des informations émises par le microprocesseur 2 vers un bus de testabilité 7 composé, par exemple, d'ensembles de 5 fils (a, b, c, d, e) permettant la liaison de test avec les différents éléments électroniques à tester ; ces éléments électroniques, par exemple, C1, C2, C3 sont également reliés par des liaisons distinctes 9 au microprocesseur 2 qui peut donc, indépendamment des tests réalisés, fonctionner normalement. Le format du bus 7, c'est à dire le nombre de fils utilisés et le type de signal sur chaque fil, est facilement modifiable par la programmation de l'automate. Si sur ce bus 7 des réponses apparaissent, elles sont chargées en série dans la mémoire d'échange de réponses 8 qui est constituée par exemple d'un FIFO de réception. Lorsque la FIFO d'émission 3 est vide, l'automate prévient le microprocesseur par un signal, par exemple, par un IT fin table qui, d'une part, déclenche l'effacement de la FIFO d'émission 3 au cas où il resterait des informations non transmises et, d'autre part, permet la lecture du contenu de la FIFO de réception 8. Les informations contenues dans cette FIFO de réception sont transmises en parallèle au microprocesseur 2 ; ce dernier assure l'analyse des informations reçues, par exemple, par comparaison avec des valeurs attendues et il transmet ensuite un message déterminant le comportement des différents éléments électroniques testés. Chaque table d'ordre ou informations émises est programmée en fonction d'une application déterminée. Entre l'émission, par le microprocesseur 2, du signal START permettant le lancement de l'automate 4 et avant la réception du signal IT fin table émis par l'automate 4 au microprocesseur 2, le microprocesseur 2 peut lancer une opération particulière sur les éléments électroniques C1, C2 et C3 par l'intermédiaire, par exemple, d'un bus 9. Cette opération s'effectue indépendamment de l'opération de test pilotée par l'automate 4 après son activation par le microprocesseur 2. L'automate 4 est un microsequenceur déjà utilisé dans d'autres applications. Il est également envisageable d'utiliser des microséquenceurs actuellement sur le marché en adaptant les différents codages permettant l'utilisation du matériel mis en place autour de ce microséquenceur. Ce microséquenceur fonctionne, par exemple, sur 32 bits, 16 bits servant pour commander un micrologiciel de ce microprocesseur, les 16 autres bits étant les mots de commande transmis aux éléments 3, 5 et 10 pour l'émission, l'analyse et le contrôle des informations sur le bus de testabilité 7 ; ces 16 bits servent également lors de la réception des données en réponse aux informations transmises à l'émission, les éléments utilisés pour la réception étant les éléments 5, 11 et 8. La figure 2, représente l'organigramme du micrologiciel contenu dans l'automate 4. Ce micrologiciel, éventuellement modifiable, permet le déroulement des différentes opérations en assurant d'une part un contrôle du fonctionnement des composants électroniques formant le dispositif électronique de contrôle grâce à des microtests et d'autre part, après initialisation de l'automate 4 par le microprocesseur 2 grâce au signal START, un adressage des différents éléments électroniques à tester. Après effacement de la mémoire de réception (FIFO réception 8) contenant les informations reçues par les éléments électroniques C1, C2 et C3 testés lors de la dernière opération, l'automate 4 efface également le dernier numéro de boucle inscrit correspondant à un ordre et est prêt à fonctionner. On sélectionne, par exemple, un numéro de boucle (CBM) pour permettre, par exemple, le chargement des informations contenues dans la mémoire d'émission 3, laquelle a reçu un certain nombre d'octets du microprocesseur, définissant des ordres à remplir. Ce chargement constitue une émission de données (ELS) pendant laquelle les octets qui avaient été stockés en parallèle dans la mémoire d'émission (FIFO émission 3) sont envoyés en série vers l'interface 6. Ce transfert est réalisé grâce à des systèmes d'horloge équipant le dispositif électronique 1. La figure 3, représente un tableau de correspondance des différents ordres élémentaires à transmettre pour réaliser un test déterminé des éléments électroniques C1, 2 et C3. Ces ordres doivent suivre un certain ordre lors du déroulement de l'opération pour assurer d'une part l'émission des informations transmises par le microprocesseur aux éléments électroniques C1, C2 et C3 et d'autre part la réception de données auxdites informations par le microprocesseur qui analyse les réponses reçues et permet de déterminer facilement les pannes ou erreurs introduites par l'un des éléments électroniques C1 ou C2 ou C3. L'automate 4, qui est par exemple un micro-contrôleur programmable de type 29141, est chargé d'analyser les ordres élémentaires de la table chargée au préalable dans la mémoire 3, ces ordres étant codés comme indiqué dans l'exemple de la figure 3. Les entrées TO à T4 de l'automate 4 sont respectivement reliées aux sorties Q3 à Q7 de la mémoire 3 et/ou aux sorties Q0 à Q4 de la logique 5. Le bit de poids le plus fort (T5) est un bit de "start". Les valeurs apparaissant sur les sorties Q et les entrées T sont les valeurs hexadécimales (notées avec un $) contenues dans la table Q et les valeurs hexadécimales de la microinstruction (T), comme indiqué à la figure 3. Les différentes microinstructions envoyées à l'automate 4 se traduisent par la production sur les sorties de l'automate et de la logique de commande 5 de commandes à effectuer. Par exemple, l'instruction CBM se traduit par le chargement dans un des registres de la logique 5 du numéro de la boucle (1 parmi 32 possibles) sur laquelle les ordres suivants vont être émis. La commande CMM permet de positionner sur cette boucle l'état "MODE" (mode de fonctionnement du bus de test : mode de chargement parallèle ou décalage série), et l'état de la sortie série de l'interface 6 (MDI) aux valeurs respectives de Q2 et Q1 chargées dans la mémoire 3. Les commandes EMCLKP et EMCLKS se traduisent par l'envoi d'une impulsion d'horloge parallèle ou série sur la boucle de test. Les trois commandes ELS, RLS et DLS sont suivies d'un paramètre indiquant le nombre d'octets (CO) à émettre, recevoir ou décaler sur la boucle. L'émission des données N DATA (par octets) se fait en chargeant un registre série de la logique de commande 5 avec l'octet extrait de la mémoire 3, puis en envoyant huit coups d'horloge série pour décaler I'octet, et ceci, un nombre de fois égal à la valeur du paramètre CO. Le décalage se fait de la même façon, sans extraire d'octets de la mémoire 3. La réception consiste à faire huit décalages provoquant le stockage des huit bits reçus dans un registre de la logique de commande 5, puis le transfert parallèle de l'octet ainsi stocké, dans la mémoire de réception 8, et ceci, un nombre de fois égal à la valeur de CO. L'interface 6 permet d'adapter les différents signaux circulant sur le bus de testabilité, en ce qui concerne leur polarité et la puissance de sortie nécessaire pour attaquer les circuits C1, C2, C3. Le numéro de boucle mémorisé par la logique de commande 5 valide la partie correspondante de l'interface 6. Cette interface est facilement adaptable aux contraintes technologiques des circuits à tester. L'invention s'applique à tous les microprocesseurs dont la liaison avec des cartes logiques doit être contrôlée par un bus de testabilité et ce, en évitant toute interruption du fonctionnement du microprocesseur pendant la phase de test. REVENDICATIONS 1. Dispositif électronique de contrôle d'un bus de testabilité, caractérisé en ce qu'il comporte un automate de contrôle (4) commandé par un micrologiciel et en ce qu'il contrôle, par une logique de commande (5), un bus de testabilité (7) permettant le test d'éléments électroniques (C1 à C3) commandés par un microprocesseur (2) sans interrompre le fonctionnement de ce dernier. 2. Dispositif électronique de contrôle selon la revendication 1, caractérisé en ce que des informations du microprocesseur sont émises en parallèle au dispositif électronique de contrôle et en ce que des informations du dispositif électronique de contrôle sont émises en parallèle au microprocesseur. 3. Dispositif électronique de contrôle selon la revendication 1, caractérisé en ce que des informations du dispositif électronique de contrôle sont transmises en série par le bus de te stabilité aux éléments électroniques à tester et en ce qu'une réponse à ces éléments électroniques est transmise en série au dispositif électronique de contrôle par ce même bus. 4. Dispositif électronique de contrôle selon la revendication 1, caractérisé en ce que le bus de testabilité est composé de 5 fils. 5. Dispositif électronique de contrôle selon la revendication 1, caractérisé en ce qutil comprend une mémoire d'émission (3) pour recevoir les informations provenant du microprocesseur et une mémoire de réception (8) pour recevoir les réponses des éléments électroniques aux informations du microprocesseur.