Brevet FR2595143A1 — publié le 19870904

SYSTEME DE TEST AUTOMATIQUE La présente invention concerne le test de disposi- tifs de commande utilisés en informatique, et elle porte plus particulièrement sur un testeur universel pour des con- trôleurs de périphériques d'ordinateurs. Des systèmes informatiques de type caractéristi- que, par exemple des ordinateurs personnels domestiques, comprennent habituellement un certain nombre de contrôleurs de périphériques perfectionnés qui pilotent le fonctionnement de divers dispositifs périphériques sous la direction de l'unité centrale de traitement (UCT) de l'ordinateur. On peut citer à titre d'exemples de ces dispositifs périphéri- ques les unités de disques durs ou de disquettes qu'on uti- lise couramment dans des systèmes informatiques pour l'enre- gistrement de grandes quantités de données. Des contrôleurs pour des unités de disques dirigent de façon caractéristique le fonctionnement de l'unité de disque, en établissant un canal de transmission et de traduction pour des ordres et des données échangés entre l'UCT et l'unité de disque. Par exemple, lorsque l'UCT fournit des données devant être enre- gistrées, elle émet de façon caractéristique huit ou seize bits en parallèle, c'est-à-dire simultanément. Cependant, une unité de disque ne peut enregistrer ces données qu'en série, c'est-à-dire un bit à la fois. Une fonction du con- trôleur de périphérique est d'enregistrer temporairement les huit ou seize bits de données en parallèle, et de transférer les données vers le disque en série. Inversement, le contrô- leur reçoit également des données provenant du disque en série et il les dirige vers l'UCT en groupes de huit ou sei- ze bits en parallèle. Il est difficile de réaliser un appareil satisfai- sant qui permette aux constructeurs de contrôleurs de péri- phériques de tester le bon fonctionnement de leurs produits. On a testé précédemment des contrôleurs de périphériques en les enfichant simplement dans un système informatique hôte du type avec lequel il est prévu de les faire fonctionner. Cette procédure présente cependant un certain nombre d'in- convénients. Des contrôleurs défectueux peuvent très bien endommager les circuits électroniques du système informati- que hôte utilisé pour le test. Au cours de tests ultérieurs, il devient donc nécessaire de déterminer si le dispositif défectueux est le contrôleur de périphériques sous test ou le système informatique hôte qui est utilisé pour le test. Avec cette procédure, il existe également une limitation du nombre de conditions anormales auxquelles le contrôleur de périphériques sous test peut être soumis (et qu'il doit tolérer). De plus, l'information concernant le défaut spéci- fique dans un contrôleur sous test défectueux est également peu abondante. On a également testé des contrôleurs de périphé- riques avec des périphériques réels et diverses sortes de dispositifs ou "bottes noires" isolés, fournissant des signaux d'ordres et de données identiques à ceux que fourni- rait l'ordinateur hôte avec lequel le contrôleur sous test doit fonctionner. Cette procédure de test présente également un certain nombre d'inconvénients, du fait que le contrôleur sous test peut ici encore endommager les périphériques, ce qui fait qu'il est à nouveau nécessaire au cours de tests ultérieurs de vérifier tout d'abord que le périphérique fonctionne correctement. Des simulateurs d'ordinateur hôte du type "boîte noire" ne procurent également qu'une maîtrise limitée sur une gamme étendue de conditions anormales que le contrôleur sous test est susceptible de rencontrer et doit tolérer. En outre, de tels simulateurs d'ordinateur hôte ne sont également pas adaptables d'un contrôleur de périphéri- que à un autre. Le développement d'un nouveau simulateur d'ordinateur hôte exige de façon caractéristique une durée pouvant aller jusqu'à huit mois. Il existe donc toujours un besoin portant sur un système de test de contrôleurs de périphériques capable de tester des contrôleurs sans employer un périphérique ou un ordianteur hôte réel. Il demeure en outre un besoin-portant sur un système de test automatique qui puisse être modifié plus rapidement pour tester différentes sortes de contrô- leurs de périphériques. L'invention a donc pour but de procurer un système de test automatique permettant de tester des contrôleurs de périphériques d'ordinateurs, sans employer un dispositif périphérique réel. Un autre but de l'invention est de procu- rer un système de test automatique qu'on puisse modifier pour l'utilisation avec divers contrôleurs de périphériques, sans que ceci exige des modifications importantes. Un autre but de l'invention est de procurer un système de test auto- matique pour des contrôleurs de périphériques qui puisse soumettre un contrôleur sous test à diverses conditions anormales associées au fonctionnement du dispositif périphé- rique que le contrôleur sous test doit tolérer. Un but supplémentaire de l'invention est de procurer un système de test automatique qu'on puisse utiliser pour des tests "bon/ mauvais" en fabrication, pour séparer simplement les con- trôleurs en état de marche et ceux qui sont défectueux, et qui puisse également fonctionner dans un mode de dépannage pour faciliter la détermination de la nature spécifique d'un défaut dans un contrôleur défectueux. On atteint ces buts et objectifs, ainsi que d'autres, en incorporant dans un système de test modulaire une carte (c'est-à-dire un circuit) de réception, ayant une configuration spécifiquement prévue pour un type particulier de contrôleur périphérique à tester. La carte de réception constitue une interface entre le contrôleur sous test et le reste du système de test automatique. On peut tester diffé- rents types de contrôleurs de périphériques avec le même système de test automatique en employant différentes cartes de réception spécifiques pour chaque type de contrôleur. Le système de test comprend des éléments d'un ordinateur personnel classique, constituant l'unité centrale de traitement (UCT). Une carte d'attaque est également pré- vue pour transmettre des signaux de l'UCT vers la carte de réception. La carte de réception est montée à l'intérieur d'un dispositif du type "planche à clous", actionné par dépression, qui a été adapté physiquement pour accepter un contrôleur sous test particulier. La carte de réception vient en contact électrique avec le contrôleur sous test par l'aspiration due à la dépression, qui applique la carte du contrôleur sous test sur les contacts de la planche à clous. La carte de réception assure une fonction de tampon pour les signaux entre le contrôleur sous test et l'unité centrale de traitement. Le système de test automatique comprend égale- ment un émulateur de périphérique. Dans le mode de réalisa- tion actuellement préféré du système de test automatique, l'émulateur peut simuler une unité de disque dur ou de disquettes. Une alimentation programmable est également incorporée pour tester la tolérance du contrôleur sous test à des niveaux de tension d'alimentation variables. Dans l'accomplissement d'un test, on utilise l'UCT pour émettre des ordres et des données vers le contrôleur sous test, et on examine ensuite les signaux d'ordres et de données correspondants que le contrôleur sous test émet vers l'émulateur. L'UCT applique également des données et des signaux de commande à l'émulateur, et elle commande au contrôleur sous test de lire des données. L'UCT compare ensuite les données lues par le contrôleur sous test avec les données appliquées à l'émulateur. De cette manière, le système de test automatique peut simuler l'environnement réel du contrôleur sous test et exciter ce dernier comme s'il était dans cet environnement, dans une gamme étendue de conditions. Du fait de l'application de données et de signaux de commande à l'émulateur, le système de test auto- matique peut également simuler la plupart des conditions d'erreur que le contrôleur sous test est susceptible de ren- contrer au cours du fonctionnement ultérieur, et il peut déterminer la tolérance du contrôleur sous test à des condi- tions différentes de l'optimum pour le périphérique prévu. L'invention sera mieux comprise à la lecture de la description qui va suivre de modes de réalisation, donnés à titre d'exemples non limitatifs. La suite de la description se réfère aux dessins annexés sur lesquels: La figure 1 est une représentation schématique d'un mode de réalisation préféré du système de test automa- tique de l'invention; La figure 2 est un diagramme de la structure du logiciel utilisé pour commander le système de test automati- que; La figure 3 est une vue en perspective du système de test automatique de l'invention; La figure 4 est une vue en perspective d'un dispo- sitif de test à planche à clous du système de test automati- que de l'invention; La figure 5 est une représentation schématique de la carte d'attaque (ou d'extension) de l'invention; La figure 6 est une représentation schématique d'un mode de réalisation préféré d'une carte de réception de l'invention; La figure 7 est une représentation schématique d'un second mode de réalisation préféré d'une carte de réception de l'invention; et La figure 8 est une représentation schématique d'un émulateur du système de test automatique de l'inven- tion, qui simule à la fois une unité de disque dur et une unité de disquettes. En considérant la figure 1, on voit un schéma synoptique représentant un mode de réalisation préféré du système de test automatique de l'invention. Le système de test automatique comprend une unité centrale de traitement (UCT) 10 et une carte ou circuit d'attaque (ou d'extension) 13, ayant pour fonction de transmettre des signaux entre l'unité centrale de traitement 10 et une carte de réception 16, spécifiquement adaptée au test d'un type particulier de contrôleur de périphérique subissant un test, qu'on appelle- ra un contrôleur sous test 19. Le contrôleur sous test est une carte de circuit ayant une configuration physique parti- culière à laquelle le système de test doit être adapté. Dans le mode de réalisation présent de l'invention, I'UCT est une machine à huit bits. La carte de réception a la configura- tion électrique nécessaire pour assurer la fonction d'inter- face entre le contrôleur sous test et l'UCT. L'UCT 10 com- mande également le fonctionnement de divers dispositifs périphériques 20 qui sont employés dans le fonctionnement du système de test. Une alimentation programmable 21, recevant des instructions de niveau de tension à partir de l'UCT 10, par l'intermédiaire d'un contrôleur d'alimentation 11, ali- mente le contrôleur sous test 19. Le système de test auto- matique comprend également un bus de périphérique 24 desti- né à l'échange de signaux entre l'UCT 10 et un émulateur de périphérique 27. Dans le mode de réalisation actuellement préféré du système de test automatique, l'émulateur de péri- phérique 27 peut simuler à la fois une unité de disque dur et une unité de disquettes. Le système de test automatique est prévu pour tes- ter virtuellement n'importe quel type de contrôleur d'unité de disque dur ou de disquettes, utilisable dans pratique- ment n'importe quel type d'ordinateur personnel. L'interface d'ordinateur hôte détermine une famille ou un type de con- trôleur, c'est-à-dire une famille à bus à 8 bits ou une famille à bus à 16 bits. Pour chaque type différent de con- trôleur de périphérique qui est testé, on développe une nou- velle carte de réception pour assurer l'interface physique et pour établir des contacts électriques avec le contrôleur de périphérique sous test. La carte de réception 16 protège également l'UCT 10 contre des signaux erronés provenant d'un contrôleur sous test 19 défectueux. Comme on l'expliquera ci-après de façon plus complète, la carte de réception 16 peut en outre avoir une configuration permettant à l'UCT à huit bits de simuler le fonctionnement d'une UCT à seize bits, de façon que le système de test automatique puisse également tester des contrôleurs de périphériques prévus pour le fonctionnement avec un système informatique hôte à seize bits. Pour chaque carte de contrôleur particulière, on développe un dispositif de test spécifique, du type "planche à clous" actionné par une dépression, qui se conforme à la configuration physique particulière de la carte de contrô- leur considérée. Des contacts à broches à ressort établis- sent les connexions électriques avec le contrôleur sous test lorsqu'une aspiration produite par une dépression est établie pour appliquer le contrôleur sur le dispositif de test. Normalement, chaque contrôleur particulier exige un dispositif à planche à clous spécialement prévu pour lui, du fait des différences inhérentes de topologie et des exi- gences en ce qui concerne les points de mesures électriques. Un élément essentiel de l'aptitude du système de test automatique à tester une gamme étendue de produits consiste dans le logiciel qu'on utilise pour commander le fonctionnement du système de test. Comme le montre la figu- re 2, ce logiciel est divisé en trois éléments séparés, qu'on appelle LOGICIEL DE NIVEAU SUPERIEUR, PROGRAMMES DE GESTION DE NIVEAU INFERIEUR, et SYSTEME D'EXPLOITATION. Lorsqu'on teste différents types de contrôleurs de périphéri- ques, le logiciel de niveau supérieur et les programmes de gestion de niveau inférieur peuvent être modifiés. Cepen- dant, le logiciel du système d'exploitation reste inchangé. Le logiciel de niveau supérieur contient un ensem- ble de modules (programmes) de test, et chacun d'eux présen- te les instructions à l'UCT 10 pour un test spécifique à accomplir sur le contrôleur sous test 19. Chacun des modules de test du logiciel de niveau supérieur est indépendant. Ainsi, le déroulement correct d'un test quelconque ne dépend en rien des tests précédents ou suivants. Les programmes de niveau inférieur contiennent un ensemble de modules d'ins- tructions qui indiquent à l'UCT 10 comment appliquer des signaux d'ordres au contrôleur sous test 19, avec le proto- cole du système informatique hôte avec lequel le contrôleur sous test 19 doit normalement fonctionner. Chacun de ces modules d'instructions est également indépendant. Ainsi, pendant l'exécution de l'un quelconque des modules de test du logiciel de niveau supérieur, on utilisera un ou plu- sieurs des modules d'instructions des programmes de gestion de niveau inférieur, pour émettre vers le contrôleur sous test un ordre ayant un format correct. Lorsqu'on teste des contrôleurs de périphériques de la même famille, c'est-à- dire des contrôleurs de périphériques prévus pour fonction- ner normalement avec le même type de système informatique, mais qui commandent différents types de périphériques, il suffit généralement de réviser les modules de test du logi- ciel de niveau supérieur. On peut également employer cou- ramment un certain nombre des modules de test avec plus d'un type de contrôleur de périphérique dans la même famille. Lorsqu'on doit tester un contrôleur de périphérique d'une famille différente, (c'est-à-dire un contrôleur prévu pour fonctionner dans un type différent de système informatique hôte), on doit réviser à la fois le logiciel de niveau supé- rieur et les programmes de gestion de niveau inférieur. Le troisième élément du logiciel, c'est-à-dire le système d'exploitation, contient le jeu d'instructions pour l'UCT 10 qui détermine le fonctionnement d'ensemble du sys- tème de test automatique. Dans le mode de réalisation actuellement préféré, le logiciel contient des jeux d'ins- tructions pour deux procédures de test différentes. La pre- mière procédure de test, correspondant au test en fabrica- tion, met en oeuvre chacun des modules de test dans le logi- ciel de niveau supérieur. Si le contrôleur sous test passe tous ces tests avec succès, le système de test automatique indique simplement que le contrôleur est bon. Si au contrai- re le contrôleur sous test s'avère défectueux dans le cadre de l'un quelconque de ces modules de test, le système de test automatique indique un défaut. Le système de test auto- matique peut cependant fonctionner également dans un second mode de test, qu'on appelle "Mode de Dépannage". Dans ce mode, un technicien peut interagir avec le système de test automatique et commander au système d'exécuter les modules de test de logiciel de niveau supérieur, jusqu'à ce que l'un d'eux fasse apparaître un défaut, et le système indique alors le module de test qui a révélé un défaut du contrôleur sous test, et il fournit certains renseignements concernant les conditions dans lesquelles le contrôleur sous test n'est pas parvenu à exécuter correctement les instructions du module de test considéré. Dans le mode de dépannage, le sys- tème de test automatique peut en outre permettre à un tech- nicien de soumettre de façon répétée un contrôleur sous test à un seul module de test, pour permettre un examen approfon- di du contrôleur sous test afin d'identifier l'élément défectueux. La figure 3 est une vue en perspective du mode de réalisation actuellement préféré du système de test automa- tique. Dans ce mode de réalisation, deux systèmes de test complets sont logés dans un seul coffret. De façon caracté- ristique, dans le cas de tests en fabrication, on peut exé- cuter sur un contrôleur sous test tous les modules de test du logiciel de niveau supérieur en moins d'une demi-minute. On peut ainsi employer un système de test pour tester de façon active un contrôleur de périphérique pendant qu'un technicien charge un autre contrôleur de périphérique dans le second système de test. Ensuite, le premier système de test achève ses tests, ce qui permet au technicien de reti- rer et de stocker de façon appropriée le contrôleur de péri- phérique qui vient d'être testé par le premier système de test, pendant que le second système de test commence à tes- ter le contrôleur de périphérique que le technicien vient de placer sur le second système de test. Comme le montre la figure 3, le système de test automatique comporte une plaque d'interface universelle 33 qui est destinée à recevoir un dispositif de test à dépres- sion (figure 4) qui vient réellement en contact physique avec les contrôleurs de périphériques sous test. La plaque 33 comporte une série de contacts électriques 36 qui sont destinés à s'accoupler avec des contacts électriques cor- respondants sur le dispositif de test, et elle comporte en outre des orifices de dépression 39. Le système de test comporte également des paires d'interrupteurs de démarra- ge/annulation 42, 45, des paires d'unités de disquettes séparées 48A et 48B, une paire d'imprimantes à bande 51 et une paire de dispositifs d'affichage 54. Un lecteur optique de codes à barres 57 est également prévu pour balayer et lire un code à barres placé sur chaque contrôleur de péri- phérique subissant un test. La figure 4 montre un exemple de dispositif de test 58. Le dispositif de test est prévu pour être monté avec jeu, par l'action d'une dépression, sur la plaque d'in- terface 33 du système de test automatique, et il comporte lui-même deux cavités de faible profondeur, 59, et chacune d'elles est destinée à recevoir un contrôleur de périphéri- que à tester, monté dans la cavité avec jeu sous l'action d'une dépression. Les cavités de chaque dispositif de test ont une configuration qui correspond au contour d'un contrô- leur particulier à tester. Les cavités comportent un ensem- ble de broches-conductrices 60 sollicitées par des ressorts, qui viennent physiquement en contact avec le contrôleur sous test. Ces broches à ressort établissent un contact électrique aux points appropriés entre le système de test automatique et le contrôleur qui subit le test. Le système de test automatique de la figure 3 com- prend en réalité deux systèmes de test indépendants. Pour le focntionnement, on installe un dispositif de test prévu de façon spécifique pour le type particulier de contrôleur de périphérique qui va être testé, et on met en fonction les deux systèmes de test automatiques. On charge dans le systè- me de test automatique le jeu de logiciels correspondant aux contrôleurs de périphériques à tester, en utilisant une uni- té de la paire d'unités de disquettes 48A et une unité de la paire d'unités de disquettes 48B. On utilise la seconde uni- té de chacune des paires d'unités 48A et 48B pour recevoir et enregistrer des résultats de tests. Après avoir chargé le logiciel, on place un contrôleur de périphérique à tester au fond d'une cavité du dispositif de test, et on appuie sur le bouton de démarrage. Sous la commande de la partie de systè- me d'exploitation du jeu de logiciels, le système de test automatique établit ensuite la dépression et demande au technicien, par l'intermédiaire du dispositif d'affichage 54, d'identifier le contrôleur sous test. Le technicien uti- lise alors le lecteur de codes à barres 57 pour entrer les données d'identification, et le système de test automatique compare le type identifié du contrôleur sous test avec le type du dispositif de test et de la carte de réception 16 qui sont en place, et avec le jeu de logiciels, pour déter- miner si un type correct de contrôleur sous test a été char- gé. Si le type correct de contrôleur sous test a été chargé, le système de test automatique soumet ensuite le contrôleur sous test à l'action de tous les modules de test dans le logiciel de niveau supérieur du jeu de logiciels, jusqu'à ce que tous les tests soient terminés ou que le contrôleur se soit avéré défectueux. Dans un cas comme dans l'autre, la dépression est supprimée et le contrôleur sous test est libéré tandis que les résultats sont présentés sur le dispo- sitif d'affichage 54. Les résultats de ce test, accompagnés de l'identité du contrôleur sous test, peuvent ensuite être enregistrés sur la disquette d'enregistrement, dans la seconde unité de la paire d'unités 48A. L'imprimante 51 imprime ensuite sur papier les résultats du test, indiquant l'identité du contrôleur sous test, l'heure, la date et le technicien. Comme indiqué ci- dessus, pendant qu'un premier test est exécuté par l'un des systèmes de test, un techni- cien peut commencer à charger un autre contrôleur à tester dans le second système de test. Si à un point quelconque au cours de la séquence de tests, le technicien désire arrêter les tests, il peut appuyer sur le bouton d'annulation, et le contrôleur de périphérique en cours de test est immédia- tement libéré. Si on doit tester un type de contrôleur dif- férent, on remplace le dispositif de test (avec la carte de réception) et le logiciel se trouvant dans les unités de disquette 48, et on commence les tests sur les nouveaux contrôleurs de périphériques, de la manière indiquée ci-dessus, avec le dispositif de test et la disquette de jeu de logiciels appropriés. Dans le mode de réalisation actuellement préféré du système de test automatique, l'unité centrale de traite- ment 10 de ce système est constituée par des éléments d'un ordinateur personnel classique. De nombreux ordinateurs de ce type offrent une capacité de calcul appropriée et ils comportent un nombre suffisant de logements d'extension pour recevoir tous les périphériques employés pendant l'uti- lisation du système de test automatique. Un ordinateur per- sonnel particulier qu'on a utilisé avec succès consiste en un ordinateur IBM du type PC employant un microprocesseur à huit bits. Lorsque c'est nécessaire (c'est-à-dire lorsque le contrôleur sous test est prévu pour l'utilisation avec une UCT à seize bits), on peut donner à la carte de réception une configuration qui permet à ce microprocesseur à huit bits de simuler un microprocesseur à seize bits. On utilise une carte d'attaque ou d'extension 13. La figure 5 montre un exemple d'une carte d'extension 13. La carte d'extension 13 est enfichée dans la carte mère de l'UCT 10 et elle vient en contact avec le bus d'adresse, le bus de données et des lignes de signaux de commande de l'UCT 10. Comme le montre la figure 3, la carte d'extension comprend plusieurs circuits d'attaque électroniques numéri- ques à trois états, 63, et chacun d'eux est connecté séparé- ment à l'un des bus ou l'une des lignes de signaux de com- mande précités. Les circuits d'attaque numériques 63 sont des dispositifs à courant élevé qui sont capables de faire circuler des courants élevés, sans défaillance. Un disposi- tif de commande de circuits d'attaque 66 est prévu pour valider les circuits d'attaque numériques 63. Le dispositif de commande de circuits d'attaque 66 valide les circuits d'attaque numériques 63 sur la base de signaux de commande qui sont détectés sur les lignes de signaux de commande connectées à l'UCT. Chacun des circuits d'attaque numériques 63 comporte un bus dirigé vers les cartes de réception, qui peuvent être à une distance s'élevant jusqu'à 120 cm. La figure 6 est un schéma synoptique qui montre un exemple de carte de réception. Cette carte de réception con- viendrait pour un contrôleur de périphérique prévu pour l'utilisation dans un système informatique hôte ayant égale- ment une unité centrale de traitement à huit bits, comme l'UCT 10 qu'on utilise actuellement dans le système de test automatique. Comme il est représenté, la carte de réception 16 comprend des circuits d'attaque numériques 63 qui sont connectés au bus d'adresse, au bus de données et aux lignes de signaux de commande qui proviennent des circuits d'atta- que numériques de la carte d'extension 13. Un décodeur 69 est connecté à la sortie du circuit d'attaque numérique 63 qui attaque le bus d'adresse. Le décodeur 69 valide les cir- cuits d'attaque numériques 63 qui sont connectés au bus de données et aux lignes de signaux de commande, lorsque le bus d'adresse achemine des signaux qui indiquent que l'UCT 10 émet des ordres ou des données vers le contrôleur sous test. La ligne de signal de commande de retour 72, allant du con- trôleur sous test 19 vers 1'UCT 10, comprend un groupe de bascules 75. On utilise ce groupe de bascules pour mémoriser des signaux d'interruption que le contrôleur de périphérique sous test émet normalement vers une unité centrale de trai- tement d'un ordinateur hôte. Ceci évite l'interruption de l'UCT 10 du système de test automatique pendant le déroule- ment de la séquence de test. A des instants appropriés, l'UCT 10 peut interroger le groupe de bascules 75 pour déterminer la présence ou l'absence de signaux d'interrup- tion prévus. La figure 7 montre un exemple de carte de récep- * tion destinée au test d'un contrôleur de périphérique prévu pour un ordinateur hôte à seize bits, alors que 1'UCT 10 du système de test automatique est du type à huit bits. Cette carte de réception comprend également des circuits d'attaque numériques 63 qui sont connectés au bus d'adresse, au bus de données et aux lignes de signaux de commande provenant de la carte d'attaque 13. On utilise ici encore un décodeur 69 pour valider les circuits d'attaque numériques 63 qui sont connectés au bus de données et aux lignes de signaux de commande, lorsque l'UCT 10 émet des codes d'adresse appro- priés. Cependant, dans cette carte de réception, une mémoire vive 78 est connectée au bus de données. Un dispositif de commande d'accès direct en mémoire 81 est incorporé pour permettre un transfert de données à partir de la mémoire vive 78. Pendant l'utilisation, l'UCT charge des données dans la mémoire vive 78, en vue d'une utilisation ultérieure par le contrôleur sous test, avec une cadence de transfert plus élevée. Après avoir été chargée par l'UCT 10, la mémoi- re vive 78 peut émettre par les lignes de commande un signal de commande approprié qui commande au contrôleur sous test 19 de valider la ligne de demande d'accès direct en mémoire 84, pour demander ainsi au dispositif de commande d'accès direct en mémoire 81 d'autoriser l'émission de données à partir de la mémoire vive 78. On utilise la ligne de demande d'entrée/sortie, 87, pour appliquer au contrôleur sous test un signal qui indique que les données sont valides, et cette ligne fait partie de la configuration particulière du type de contrôleur périphérique sous test. Un groupe de bascules est ici encore incorporé dans le but de détecter des signaux d'interruption provenant du contrôleur sous test. La figure 8 montre un exemple d'émulateur de péri- phérique. Cet émulateur de périphérique peut simuler une unité de disque dur ou une unité de disquettes. De façon générale, l'émulateur d'unité de disque comprend une mémoi- re 90 destinée à enregistrer une quantité souhaitable de données (de préférence une piste pour une unité de disque) qui sont introduites dans l'émulateur 27 par l'intermédiaire de l'UCT 10, ou, dans un autre mode, des données qui pro- viennent du contrôleur sous test 19. Une série de bascules 91-94 sont également incorporées pour enregistrer des signaux d'état ou de condition d'unité de disque qu'une unité de disque émettrait normalement vers le contrôleur sous test dans diverses conditions de fonctionnement, et pour enregistrer en outre des ordres émis par le contrôleur sous test, qui commanderaient normalement à l'unité de dis- que de déclencher diverses opérations. Des circuits d'attaque numériques 97, 98 sont également incorporés pour émettre des signaux de données sur la distance importante qui sépare l'émulateur 27 et le contrôleur sous test 19. Du fait que des données sont normalement enregistrées dans la mémoire de piste 90 et extraites de cette dernière en paral- 259514'3 lèle, et sont normalement échangées en série avec le contrô- leur sous test 19, un circuit de conversion de données sous forme série, 101, est incorporé entre la mémoire 90 et les circuits d'attaque numériques 97, 98 pour produire la séquence appropriée d'émission de données. L'un des problèmes les plus persistants dans l'utilisation d'une unité de disque pour l'enregistrement de données est couramment appelé "gigue de bit". Ce phénomè- ne consiste dans le déplacement temporel d'impulsions de données lues dans l'unité de disque par le contrôleur de périphérique. Cette perturbation dans les relations tempo- relles résulte couramment de variations de la vitesse de l'unité de disque, d'un effet d'hystérésis dans les têtes de lecture/écriture de l'unité de disque, de défauts de supports d'enregistrement, d'impulsions parasites de bruit électromagnétique et d'un décalage des bits sur le support d'enregistrement, résultant de la proximité immédiate de bits adjacents qui se repoussent ou s'attirent mutuellement de façon magnétique. Les contrôleurs sont généralement con- çus de façon à tolérer jusqu'à 39 nanosecondes de gigue de bit. Les systèmes antérieurs de test de contrôleurs de péri- phériques n'ont cependant généralement pas comporté des moyens permettant de tester de façon satisfaisante la tolé- rance d'un contrôleur à la gigue de bit. Le système de test automatique de l'invention comprend une mémoire de retard 104 et un additionneur de retard 107, pour mesurer la tolé- rance d'un contrôleur sous test à la gigue de bit. En asso- ciation avec chaque bit de données enregistré dans la mémoi- re 90, un bit de temporisation correspondant est enregistré dans la mémoire de retard 104. Lorsque ces données sont ensuite émises vers le contrôleur sous test, chaque bit de données provenant de la mémoire 90 est retardé par l'addi- tionneur de retard 107 de la valeur d'intervalle de temps qui est enregistrée dans la mémoire de retard 104, ce qui permet d'obtenir une résolution d'une nanoseconde dans les écarts de temps entre divers bits de données. On peut ainsi faire apparaître une forme de gigue de bit et l'augmenter progressivement, par l'enregistrement approprié de données dans la mémoire de retard 104, pour déterminer le moment auquel le contrôleur sous test commence à rejeter les don- nées provenant de l'émulateur, à cause d'un déplacement d'impulsions de données qui dépasse la tolérance. Un certain nombre de contrôleurs d'unités de dis- que comportent à l'heure actuelle une caractéristique appe- lée "code de pré-compensation d'écriture", destinée à pré- server les relations temporelles entre des bits de données qui sont écrits près du centre d'un disque d'enregistrement de données. De façon caractéristique, lorsque les domaines magnétiques qui représentent les données sont placés de plus en plus près les uns des autres, on atteint un point auquel les domaines magnétiques sont déplacés physiquement de leur position initiale à cause de l'interaction avec des domaines magnétiques adjacents. Ce déplacement physique se traduit pas un décalage dans la relation temporelle entre des bits de données adjacents. Des contrôleurs de périphéri- ques effectuent une pré-compensation d'écriture pour ce déplacement physique, en écrivant les données plus tôt ou plus tard, de façon qu'après avoir été décrit, le domaine magnétique soit décalé vers sa position correcte. Un détec- teur de pré-compensation d'écriture 110 est incorporé dans l'émulateur de périphérique 27, pour contrôler les données d'écriture provenant du contrôleur sous test 19, et pour déterminer si la pré-compensation d'écriture fonctionne correctement. Le détecteur de pré-compensation d'écriture 110 mesure l'intervalle entre des fronts avant d'impulsions de données adjacentes. Un compteur est incrémenté chaque fois que le détecteur de pré-compensation d'écriture 110 détecte deux impulsions de données dans lesquelles la pre- mière impulsion de données est en retard et la seconde impulsion de données est en avance. L'UCT 10 lit ensuite le contenu du compteur du détecteur de pré-compensation d'écri- ture 110, et elle compare ce compte au nombre de fois que des première et seconde impulsions de données auraient dû arriver respectivement en retard et en avance. En fonctionnement normal, un contrôleur d'unité de disque peut déterminer que les têtes de l'unité de disque sont positionnéessur une première piste, et commander aux têtes de se déplacer vers une piste différente. Ceci s'effectue normalement par un ordre de direction et par l'émission d'un certain nombre d'impulsions qui commandent à l'unité de disque de déplacer les têtes d'une piste pour chaque impulsion. Pour simuler cet effet, un compteur d'im- pulsions 113 est incorporé dans l'émulateur de périphérique du système de test automatique de l'invention. On peut alors utiliser le compteur 113 pour compter le nombre d'impulsions d'avance pas à pas qui sont émises par le contrôleur sous test. Un générateur d'impulsions 116 peut être incorporé dans l'émulateur pour renvoyer une impulsion d'index appro- priée chaque fois qu'un rotation complète du disque est simulée. Pendant le fonctionnement, l'unité centrale de traitement 10 peut appliquer divers ordres et diverses don- nées au contrôleur sous test, par l'intermédiaire de la carte de réception 16. L'UCT 10 peut ensuite accéder à la mémoire de piste 90 et aux groupes de bascules 93, 94 de l'émulateur de périphérique 27, pour déterminer si des signaux d'ordre appropriés ont été émis ou non vers l'émula- teur de périphérique, et pour déterminer si les données qui ont été soumises initialement au contrôleur sous test 19 ont été transmises avec exactitude. L'UCT 10 peut également enregistrer divers signaux d'état dans les groupes de bascu- les 91, 92 de l'émulateur de périphérique 27, et ordonner ensuite au contrôleur sous test 19 de déclencher une action particulière, et vérifier si cette action est déclenchée ou reportée, selon ce qui convient, sous la dépendance des signaux d'état apparent qui sont présents dans l'émulateur de périphérique 27. Il est possible de déterminer soigneuse- ment la tolérance du contrôleur sous test 19 à diverses con- ditions anormales, en commandant à 1'UCT 10 de charger dans la mémoire de piste 90 diverses formes de données dégradées ou erronées (en faisant intervenir éventuellement la tolé- rance à la gigue de bit par l'emploi de la mémoire de retard 104) et en commandant ensuite au contrôleur sous test 19 de lire ces données dans l'émulateur de périphérique 27. En employant un logiciel modulaire et des cartes de réception adaptés pour le type particulier de contrôleur de périphéri- que qui est testé, on peut utiliser efficacement le système de test automatique de l'invention pour tester une gamme étendue de produits. Il va de soi que de nombreuses modifications peu- vent être apportées au dispositif décrit et représenté, sans sortir du cadre de l'invention. REVENDICATIONS 1. Système de test automatique pour tester des contrôleurs (19) pour des périphériques d'ordinateurs, caractérisé en ce qu'il comprend: des moyens de traitement (10) destinés à produire des signaux de données et de commande qui commandent à un contrôleur sous test (19) de déclencher un ensemble d'actions prédéterminées; des moyens de réception (58; 16), connectés de façon amovible au système de test, pour transmettre les signaux de données et de commande des moyens de traitement (10) vers le contrôleur sous test (19), ces moyens de réception (58, 16) ayant une configuration prévue pour l'utilisation avec un type spéci- fique de contrôleur de périphérique (19); et des moyens émulateurs (27), connectés aux moyens de traitement (10) et reliés de façon amovible au contrôleur sous test (19), pour simuler un dispositif périphérique devant être commandé par le contrôleur (19), ces moyens émulateurs (27) étant prévus pour recevoir des signaux de données, d'état et de commande à partir des moyens de traitement (10) et du contrôleur sous test (19), ce qui fait que les moyens émulateurs (27) reçoi- vent des données et des ordres à partir du contrôleur sous test (19) et ils appliquent des signaux de données et d'état au contrôleur (19) sous la commande des moyens de traitement (10), pour tester le fonctionnement du contrôleur sous test (19). 2. Système de test automatique selon la revendica- tion 1, caractérisé en ce que les moyens de réception (58, 16) comprennent un groupe de bascules électroniques (75) destinées à empêcher que des signaux provenant du contrôleur sous test (19) n'interrompent le fonctionnement des moyens de traitement (10). 3. Système de test automatique selon la revendica- tion 1, caractérisé en ce que les moyens récepteurs (58, 16) comprennent en outre une mémoire (78) destinée à enregistrer des données provenant des moyens de traitement (10), grâce à quoi les moyens de traitement (10) sont capables de simuler les caractéristiques temporelles de signaux de données pro- venant d'un type différent de moyens de traitement (10). 4. Système de test automatique selon la revendica- tion 1, caractérisé en ce que les moyens émulateurs (27) comprennent en outre des moyens (110) destinés à mesurer la relation temporelle entre des impulsions de données reçues à partir du contrôleur sous test (19). 5. Système de test automatique selon la revendica- tion 1, caractérisé en ce que les moyens émulateurs (27) comprennent des moyens (104, 107) destinés à modifier les relations temporelles entre des impulsions de données reçues à partir des moyens de traitement (10) et émises vers le contr1ôleur sous test (19). 6. Système de test automatique modulaire pour le test de contrôleurs pour des dispositifs périphériques d'ordinateurs, caractérisé en ce qu'il comprend: des moyens de traitement (10) destinés à produire des signaux de commande correspondant à des tests à effectuer sur un con- tr81eur sous test (19), et à recevoir des signaux correspon- dant aux résultats de tests; un ensemble de moyens de réception interchangeables (58, 16) destinés à assurer l'in- terface entre les moyens de traitement (10) et divers con- trôleurs (19) à tester, chacun des moyens de réception (58) étant prévu pour être connecté aux moyens de traitement (10), et comprenant un réceptacle (59) prévu pour recevoir un contrôleur (19), et des moyens de communication pour connecter électriquement le contrôleur aux moyens de traite- ment (10), pour permettre une communication entre eux; et des moyens émulateurs (27), pouvant être connectés aux moyens de traitement (10) et à un contrôleur sous test (19), pour simuler un dispositif périphérique devant être commandé par le contrôleur (19), ces moyens émulateurs (27) étant prévus pour recevoir des ordres et des données à partir du contrôleur sous test (19), de la manière spécifiée par les moyens de traitement (10), et pour fournir aux moyens de traitement une information qui indique si le contrôleur (19) a produit correctement ces ordres et ces données, les moyens émulateurs (27) ayant également pour fonction d'appliquer des signaux au contrôleur sous test (19) pour déclencher diverses opérations du contrôleur, et les moyens de traite- ment (10) analysant les signaux qui proviennent du contrô- leur (19) et des moyens émulateurs (27) pour déterminer si le contrôleur fonctionne correctement.