Brevet FR2617353A1 — publié le 19881230

La présente invention concerne les convertisseurs parallèLe-série. On connaît déjà l'utilisation du registre à déca- lage pour transformer une donnée de la forme parallèle à la forme série. On charge la donnée dans le registre à décalage suivant un mode de chargement en parallèle, puis on la décale en série suivant un mode de décalage, en mesure avec un signal d'horloge. Suivant une forme connue particulière de convertisseur parallèle-série, il est prévu un circuit logique qui détecte que toute la donnée a été décalée hors du registre et que la charge parallèle suivante est demandée. Lorsque cette situation est détectée, le registre commute de son mode de décalage à son mode de chargement en parallèle, per- mettant le chargement dans le registre de la donnée en parallèle suivante. Un problème lié à ce type de montage est que les registres à décalage présentent généralement un long temps de préparation, c'est-à-dire le temps qu'il faut pour commuter du mode de décalage au mode de chargement en parallèleet inversement. Ceci limite le rythme d'horloge maximal que l'on peut utiliser et, par conséquent, ralentit le fonctionnement du convertisseur. Le but de l'invention est de proposer un convertisseur parallèle-série possédant une vitesse de fonctionnement améliorée. Selon l'invention, il est proposé un convertisseur parallèle-série comprenant: (a) un registre à décalage dans lequel une donnée est chargée en parallèle, suivant un mode de chargement en parallèle, puis est décalée en série dans un mode de décalage en mesure avec un signal d'horloge, et (b) un circuit logique suivant à détecter un état indi- quant que le chargement en parallèle suivant est nécessaire et commutant alors te registre à décalage de son mode de décalage à son mode de chargement en parallèle, le convertisseur se distinguant en ce que le circuit logique détecte ledit état à l'avance si bien que la détection dudit état et la commutation du registre à décalage sur son mode de chargement en parallèLe se produisent en des périodes différentes dudit signal d'horloge. Comme cela sera montré, puisque la détection de l'état de "chargement en parallèle demandé" et le positionnement du registre à décalage dans son mode de chargement en parallèle ont lieu en des périodes d'horloge différentes, on peut raccourcir la période d'horloge, c'est-à-dire on peut utiliser un rythme d'horloge plus rapide, ce qui accélère le fonctionnement du convertisseur. La description suivante, conçue à titre d'illustration de l'invention, vise à donner une meilleure compréhension de ses caractéristiques et avantages; elle s'appuie sur les dessins annexés, parmi lesquels: la figure 1 est un schéma de circuit du convertisseur; et la figure 2 illustre le fonctionnement du convertisseur. - On se reporte maintenant à la figure 1. Le convertisseur parallèlesérie comprend un registre à décalage 10 contenant 32 bits BO à B31. Le registre est constitué de huit modules de 4 bits, connectés en série. Chacun de ces modules reçoit un signal d'horloge CLK et un signal de commande de mode S. Lorsque S est haut (ce qui est représenté par-le bit "1"), le registre à décalage est positionné dans son mode de décalage, dans lequel son contenu se décale vers le bas (selon la représentation du dessin) d'une unique position de bit à chaque battement du signal d'horloge CLK. Lorsque S est bas (ce qui est représenté par "O"), le registre à décalage est positionné dans son mode de chargement en parallèle, dans lequel il est chargé en parallèle à partir d'un registre d'entrée de donnée de 32 bits,12,au battement suivant du signal d'horloge CLK. Le convertisseur peut fonctionner suivant quatre modes. (a) Dans le premier mode, le registre à décalage 10 est chargé à l'aide d'un mot de donnée de 32 bits tous les quatre battements d'horloge, puis cette donnée est décaLée de huit bits à la fois à partir des sorties des étages B3, B?, Bll, B15, B19, B23, B27 et B31 du registre à décalage. Ceci produit une conversion paral- lèle-série 4: 1. (b) Dans Le deuxième mode, le registre 10 est chargé à l'aide d'un mot de donnée de 32 bits tous Les huit battements d'horloge, et celui-ci est décaLé à raison de quatre bits à la fois depuis les sorties B7, B15, B23 et B31. Ceci produit une conversion 8: 1. (c) Dans le troisième mode, le registre 10 est chargé à l'aide d'un mot de donnée de 32 bits tous les seize battements, et cette donnée est décaLée à raison de deux bits à-la fois depuis les sorties B15 et B31, afin de produire une conversion 16: 1. (d) Dans le quatrième mode, le registre 10 est chargé à l'aide d'un mot de donnée de 32 bits tous Les 32 bat- tements d'horloge, et la donnée est décaLée à raison d'un bit à la fois depuis la sortie B31, ce qui produit une conversion 32: 1. Le convertisseur comporte également quatre bascules de type D 14 à 17, qui sont toutes cadencées par le signal d'horloge CLK. Les bascules 14 et 15 reçoivent toutes deux un signal A à leurs entrées de donnée. La sortie Q de la bascule 15 produit un signal C qui est délivré à l'entrée de donnée de la bascule 16 et, également, via une porte OU 18,à l'entrée de donnée de La bascule 17. La porte OU 18 reçoit également un signal NODATA qui indique qu'il n'y a aucune donnée présente dans le registre d'entrée 12. Les sorties Q des bascules 14 et 15 fournissent des signaux S ser- vant à commander le mode de fonctionnement du registre à décalage 10. La sortie Q de la bascule 17 fournit un signal D qui est délivré à l'entrée de donnée en série du premier étage du registre à décalage. Le signal A est obtenu d'une connexion OU câblée des sorties de quatre portes NI 21 à 24. Ces portes sont connectées à des réseaux OU respectifs, comprenant des connexions OU câblées 25 à 28 et des portes OU 29 à 32, comme cela est représenté. Les portes 21 à 24 reçoivent également des signaux de sélection respec- tifs SEL1 à SEL4 qui déterminent le mode de fonctionnement du con- vertisseur, de la manière suivante. (a) Dans le premier mode, SEL1 est bas et les signaux SEL2 à SEL4 sont hauts. La porte NI 21 est donc validée et les autres portes NI 22 à 24 sont toutes invalidées. Le signal A est donc égal à la fonction NI du signal d'entrée D et du bit BO du registre à décalage. (b) Dans le deuxième mode, SEL2 est bas et les autres signaux de sélection sont hauts. La porte NI 22 est validée, et le signal A est donc égal à la fonction NI du signal d'entrée D et des bits BO-B4. (c) Dans le troisième mode, SEL3 est bas et les autres signaux de sélection sont hauts. La porte NI 23 est validée, et le signal A est donc égal à la fonction NI du signal d'entrée D et des bits BO-B12. (d) Dans le quatrième mode, SEL4 est bas et les autres signaux de sélection sont hauts. La porte NI- 24 est validée, et le signal A est donc égal à la fonction NI du signal d'entrée D et des bits BO-B28. Fonctionnement On va maintenant décrire le fonctionnement du circuit dans le deuxième mode (conversion 8: 1), en relation avec la figure 2. Dans ce mode, la porte NI 22 est sélectionnée de façon que le signal A soit égal à la fonction NI de D, BO-B4. On suppose que, initialement, aucune donnée n'est présente dans le registre d'entrée 12 et que, par conséquent, NODATA est haut. La bascule 17 est donc positionnée, et D est haut. Puisque D est haut, la porte NI 22 est invalidée, si bien que le signal A est bas. Ceci efface les bascules 14 et 15. Ainsi, le signal S est. haut, ce qui place le registre à décalage 10 dans son mode de déca- lage, si bien qu'il y a décalage à chaque battement d'horloge, et qu'une chaîne de "un" est chargée en série dans le registre:à partir du signal D. Lorsque le premier mot de donnée en paraLlèLe apparat g dans Le registre 12 (au battement d'horloge 1 de la figure 2), le signal NODATA devient bas. Ceci efface la bascule 17, si bien que Le signal D devient bas. Une chaîne de zéros est alors chargée en série dans le registre à décalage depuis le signal D. Ceci se poursuit jusqu'à ce que la porte NI 22 détecte l'état entièrement constitué de zéros de D et de BO-B4 (au battement d'horloge 6). Ceci fait passer le signal A au niveau haut, si bien que, au batte- ment d'horloge suivant (battement 7), les bascules 14 et 15 sont positionnées. Ceci rend bas les signaux S, et fait commuter le registre à décalage dans son mode de chargement en parallèle. En même temps, le signal C devient haut. De plus, la sortie Q de la bascule 14 produit un signal K qui est envoyé aux entrées des portes NI 21 à 24, ce qui a pour effet de toutes les invalider. Ceci amène le signal A à devenir bas, empêchant une répétition erronée de ce signal pour un deuxième battement d'horloge. Puisque le registre à décalage est maintenant dans son mode de chargement en parallèle, il est chargé en parallèle à l'aide de la donnée provenant du registre d'entrée 12 lors du battement d'horloge suivant (battement 8), comme indiqué par XXX...X sur la figure 2. En même temps, le signal C positionne la bascule 16 pour indiquer que le registre à décalage a été chargé. Le signal C positionne également la bascule 17, rendant D haut. Puisque le signal A a été amené à l'état bas, les bascules 14 et 15 sont toutes deux effacées. Le signal S redevient donc haut, ce qui remet le registre à décalage dans son mode de décalage. Au battement d'horloge suivant (battement 9), le registre recommence à décaler, si bien que les données se décalent, à raison de quatre bits à la fois, depuis les sorties des bits B7, B15, B23 et B31. En même temps, un "1" suivi d'une chaîne de "0" est décalé dans le registre depuis le signal D. Au battement 14, la porte NI 22 détecte de nouveau l'état entièrement constitué de zéros de D et BO-B4, ce qui rend A haut. Alors, les bascules 14 et 15 sont de nouveau positionnées au batte- ment 15 et le registre à décalage se charge au battement 16, de la même manière que ci-dessus indiqué. Ce cycle se poursuit pour les mots de donnée successifs. On peut voir qu'un nouveau mot de donnée se charge tous les huit battements d'horloge, puis est décalé à raison de quatre bits à la fois, ce qui fournit la-conversion 8: 1 voulue. Le fonctionnement des trois autres modes est analogue et n'a donc pas besoin d'être décrit. Rythme d'horloge Le rythme maximal de l'horloge CLK peut être calculé de la manière suivante. Les chiffres de cadencement indiqués ne sont donnés qu'à titre d'exemple et sont typiques des dispositifs logiques ECL (logique à émetteurs couplés). Pendant la période d'horloge durant laquelle l'état entiè- rement constitué de zéros est détecté (c'est-à-dire la période située entre les battements 6 et 7 sur la figure 2), les retards suivants apparaissent: retard horloge-sortie du registre à décalage 2,1 retard des portes OU 1,1 retard des portes NI 1,1 temps de préparation des bascules 14 et 15 0,7 TOTAL (nanosecondes) 5,0 Lors de la période d'horloge suivante, pendant laquelle le registre à décalage est positionné dans son mode de chargement en parallèle, les retards suivants apparaissent: retard horloge-sortie des bascules 2,1 temps de préparation du registre à décalage 3,0 TOTAL (nanosecondes) 5,1 On peut voir que ce dernier trajet est le trajet critique qui détermine le rythme d'horloge. Le rythme d'horloge maximal admissible est donc 196 MHz, qui correspond à une période d'horloge de 5,1 nanosecondes. A titre de comparaison, on suppose que Le circuit décrit ci-dessus est modifié par reconnexion des portes OU de façon qu'elles détectent l'état entièrement constitué de zéros un pas de plus en aval du registre. Dans ce cas, le signal A indiquerait que le mot de donnée suivant doit être chargé au battement d'horloge suivant, comme dans le circuit convertisseur de la technique anté- rieure, et non plus au battement d'horloge venant après le suivant. Le signal A serait donc utilisé pour commander directement les lignes S de commande de mode du registre à décalage, au lieu d'être gardées en tampon pendant un battement d'horloge des bascules 14 et 15. Dans cette variante, les retards suivants se produiraient dans la période d'horloge pendant laquelle l'état entièrement cons- titué de zéros est détecté: retard horloge-sortie du registre à décalage 2,1 retard des portes OU 1,1 retard des portes NI 1,1 temps de prépartion du registre à décalage 3,0 TOTAL (nanosecondes) 7,3 Ainsi, il faudrait ramener le rythme d'horloge à 137 MHz pour autoriser de tels retards. En d'autres termes, dans cet exemple, on voit que l'invention augmente le rythme d'horloge maximal de 137 à 196 MHz. La raison de ce fonctionnement amélioré est que, selon l'invention, le retard dû à la détection de l'état entièrement constitué de zéro se produit en une période d'horloge différente de celle du retard de préparation du registre à déca- lage. Bien entendu, l'homme de l'art sera en mesure d'imaginer, à partir du dispositif dont la description vient d'être donnée à titre simplement illustratif et nullement -limitatif, diverses variantes et modifications ne sortant pas du cadre de l'invention. REVENDICATIONS 1. Convertisseur parallèle-série comprenant: (a) un registre à décalage (10) dans lequel une donnée (12) est chargée en parallèle, suivant un mode de chargement en parallèle, puis est décalée en série suivant un mode de décalage en mesure avec un signal d'horloge (CLK), et (b) un circuit logique (21-24, 25-28, 29-32) servant à détecter un état indiquant que le chargement en parallèle suivant est demandé et commutant alors le registre à décalage de son mode de décalage dans son mode de chargement en parallèle, caractérisé en ce que le circuit logique détecte ledit état par avance si bien que la détection dudit état et la commutation du registre à décalage dans son mode de chargement en parallèLe ont lieu pendant des périodes différentes dudit signal d'horloge. 2. Convertisseur selon la revendication 1, caractérisé en ce que, lorsque le circuit logique détecte ledit état, il position- ne un indicateur (14-17) lors du battement d'horloge suivant, l'in- dicateur, une fois positionné, produisant un signal de commande (S) qui positionne le registre à décalage dans son mode de chargement en parallèle si bien que, au battement d'horloge venant encore ensuite, il est chargé en parallèle. 3. Convertisseur selon la revendication 2, caractérisé -en ce que l'indicateur, lorsqu'il est positionné, produit un signal visant à invalider ledit circuit logique, empêchant ainsi ledit circuit de produire un signal de sortie,faux pendant la période d'horloge qui fait suite à celle pendant laquelle ledit état est détecté. 4. Convertisseur selon la revendication 1, 2 ou 3, carac- térisé en ce que ledit circuit logique comprend: (a) un moyen permettant de décaler un courant de bitsd'une valeur prédéterminée dans ledit registre à décalage à la suite de chaque chargement en parallèle, et (b) un moyen permettant de détecter qu'un nombre prédéter- miné de bjtsde ladite valeur prédéterminée a été déca- Lé dans Le registre à décaLage. 5. Convertisseur seLon la revendication 4, caractérisé en ce que ledit nombre prédéterminé de bits est n-3, o n est le nombre de battementsd'horloge existant entre des chargements en parallèle successifs du registre à décalage. 6. Convertisseur selon la revendication 4, caractérisé en ce que ledit nombre prédéterminé de bitsest sélectivement variable de manière à permettre d'obtenir des rapports de conversion paral- lèle-série différents.