Brevet FR2397019A1 — publié le 19790202

L'invention concerne les systèmes de traitement de données comportant une unité centrale de traitement, une mémoire de données, un organe de commande1 des organes d'entrées-sorties, et plus particulièrement les systèmes de traitement de données dans lesquels l'unité centrale de traitement est constituée par un microprocesseur et dans lesquels l'organe de commande comporte une mémoire microprogrammée. Si de tels systèmes ont l'avantage d'être peu volumineux, ils ont aussi l'inconvénient de traiter les données à une vitesse assez faible. L'objet de l'invention est d'accrotrela vitesse de traitement de données de ces systèmes. Le système de traitement de données selon l'invention comporte à cet effet un décaleur autonome activé par un signal d'horloge indépendant du signal d'horloge qui active le microprocesseur. Les performances relatives du décaleur autonome et du microprocesseur étant telles que l'on peut choisir pour le signal d'horloge du décaleur autonome une fréquence supérieure à celle du signal d'horloge du microprocesseur, on voit que les opérations de décalage s'effectueront plus rapidement à l'intérieur du décaleur autonome qu'à l'intérieur du microprocesseur. donc que la vitesse de traitement de données du système selon l'invention est accrue. Les objets et caractéristiques de la présente invention apparattront plus clairement à la lecture de la description suivante d'un exemple de réalisation, ladite description étant faite en relation avec les dessins ci-annexés dans lesquels la figure 1 présente un schémadu système de traitement de donnes selon l'invention. la figure 2 présente un schéma du décaleur autonome faisant partie du système de traitement de données selon l'invention. la figure 3 présente un schéma du dispositif de contrôle d'horloge du décaleur autonome faisant partie du système de traitement de données selon l'invention. Si lton se réfère à la figure 1, on voit que le système de traitement de données selon 1 'invention comporte une unité centrale de traitement 1, une mémoire de données 2, - un organe de commande 3 contenant une mémoire microprogrammée 4, des organes d'entres-sorties 5, un contrôleur de signaux 7 et enties-sorties 6 et un décaleur autonome 7 qui reçoit des informations provenant de l'unité centrale de traitement, de la mémoire de données et de l'organe de commande, et qui émet des informations à destination de l'unité centrale de traitement. Le décaleur autonome est décrit dans la figure 2. Pour la clarté de la description, il convient tout d'abord de présenter brièvement les instructions de décalage utilisées dans cet exemple de rdalisation. Ces instructions comportent notamment un signal binaire L à quatre déments binaires, indiquant le type de décalage à effectuer et un signal/P a binaire six éléments binaires indiquant le nombre de décalages à effectuer. Il est possible d'effectuer douze types de décalages différents, ce qui correspond à toutes les combinaisons possibles sur les quatre éléments binaires du signal L moins quatre combinaisons qui sont interdites.Ces types de décalages sont indiqués dans le tableau 1. Il est également possible d'effectuer de un à soixante quatre décalages successifs sur un X8me mot de données binaires, ce qui correspond à toutes les combinaisons possibles sur les six éléments binaires du signal P. Les mots de données à traiter possèdent soit trente deux éléments binaires notés eb à eb (le décalage est alors dit décalage simple), o 31 soit soixante quatre éléments binaires notés eb à eb (le décalage est o 63' alors dit décalage double). Si l'on se réfère à la figure 2, on voit que le décaleur autonome 7 est constitué par trois ensembles : un dispositif de sélection de type de décalage à effectuer 8, un circuit de décalage 9, et un dispositif fournissant le signal d'horloge du circuit de décalage 10. Le dispositif de sélection de type de décalage à effectuer 8 reçoit le signal binaire L de la mémoire de données 2 via le contrôleur 6 par action de l'organe de commande 3, et le signal binaire M0 provenant de la mémoire microprogrammée 4, et fournit les signaux binaires A, B, S, S2 au circuit de décalage 9. Le dispositif 8 est un convertisseur de code qui établit entre les signaux d'entrée L, M0 et les signaux de sortie A, B, S1, S2, la correspondance donnée par le tableau I. Le circuit de décalage 9 comporte deux registres à décalage Il et 12 de trente deux éléments binaires chacun, à entrées et sorties parallèles, dont les signaux d'entrée : ebO à eb31 pour le registre 11 et eb32 à ebg, pour le registre 12, constituant les données à décaler, proviennent soit de la mémoire de données 2, soit de l'unité centrale de traitement 1, dont les signaux de sortie : EB å à EB3î pour le registre 11 et EB32 à EB63 pour le registre 12, constituant les données décalées, sont acheminéesvers 1'unité centrale dé traitemeht L Un décalage simple met en oeuvre le registre 11, un décalage double les registres 11 et 12.Le registre à décalage 11 est commandé par le signal SI, le registre à décalage 12 par le signal S2. Un multiplexeur 13 commandé par le signal A fournit au registre 11 un signal G1 d'entrée de données à gauche, les données à introduire à gauche étant choisies par le signal A parmi les valeurs binaires EBo, EB3l > EB63, "zéro". Un multiplexeur 14 commandé par le signal B fournit au registre-ll un signal D1 d'entrée de données à droite, les données 9 introduire à droite étant choisies par le signal B parmi les valeurs binaires EBoJ Ex32 "zéro". Un multiplexeur 15 commandé par le signal - A fournit au registre 12 un signal D2 d'entrée de données à droite, les données à introduire à droite étant choisies par le signal A parmi les valeurs binaires EBO, "zéro". Le signal G2 d'entrée de données à gauche du registre 12 est égal à la valeur binaire EB 31 quel que soit le type de décalage à effectuer mettant en oeuvre les deux registres 11 et 12. Le tableau 1 ci-après récapitule les valeurs des signaux S1, S2, A, B, G1, D1, G2, D2 et la fonction commandée par les signaux S1 et S2 en fonction des signaux M , t. Mo L S1 S2 A B G1 D1 D2 D2 Fonction commandée par les signaux S1 et S2 000 00 00 Maintien des registres à décalage 10 et 11 001 00 11 Chargement du registre 11 010 11 11 Mise à "séro" et chargement des registres 10 et 11 011 11 00 Chargement du registre 10 100 0000 01 10 0 Décalage logique, simple, vers la gauche 100 0001 10 10 0 Décalage logique, simple, vers la droite 100 0010 01 01 10 01 EB32 0 Déoalage logique, double, vars la gauche 100 0011 10 10 10 0 EB31 Décalage logique, douhble, vers la droite 100 0100 01 00 EB0 Décalage circulaire, simple, vers la gauche 100 0101 10 11 EB31 Déoalage oiroulaire, simple, vers la droite 100 0110 01 01 00 01 EB32 EB0 Déoalage oiroulaire, double, vers la gauche 100 0111 10 10 01 EB63 EB31 Décalage oiroulaire, double, vers la droite 100 1000 01 10 0 Décalage arithmétique, simple, vers la gauche 100 1001 10 00 EB0 Décalage arithmétique, simple, vers la droite 100 1010 01 01 10 01 EB32 0 Décalage arithmétique, double, vers la gauche 100 1011 10 10 00 EB0 EB31 Décalage arithétique, double, ver la droite TABLEAU 1 Le dispositif fournissant le signal d'horloge du circuit de décalage 10 comporte un dispositif de contîe7Lu alimenté # par un signal d'horloge h provenant d'un générateur de signal d'horloge 17, par un signal Mi provenant de la mémoire microprogrammée 4 et par le signal de sortie Z d'un compteur i8 à six éléments binaires pouvant donc compter de zéro à soixante trois. Le dispositif de contrôle d'horloge 16 fournit en sortie le signal d'horloge H du circuit de décalage qui active les registres à décalage 11 et 12 et le compteur 18. Le compteur 18,mis en position de décomptage, est chargé par le signal P indiquant le nombre p de décalages à effectuer sur les données chargées dans les registres 11 et 12, après y avoir été autorisé par le signal M2 venant de la mémoire microprogrammée 4. Sous l'impulsion du signal d'horloge H, le compteur 18 décompte alors de la valeur p à la valeur "zéro". A la valeur "zéro", le signal Z devient actif et provoque alors, par son action sur le dispositif de centrale 16,1'arrSt des impulsions d'horloge H. Si lton se réfère maintenant à la figure 3, on constate que le dispositif de contrôle d'horloge 16 comporte une première bascule 19 dont une entrée de forçage : 'entrée de mise à nunn, est alimentée par le signal M1 venant de la mémoire microprogrammée, dont l'autre entrée de forçage : l'entrée de mise à "zéro", est alimentée par le signal Z de sortie du compteur 18. Lorsqu'une instruction de décalage apparat dans l'organe de commande ), après que le type de décalage à effectuer ait été sélectionné par le dispositif 8, et que les registres à décalage 11 et 12 aient été chargés par les données à décaler, le signal E devient actif et entrain la mise à "un" du signal de sortie Q1 de la bascule 19. Le signal Q1 alimenlel 'entrée de commande d'une deuxième bascule 20 activée par le signal d'horloge h. A-la première transition de lthorloge h suivant l'instant de mise à "un" du signal QI, le signal de sortie Q2 de la bascule 20 prend également la valeur binaire "un", permettant ainsi le passage du signal d'horloge h à travers la porte logique 21. Lorsque le signal Z devient actif, le signal Q1 prend la valeur binaire "zéro", entratnant ainsi -le passage à la valeur binaire "zéro" du signal Q2 à la transition du signal d'horloge h immédiate ment suivante. Le signal d'horloge H du circuit, de décalage est'donc identique-au signal d'horloge h pendant les'opérations dedécalage et nulle en en dehors des opérations de décalage. Bien que les principes de la présente invention aient été décrits en relation avec un exemple particulier de réalisation, on comprendra clairement que ladite description est faite seulement à titre d'exemple et ne limite pas la portée de l'invention, notamment en ce qui concerne les ttches effectuées par le décaleur autonome. On peut en effet envisager d'effectuer à l'aide du décaleur autonome, outre les décalages proprement dits, des opérations telles que des manipulations de tranches d'éléments binaires. REVENDICATIONS 1. Système de traitement de données comportant une unité centrale de traitement, une mémoire de données, un organe de commande et des organes d'entrées-sorties, système dans lequel l'unité centrale de traitement est constituée par un microprocesseur et dans lequel l'organe de commande comporte une mémoire microprogrammée, caractêrisé en ce qu'il comporte un décaleur autonome activé par signal d'horloge indépendant~du signal d1hor- loge qui active le microprocesseur. 2. Système de traitement de données selon la revendication 1, caractérisé en ce que le décaleur autonome comporte premièrement un dispositif de sélection de type de décalage à effectuer communiquant notamment avec l'organe de commande du système de traitement de données, deuxièmement un circuit de décalage dont entrée de commande communique notamment avec le dispositif de sélection de type de décalage à effectuer, dont ltentrée de données communique notamment avec la mémoire de données et avec l'unité centrale de traitement, dont la sortie de données communique notamment avec l'unité centrale de traitement, troisièmement un dispositif fournissant le signal d'horloge du circuit de décalage communiquant notamment avec l'organe de commande du système de traitement de données. 3. Système de traitement de données selon la revendication 2, caractérisé en ce que le circuit de décalage du décaleur autonome est muni d'une entrée de données à droite et d'une entrée de données à gauche, chaque entrée étant reliée à la sortie d'un multiplexeur commandé par le dispositif de sélection de type de décalage à effectuer et alimenté par des signaux binaires de sortie du circuit de décalage constituant les données à introduire à droite ou à gauche dans le circuit de décalage. 4. Système de traitement de données selon la revendication 2 ou ,carac- tersé en ce que le dispositif fournissant le signal d'horloge du circuit de décalage comporte un dispositif de contrôle d'horloge alimenté premièrement par un générateur de signal d'horloge, deuxièmement par l'organe de commande du système de traitement de données, troisièmement par le signal de sortie d'un compteur dont les signaux d'entrée et de commande de comptage proviennent de 1 'organe de commande du système de traitement de données, le dispositif de contrôle d'horloge fournissant le signal d'horloge du circuit de décalage. 5 Système de traitement de données selon la revendication 4, caractérisé en ce que le dispositif de centrale d 1horloge est constitué premièrement par une bascule dont une entrée de forçage est alimentée par 1' organe de commande du système de traitement de données, dont l'autre entrée de forçage est alimentée par le signal de sortie du compteur, deuxièmement par une bascule dont 1 entrée de commande est alimentée par le signal de sortie de la première bascule, dont le signal d'horloge est celui fourni par le générateur de signal d'horloge, troisièmement par une po?te logique dont les signaux d'entrée sont le signal d'horloge fourni par le générateur de signal d'horloge et le signal de sortie de la deuxième bascule, dont le signal de sortie est le signal d'horloge du circuit de décalage. 6. Système de traitement de données selon l'une des revendications 2, 3, 4, ou 5, caractérisé en ce que le dispositif de sélection de type de décalage à effectuer est constitué par un convertisseur de code dont les signaux d'entrée proviennent de l'organe de commande du système de traitement de données, dont les signaux de sortie alimentent les entrées de commande du circuit de décalage.