Brevet FR2643992A1 — publié le 19900907

"Système de traitement des données capable de mémoriser des données de commande dans une mémoire de commande avec une vitesse accrue." Cette invention concerne un système de traitement des données comprenant une mémoire de commande concrétisée par une mémoire à accès sélectif. D'une façon qui deviendra claire plus loin, le système de traitement des données comporte un processeur pour traiter des données de commande en utilisant un microprogramme. Le processeur comporte donc une mémoire de commande pour mémoriser les données de commande sous forme de données de commande mémorisées ainsi qu'un registre de chargement pour ranger, à chacun des mots des données de commande, les données de commande qui se trouvent dans la mémoire de commande. Le processeur comporte en outre une grande variété de registres tels qu'un registre d'adresse et un registre de commande. Les registres sont collectivement dénommés groupe de registres. Le système de traitement des données comporte en outre un processeur de diagnostic pour effectuer une opération de diagnostic sur le groupe de registres et sur le registre de chargement. Le registre de chargement est relié en série au groupe de registres pour former un chemin balayé lors de l'opération de diagnostic. Lors de l'opération de diagnostic, le groupe de registres reçoit les données de test en provenance du processeur du diagnostic. Ces données de test sont décalées bit à bit à travers le groupe de registre en synchronisme avec un signal d'horloge et sont envoyées au registre de chargement sous forme de données de test sorties par décalage. Ensuite, les données de test sorties par décalage sont décalées bit à bit à travers le registre de chargement en synchronisme avec le signal d'horologe et sont fournies sous forme de données du résultat de test. Dans la mesure où la mémoire de commande est généralement concrétisée par une mémoire à accès sélectif, les données de commande doivent être rechargées dans la mémoire de commande lors du démarrage du système de traitement des données du fait que les données de commande mémorisées ne sont pas préservées lorsque l'on coupe le courant. Lors du démarrage du système de traitement des données, on effectue une opération de chargement pour charger les données de commande dans la mémoire de commande. En passant par le groupe de registres, le registre de chargement reçoit les données de commande en provenance du processeur de diagnostic, bit à bit en synchronisme avec le signal dthorloge. Le registre de chargement mémorise les données de commande sous forme de données de commande temporairement mémorisées. Puis on range dans la mémoire de commande les données de commande ainsi temporairement mémorisées. Dans l'opération de chargement mentionnée ci-dessus, le registre de chargement doit recevoir les données de commande par l'intermédiaire du groupe de registres. Ceci signifie qu'un intervalle de temps indésirable est perdu dans l'opération de chargement du fait que les données de commande doivent être# décalées bit à bit à travers le groupe de registres. Un but de l'invention est donc de proposer un système de traitement des données qui soit capable de mémoriser les données de commande à une vitesse accrue. D'autres buts de l'invention apparaitront au fur et à mesure de l'avancement dans la description. Pour décrire l'essentiel de cette invention, il est possible de comprendre qu'un système de traitement des données peut fonctionner dans un premier mode et dans un second mode et comporte un processeur comportant une mémoire de commande et comporte en outre des moyens d'alimentation pour alimenter le processeur en données de commande dans le premier mode et en données de test dans le second mode. Le processeur mentionné ci-dessus comporte des moyens formant registre qui peuvent fonctionner sous forme d'un premier chemin balayé comprenant une ligne de sortie du registre et une ligne d'alimentation reliée à la mémoire de commande pour mémoriser temporairement des données de commande sous forme de données de commande temporairement mémorisées et pour ranger dans la mémoire de commande, en passant par la ligne d'alimentation, les données de commande temporairement mémorisées. Un groupe de registres comprend une pluralité de registres qui peuvent fonctionner collectivement sous forme d'un second chemin balayé présentant une ligne de sortie du chemin balayé et auxquels sont envoyées les données de test pour produire les données de test sous forme de données sorties par décalage.Des moyens de commande sont reliés aux moyens formant registre et au groupe de registres et peuvent fonctionner dans le premier et le second modes pour commander l'envoi d'un signal d'horloge aux moyens formant registre et au groupe de registres dans le premier mode et dans le second mode, respectivement, pour faire en sorte que les moyens formant registre produisent les données de commande temporairement mémorisées sous forme de données de commande sorties par décalage, en passant par la ligne de sortie du registre, dans le premier mode, et pour faire en sorte que le groupe de registres produise les données sorties par décalage sous forme de données de test sorties par décalage en passant par la ligne de sortie du chemin balayé, dans le second mode.Les moyens de commande sont en outre reliés aux moyens d'alimentation pour commander l'envoi des données de commande aux moyens formant registre dans le premier mode et des données de test au groupe de registres dans le second mode. Des moyens de sélection sont reliés à la ligne de sortie du registre et à la ligne de sortie du chemin balayé pour sélectionner des données sélectionnées parmi les données de commande sorties par décalage et parmi les données de teste sorties par décalage, dans le premier mode et dans le second mode, respectivement, pour donner les données sélectionnées. La figure 1 est un diagramme par blocs d'un système conventionnel de traitement des données; et la figure 2 est une diagramme par blocs d'un système de traitement des données conforme à une réalisation de l'invention. En se reportant à la figure 1, on va décrire tout d'abord un système conventionnel de traitement des données pour faciliter la compréhension de la présente invention. Le système conventionnel de traitement des données est du type décrit ci-dessus. Le système de traitement des données comporte une unité de traitement 10 pour effectuer le traitement des données de la façon connue, ainsi qu'un processeur de diagnostic 11 pour effectuer une opération de diagnostic en mode diagnostic, et qu'un générateur de signal d'horloge 12 pour générer un signal d'horloge. Dans l'exemple illustré, le processeur de diagnostic 11 comporte une mémoire principale (non représentée), telle qu'une mémoire fixe, qui mémorise un microprogramme en tant que données de commande. Le microprogramme comporte une pluralité de microinstructions dont chacune est représentée par une pluralité de mots. Chacun des mots est spécifié par un nombre prédéterminé de bits. L'unité de traitement 10 comporte des registres d'ordre un à n, 14-1, 14-2, 14-3 ..., et 14-n, où n représente un nombre entier non inférieur à deux. Chacun des registres est concrétisé sous forme d'un registre d'adresses, d'un registre de commande ou analogue. Les registres d'ordre un à n, 14-1 à 14-n, sont reliés en série de façon à former un chemin balayé lors de l'opération de diagnostic. Les registres d'ordre un à n seront collectivement dénommés groupe de registres 14. Le groupe de registre 14 présente une ligne 101 d'entrée du chemin balayé reliée à une borne 18 d'entrée des données et une ligne 102 de sortie du chemin balayé reliée à une entrée du registre de chargement 16. Le registre de chargement 16 a une longueur de registre égale au nombre prédéterminé de bits et il est relié à une mémoire de commande 17 par l'intermédiaire d'une ligne d'alimentation 103. La mémoire de commande 17 est concrétisée sous forme d'une mémoire à accès sélectif. Bien que la mémoire de commande 17 ait pour rôle de mémoriser les données de commande sous forme de données de commande mémorisées, les données de commande ne sont pas mémorisées dans la mémoire de commande 17 lors du démarrage du système de traitement des données du fait que les données de commande mémorisées s'effacent lorsque l'on met hors circuit l'unité de traitement 10. Par conséquent, les données de commande doivent être à nouveau rangées chaque fois dans la mémoire de commande 17 lors du démarrage du système de traitement des données comme cela sera décrit plus loin. Lors de l'opération de diagnostic, le processeur de diagnostic 11 envoie les données de test dans le groupe de registres 14 par l'intermédiaire de la borne 18 d'entrée des données et de la ligne 101 d'entrée du chemin balayé. Le générateur 12 de signal d'horloge envoie le signal d'horloge au groupe de registres 14 et au registre de chargement 16 par l'intermédiaire d'une borne 19 d'entrée du signal d'horloge. Dans le groupe de registres 14, les données de test sont décalées bit à bit en synchronisme avec le signal d'horloge. Le groupe de registres 14 envoie alors les données de test dans le registre de chargement 16 sous forme de données de test sorties par décalage. Dans le registre de chargement 16, les données de test sorties par décalage sont à nouveau décalées bit à bit en synchronisme avec le signal d'horloge.Le registre de chargement 16 envoie les données de test, sorties par décalage, en tant que données du résultat de test, au processeur de diagnostic 11 par l'intermédiaire d'une borne 20 de sortie des données. Lors du démarrage de système de traitement des données, le système de traitement des données effectue une opération de chargement des données de commande. Le processeur de diagnostic 11 extrait des données de commande dans la mémoire principale, mot après mot, sous forme de données de commande extraites et envoie les données de commande, ainsi extraites, au groupe de registres par l'intermédiaire de la borne 18 d'entrée des données et de la ligne 101 d'entrée du chemin balayé. Le générateur 12 de signal d'horloge envoie le signal d'horloge au groupe de registres 14 et au registre de chargement 16. Dans le groupe de registres 14, les données de commande extraites sont décalées bit à bit en synchronisme avec le signal d'horloge. Le groupe de registres 14 envoie alors les données de commande extraites, sous forme de données de commande sorties par décalage, au registre de chargement 16. Le registre de chargement 16 mémorise les données de commande sorties par décalage sous forme de données de commande temporairement mémorisées qui sont rangées dans la mémoire de commande 17 par l'intermédiaire de la ligne d'alimentation 103 lorsque ces données de commande temporairement mémorisées deviennent égales au nombre prédéterminé. De même, le processeur de diagnostic 11 envoie les données de commande d'un mot - suivant au groupe de registres 14. Le registre de chargement 16 range dans la mémoire de commande 17 les données de commande, temporairement mémorisées, du mot suivant.L'opération de chargement, mentionnée ci-dessus, se poursuit jusqu'à ce que toutes les données de commande soient rangées dans la mémoire de commande 17. Le registre de chargement 16 est capable de produire les données de commande, temporairement mémorisées, sous forme de données de commande sorties par décalage, par l'intermédiaire de la ligne 104 de sortie du registre. Comme cela est évident à partir de la description ci-dessus, un intervalle de temps indésirable est perdu dans l'opération de chargement du fait que les données de commande extraites doivent être décalées bit à bit à travers le groupe de registres 14. En se reportant à la figure 2, on va maintenant décrire le système de traitement des données conforme à une réalisation préférée de cette invention. Le système de traitement des données comporte des parties semblables désignées par les mêmes repères et comporte en outre un circuit de commande 31 et un sélecteur 32 ainsi qu'une borne 33 d'entrée du signal. Le processeur de diagnostic ll produit un signal de mode indicatif d'un mode #chargement pour l'opération de chargement ainsi qu'un signal de mode indicatif du mode diagnostic pour# l'opération de diagnostic. Le mode chargement peut être dénommé premier mode tandis que le mode diagnostic peut être dénommé second mode. L'unité de traitement 10 reçoit le signal de mode par l'intermédiaire de la borne 33 d'entrée du signal. Le circuit de commande 31 est relié au groupe de registres 14 et au registre de chargement 16.Le circuit de commande 31 est relié en outre au processeur de diagnostic ll pour commander l'envoi des données de commande au registre de chargement 16 en mode chargement et des données de test au groupe de registres 14 en mode diagnostic. Sensible au signal de mode, le circuit de commande 16 commande l'envoi du signal d'horloge pour envoyer le signal d'horloge au groupe de registres 14 et au registre de chargement 16 en mode diagnostic et en mode chargement, respectivement. Le sélecteur 32 est relié à la ligne 102 de sortie du chemin balayé et à la ligne 104 de sortie du registre. Sensible au signal de mode, le sélecteur 32 sélectionne les données sélectionnées parmi les données de commande sorties par décalage, en mode diagnostic et en mode chargement et produit les- données sélectionnées. Dans l'exemple illustré, le registre de chargement 16 peut fonctionner comme premier chemin balayé tandis que le groupe de registres 14 peut fonctionner comme second chemin balayé. On va maintenant examiner l'opération de diagnostic. Dans ce mode opératoire, le processeur de diagnostic 11 envoie les données de test à la borne 18 d'entrée des données. Le processeur de diagnostic envoie également le signal de mode indicatif du mode diagnostic au circuit de commande 31 et au sélecteur 32 par l'intermédiaire de la borne 33 d'entrée du signal. Ayant reçu le signal de mode indicatif du mode diagnostic, le circuit de commande envoie le signal d'horloge au groupe de registres 14. Dans le groupe de registres 14, les données de test sont décalées, en tant que données sorties par décalage, bit à bit, en synchronisme avec le signal d'horloge. Le groupe de registes 14 envoie les données de sorties par décalage, en tant que données de test sorties par décalage, au sélecteur 32. Dans ce mode, le registre de chargement 16 ne peut pas envoyer les données de test puisque le registre de chargement 16 n'a pas reçu le signal d'horloge. Sensible au signal de mode indicatif du mode diagnostic, le sélecteur 32 produit les données de test, sorties par décalage, en tant que données de résultat du test. Les données de résultat du test sont envoyées au processeur de diagnostic 11 par l'intermédiaire de la borne 20 de sortie des données. Il faut noter ici que les données de test sont constituées d'une séquence de bits. Le signal d'horloge est constitué d'une séquence d'impulsions d'horloge. Chacun des registres, du premier au nième, 14-1 à 14-n, reçoit les impulsions d'horloge. Les données de test sont envoyées au premier registre 14-1 et sont décalées, bit à bit, à travers les registres, du premier au nième, en synchronisme avec les impulsions d'horloge. Les données de test sont fournies par le nième registre 14-n, à la ligne de sortie 102 du chemin balayé, en tant que données sorties par décalage. En mode chargement, le processeur de diagnostic 11 lit les données de commande dans la mémoire principale en tant que données de commande extraites et envoie ces données de commande, extraites, au groupe de registres 14 et au registre de chargement 16. Le processeur de diagnostic 11 envoie le signal de mode indicatif du mode chargement au circuit de commande 31 et au sélecteur 32. Le générateur 12 de signal d'horloge envoie le signal d'horloge au circuit de commande 31. Sensible au signal de mode, le circuit de commande 31 envoie alors le signal d'horloge au registre de chargement 16. Le registre de chargement 16 mémorise les données de commande, extraites sous forme de données de commande temporairement mémorisées, bit à bit, en synchronisme avec le signal d'horloge.Le groupe de registres 14 ne peut pas envoyer les données de commande extraites, puisque, dans ce mode, le groupe de registres 14 ne reçoit pas le signal d'horloge. Lorsque les données de commande temporairement mémorisées deviennent égales au nombre prédéterminé, le registre de chargement 16 range dans la mémoire de commande 17, par l'intermédiaire de la ligne d'alimentation 103, les données de commande temporairement mémorisées. L'opération de chargement mentionnée ci-dessus se répète à chacun des mots des données de commande. Par conséquent, la mémoire de commande 17 mémorise la totalité des données de commande sous forme de données de commande mémorisées. Le registre de chargement 16 peut envoyer au sélecteur 32 les données de commande, temporairement mémorisées, sous forme de données de commande sorties par décalage. Sensible au signal de mode indicatif du mode chargement, le sélecteur 32 produit les données de commande, sorties par décalage,en tant que données sélectionnées. Le registre de chargement 16 peut servir de registre de lecture à employer lors de la lecture des données de commande, mémorisées, dans la mémoire de commande 17. Bien que 1 t on ait jusqu ici décrit cette invention avec une seule de ses réalisations, l'homme de l'art pourra facilement mettre cette invention en pratique de différentes autres façons. Par exemple, les données de commande peuvent être mémorisées dans une mémoire extérieure, extérieure au processeur de diagnostic au lieu de la mémoire principale du processeur de diagnostic. Dans ce cas, une unité centrale de traitement du système de traitement des données lit les données de commande dans la mémoire extérieure en tant que données de commande extraites. L'unité centrale de traitement envoie les données de commande extraites à l'unité de traitement. R E V E N D I C A T I O N S 1. Système de traitement des données pouvant fonctionner dans un premier mode et dans un second mode et comportant un processeur comprenant une mémoire de commande (17) et comportant également des moyens d'alimentation pour alimenter ledit processeur avec des données de commande dans ledit premier mode et avec des données de test dans ledit second mode, ledit processeur étant caractérisé en ce qu'il comporte des moyens formant registre (16) qui peuvent fonctionner comme un premier chemin balayé, comprenant une ligne (104) de sortie du registre et une ligne d'alimentation (103) reliée à ladite mémoire de commande (17) pour mémoriser temporairement lesdites données de commande sous forme de données de commande temporairement mémorisées et pour ranger lesdites données de commande temporairement mémorisées dans ladite mémoire de commande (17) par l'intermédiaire de ladite ligne d'alimentation (103); un groupe de registres (14) comprenant une pluralité de registres qui peuvent collectivement fonctionner comme second chemin balayé présentant une ligne (102) de sortie du chemin balayé et qui reçoivent lesdites données de test pour produire lesdites données de test sous forme de données sorties par décalage;; des moyens de commande (31) reliés auxdits moyens formant registre (16) et audit groupe de registres (14) et pouvant fonctionner dans ledit premier et dans ledit second modes pour commander l'envoi d'un signal d'horloge auxdits moyens formant registre et audit groupe de registres dans ledit premier mode et dans ledit second mode, respectivement, pour faire en sorte que lesdits moyens formant registre produisent lesdites données de commande, temporairement mémorisées, sous forme de données de commande sorties par décalage, par l'intermédiaire de ladite ligne de sortie du registre, dans ledit premier mode, et pour faire en sorte que ledit groupe de registres produise lesdites données sorties par décalage sous forme de données de test sorties par décalage, par l'intermédiaire de ladite ligne de sortie du chemin balayé, dans ledit second mode, lesdits moyens de commande étant en outre reliés auxdits moyens d'alimentation pour commander l'envoi desdites données de commande auxdits moyens formant registre dans ledit premier mode et desdites données de test audit groupe de registres dans ledit second mode; et des moyens de sélection (20) reliés à ladite, ligne de sortie du registre et à ladite ligne de sortie du chemin balayé pour sélectionner les données sélectionnées parmi lesdites données de commande sorties par décalage et parmi lesdites données de test sorties par décalage, dans ledit premier mode et dans ledit second mode, pour produire lesdites données sélectionnées. 2. Système de traitement des données tel que revendiqué dans la revendication 1, dans lequel lesdits moyens d'alimentation (11) envoient auxdits moyens de commande (31) un signal de mode indiquant sélectivement un mode chargement comme dit premier mode et un mode diagnostic comme dit second mode, lesdits moyens de commande (31) envoyant ledit signal d'horloge auxdits moyens formant registre (16) en réponse au signal de mode indicatif dudit mode enregistrement et envoyant ledit signal d'horloge audit groupe de registres (14) en réponse au signal de mode indicatif dudit mode diagnostic. 3. Système de traitement des données tel que revendiqué dans la revendication 2, dans lequel lesdits moyens d'alimentation (11) envoient ledit signal de mode auxdits moyens de sélection (20), lesdits moyens de sélection produisant lesdites données de commande, sorties par décalage, en réponse au signal de mode indicatif dudit mode enregistrement et produisant lesdites données de test, sorties par décalage, en réponse au signal de mode indicatif dudit mode diagnostic. 4. Système de traitement des données tel que revendiqué dans la revendication 3, dans lequel ledit groupe de registres (14) comporte des registres, du premier au nième, reliés en série, où n représente un entier non inférieur à deux, chacun desdits registres, du premier au nième, recevant ledit signal d'horloge, lesdites données ~ de test étant envoyées audit premier registr#e et étant décalées à travers les registres, du premier au nième, en synchronisme avec ledit signal d'horloge et étant fournies, par ledit nième registre, à ladite ligne de sortie (102) du chemin balayé, en tant que dites données sorties par décalage.