Brevet FR2905043A1 — publié le 20080222

La présente invention concerne un circuit bistable et, en particulier, un circuit bistable pouvant intervenir dans la réalisation d'une bascule latch, d'une bascule flip flop, etc. Une bascule flip-flop est un composant couramment utilisé en microélectronique pour stocker une valeur binaire ou état . Une manière courante de la réaliser est d'assembler deux bascules latch, appelées respectivement bascule maître et bascule esclave. Une bascule latch est typiquement un circuit bistable, dont la structure connue en soit comprend deux inverseurs connectés tête-bêche. L'un ou l'autre ou les deux de ces inverseurs peuvent être des inverseurs de type trois états. La bascule flip-flop possède deux périodes distinctes . - une période transparente durant une courte fenêtre temporelle autour d'un front du signal d'horloge, au cours de laquelle une donnée d'entrée peut être recopiée au niveau de la sortie de la flip- flop, et - une période opaque ou de mémorisation durant le reste du temps de la période, dans laquelle la bascule maintient l'état de sa sortie quelle que soit la donnée d'entrée. Durant cette période, la sortie de la bascule fournit donc la dernière information qui l'a traversée lors de son précédent état transparent. Dans le cas d'une bascule flip-flop déclenchée sur un front montant d'horloge, la première bascule latch 2905043 2 Dans le cas d'une bascule flip-flop déclenchée sur un front montant d'horloge, la première bascule latch (maître) est transparente lorsque le signal d'horloge est à l'état bas (0 logique) et opaque lorsque le 5 signal d'horloge est à l'état haut (1 logique). La seconde bascule latch (esclave) est transparente lorsque le signal d'horloge est à l'état haut et opaque lorsque le signal d'horloge est à l'état bas. Ainsi, la bascule résultante est transparente durant le front 10 montant du signal d'horloge. Un exemple de ce type de bascule, basée sur une architecture dite Hybrid Latch Flip Flop (HLFF) dans la littérature anglo-saxonne, est présentée dans l'article flow-Through latch and edge triggered Flip- 15 Flop hybrid elements H.Partovi et al, IEEE 1996 International Solid state Circuit conference. L'invention s'applique de préférence mais non limitativement aux bascules présentant une telle architecture HLFF et porte plus particulièrement sur la 20 structure du circuit bistable formant la partie maître de la bascule. La figure 1 illustre un mode de réalisation selon l'état de la technique de la bascule maître d'une bascule flip-flop de type HLFF. Le fonctionnement de 25 cette bascule est basé sur l'utilisation d'un signal d'horloge retardé. A cet effet, la structure bistable de la bascule maître intègre une chaine de retard à base d'inverseurs CH. La chaîne de retard CH comprend trois inverseurs I1, I2 et I3 connectés en série. L'inverseur Il reçoit en entrée le signal d'horloge CLK, de sorte que le signal d'horloge inverse CLK/ 2905043 3 retardé trois fois à travers les trois inverseurs Il, I2 et I3 est généré en sortie de la chaîne d'inverseurs. Dans le détail, un premier inverseur du circuit 5 bistable de la figure 1 est constitué d'un transistor Pl de type pMos, dont une source est connectée à une source d'alimentation Vdd du circuit et dont une grille est connectée à l'entrée d'horloge CLK du circuit, et de trois transistors de type nMos, respectivement MN1, 10 MN2 et MN3, connectés en série entre le drain du transistor Pl et une masse du circuit. La grille du transistor MN1 est commandée par le signal d'horloge inverse retardé CLK/ délivré en sortie de la chaîne de retard CH. La grille du transistor MN2 est commandée 15 par une donnée d'entrée Data et la grille du transistor MN3 est commandée par le signal d'horloge CLK. Le point commun M des transistors P1 et MN1 est connecté à l'entrée d'un second inverseur du bistable fournissant la sortie Out et par l'intermédiaire duquel le premier 20 inverseur est rebouclé sur son entrée. Le second inverseur est formé de trois transistors Mos P2, N2 et N3, connectés en série entre la tension d'alimentation Vdd et une masse du circuit. Dans le détail, le transistor P2 de type pMos, a sa source 25 connectée à la tension d'alimentation Vdd du circuit, et son drain connecté au drain du transistor N2 de type nMos pour fournir la sortie Out, les grilles des transistors P2 et N2 étant connectées ensemble au nœud intermédiaire M du bistable. La source du transistor N2 30 est connectée au drain du transistor. N3 de type nMos, dont la source est connectée à la masse du circuit et 2905043 4 dont la grille est connectée à l'entrée d'horloge CLK du circuit. Le fonctionnement du circuit de la figure 1 est le suivant. Lorsque le signal d'horloge CLK est à l'état 5 bas, le nœud M est préchargé à Vdd par l'intermédiaire du transistor Pl rendu passant, le chemin vers la masse étant fermé par l'intermédiaire du transistor MN3, qui est à l'état bloqué, bien que le transistor MN1 soit quant à lui à l'état passant du fait du signal 10 d'horloge inverse CLK/ à l'état haut appliqué sur sa grille. Lors d'un prochain front d'horloge, le signal CLK passe à l'état haut. Le transistor MN3 est alors rendu passant. La chaîne de retard à base d'inverseurs CH 15 fabriquant un certain retard, le signal d'horloge inverse CLK/ appliqué sur la grille de MN1 est donc toujours maintenu à l'état haut pendant la durée de ce retard, laissant le transistor MN1 passant. Pendant le retard fabriqué par la chaîne de retard CH, on dispose 20 donc d'une fenêtre temporelle pendant laquelle les transistors MN1 et MN3 sont passants simultanément. Au bout de ce retard, le signal d'horloge retardé CLK/ tombera à l'état bas, commandant alors la fermeture du chemin constitué par la pile des transistors nMos MN1, 25 MN2 et MN3. Ainsi, durant la courte fenêtre temporelle disponible autour du front d'horloge suivant la phase de précharge pendant laquelle les transistors MN1 et MN3 sont passants simultanément: 30 - si le signal de donnée d'entrée Data est à l'état bas, le chemin de la pile de transistors nMos 2905043 5 MN1 à MN3 est bloqué et le noeud intermédiaire M est maintenu à l'état haut à sa valeur de précharge. Un 0 logique est alors transmis au niveau de la sortie Out, puisque les deux nMos N2 et N3 sont passants ; 5 - si le signal de donnée d'entrée Data est au contraire à l'état haut, MN2 est rendu passant ce qui ouvre le chemin de la pile de transistors MN1 à MN3 et le noeud intermédiaire M est déchargé (tiré vers la masse) par l'intermédiaire des trois transistors MN1 à 10 MN3. Un 1 logique est alors transmis au niveau de la sortie Out, le transistor N2 se retrouvant bloqué tandis que P2 est passant. La flip-flop est donc transparente pendant la durée du retard créé par la chaîne de retard, 15 définissant une fenêtre temporelle pendant laquelle à la fois l'horloge et l'horloge retardée sont au niveau haut, permettant de recopier la donnée d'entrée vers la sortie. Cette structure est avantageuse de par sa 20 rapidité de basculement grâce à la précharge du noeud M, mais elle est limitée par la difficulté à obtenir la fenêtre temporelle, définissant la période de transparence de la bascule, qui soit d'une durée suffisante pour permettre la décharge du noeud M. 25 En effet, on peut se retrouver dans une situation où la pile de transistors MN1, MN2 et MN3 formant les moyens de décharge du noeud M sont plutôt lents tandis que les inverseurs Il, I2 et I3 sont plutôt rapides. Une configuration de ce type peut conduire à une 30 situation défavorable, où le temps nécessaire pour décharger le noeud M à travers la pile MN1/MN2/MN3 est 2905043 6 supérieur à la durée de la fenêtre temporelle offerte par la chaîne d'inverseurs Il, I2, I3, durant laquelle le transistor MN1 de la pile de décharge est maintenu passant. Plus précisément, la chaîne d'inverseurs étant 5 plutôt rapide, lors d'un front montant d'horloge, elle ne permet pas de fabriquer un retard suffisamment long, ce qui fait que le signal d'horloge retardé tombe trop rapidement pour laisser à la pile des nMos MN1, MN2 et MN3 le temps de décharger le noeud M quand le signal de 10 donnée Data est à l'état haut. Ce fonctionnement défectueux de la bascule s'explique par des défauts d'appariement des transistors Mos utilisés d'une part, dans la chaîne de retard CH à base d'inverseurs et, d'autre part, dans la 15 pile de nMos MN1, MN2 et MN3, se produisant lors de leur fabrication. Ces défauts sont appelés mismatch dans la littérature anglo-saxonne. Ainsi, des problèmes de répétabilité dans le procédé de fabrication des transistors peuvent faire que des transistors Mos 20 présentent des caractéristiques qui divergent par rapport à celles prévues, ce qui fausse les performances attendues au niveau du courant susceptible d'être tiré par les Mos respectivement de la chaine d'inverseurs CH et de la pile MN1/MN2/MN3, pouvant 25 alors conduire au fonctionnement défectueux quant à la dynamique de l'ensemble comme expliqué plus haut. Une façon de s'affranchir de ces effets indésirables liés aux défauts d'appariement est de prévoir que le retard fabriqué par la chaîne de retard 30 soit de toute façon plus long que le temps de décharge du noeud M le plus long impliqué par la pile de 2905043 7 transistors MN1/MN2/MN3. Une façon de retarder la chaîne d'inverseurs CH en vue de prévoir ce pire cas est de jouer sur le rapport W/L (W étant la largeur et L la longueur) des transistors de la chaîne 5 d'inverseurs CH pour diminuer la quantité de courant passé par chacun d'eux. Or, un tel choix visant à tenir compte dans la chaîne de retard de tous les cas de lenteur possible de la pile de décharge MN1/MN2/MN3, bien qu'assurant alors 10 au nœud M d'avoir bien le temps nécessaire pour se décharger au travers de la pile MN1/MN2/MN3, dégrade les performances de la bascule. En effet, en augmentant ainsi la durée de la fenêtre temporelle définie par la chaîne de retard, on augmente la durée de la fenêtre de 15 transparence de la bascule et donc à la fois le temps d'établissement et le temps de maintient de la donnée d'entrée, ce qui est pénalisant pour l'utilisation de la bascule, puisqu'impliquant que la donnée d'entrée soit maintenue un temps plus long, fonction du temps 20 pendant lequel la chaîne d'inverseurs CH n'a pas encore coupé le transistor MN1. Ce choix de jouer sur le rapport W/L des transistors de la chaîne d'inverseurs par rapport au rapport W/L des transistors de la pile MN1/MN2/MN3, a 25 en outre l'inconvénient qu'il ne peut être assumé dans tous les process de fabrication de transistors. La présente invention vise donc à résoudre un ou plusieurs de ces inconvénients en permettant d'aligner au mieux le retard fabriqué par la chaîne d'inverseurs 30 sur le temps nécessaire au nœud M de la bascule pour se décharger à travers la pile de nMos, de façon à obtenir 2905043 8 un circuit bistable mieux adapté aux variations éventuelles de process de fabrication des transistors de la structure. L'invention porte ainsi sur un circuit bistable à 5 basculement d'état sur les fronts d'un signal d'horloge, comprenant des moyens de précharge d'un nœud intermédiaire du circuit, des moyens de retard définissant une fenêtre temporelle autour d'un front dudit signal d'horloge, des moyens de décharge du nœud 10 intermédiaire commandés par au moins une donnée d'entrée permettant de décharger le nœud intermédiaire pendant la durée de ladite fenêtre temporelle, caractérisé en ce que les moyens de retard comprennent des moyens pour ajuster temporellement la durée de la 15 fenêtre temporelle au temps de décharge du nœud intermédiaire à travers lesdits moyens de décharge. Selon un mode de réalisation, les moyens de retard comprenant une chaîne d'inverseurs et les moyens de décharge comprenant une pile de transistors nMos 20 connectée en série entre les moyens de précharge et une masse du circuit, les moyens d'ajustement temporel des moyens de retard sont intégrés au niveau d'un inverseur modifié de la chaîne d'inverseurs, sous la forme d'une pile de transistors nMos répliquant la pile de 25 transistors des moyens de décharge, connectée en série avec un transistor pMos dudit inverseur. Avantageusement, les moyens de décharge du nœud intermédiaire comprennent en outre un étage de combinaison logique entre au moins deux données 30 d'entrée du circuit. 2905043 9 De préférence, l'étage de combinaison logique comprend un réseau de transistors agencés au sein de la pile de transistors des moyens de décharge de manière à réaliser une fonction logique prédéterminée entre les 5 données d'entrée, lesdits transistors constituant l'étage de combinaison logique étant commandés chacun respectivement par une des données d'entrée. Avantageusement, la pile de transistors de l'inverseur modifié de la chaîne de retard comprend un 10 nombre d'étages identique à celui de la pile de transistors des moyens de décharge du noeud intermédiaire. Selon une variante, la pile de transistors de l'inverseur modifié de la chaîne de retard comprend un 15 nombre d'étages inférieur à celui de la pile de transistors des moyens de décharge du noeud intermédiaire. L'invention concerne encore une bascule de type latch, comprenant un circuit bistable selon 20 l'invention. L'invention concerne enfin une bascule de type flip-flop, comprenant une bascule maître et une bascule esclave, dans laquelle la bascule maître est une bascule selon l'invention telle que décrite ci-dessus. 25 D'autres caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture de la description suivante donnée à titre d'exemple illustratif et non limitatif et faite en référence aux figures annexées dans lesquelles : 2905043 10 -la figure 1 illustre la structure selon l'état de la technique de la partie maître d'une bascule flipflop de type HLFF et a déjà été décrite ; -la figure 2 illustre la structure de la figure 1 5 améliorée selon un mode de réalisation de l'invention, et -la figure 3 illustre une variante de réalisation de l'invention. En partant de la structure bistable de la figure 10 1, le principe de l'invention consiste à recopier les performances temporelles de la pile de décharge MN1/MN2/MN3 dans la chaîne d'inverseurs CH fabriquant le retard, de sorte que si les transistors de la pile de décharge sont lents, la chaîne de retard soit lente 15 et, inversement, si ils sont rapides, que la chaîne de retard soit rapide. La figure 2 illustre ce principe où les éléments déjà décrits en référence à la figure 1 portent les mêmes références. 20 Dans l'exemple de la figure 2, l'inverseur Il de la chaîne de retard est modifié de manière à intégrer les moyens spécifiques selon l'invention permettant à la chaîne de retard CH d'ajuster temporellement son retard au temps de décharge nécessaire pour décharger 25 le noeud intermédiaire M au travers des transistors MN1, MN2 et MN3 de la pile de décharge. Un inverseur classique comprend un transistor pMos et un transistor nMos connectés en série entre l'alimentation et la masse et commandés sur leur grille 30 par le même signal. L'inverseur Il modifié selon l'exemple comprend à la place d'un unique nMos, une 2905043 11 pile de transistors nMos, respectivement MND1, MND2 et MND3, connectés en série entre un transistor pMos P3 et la masse, tous commandés par le même signal sur leur grille, qui ont pour rôle de répliquer la structure des 5 transistors nMos MN1, MN2 et MN3 de la pile de décharge au niveau de la structure de l'inverseur Il. Ainsi, par rapport à un inverseur classique utilisé dans la chaîne de retard, l'inverseur Il modifié va permettre de copier de manière plus fidèle 10 le comportement des transistors de la pile de décharge lorsque le noeud M est déchargé. En effet, lorsqu'on a un front d'horloge, le signal d'horloge passe à 1, et la capacité formée entre Il et I2 est déchargée à travers MND1, MND2 et MND3 pour fabriquer un 0, lequel 15 va se propager à travers I2 pour faire un 1, puis à travers I3 pour faire un 0 qui coupe finalement le transistor MN1. L'objectif étant que la décharge à travers les transistors MND1, MND2 et MND3 de l'inverseur Il réplique la décharge du noeud M à travers 20 les transistors MN1, MN2 et MN3 de la pile de décharge. Le temps de propagation à travers les inverseurs classiques I2 et I3 forment alors normalement la marge dont on dispose au sein de la fenêtre temporelle définie par la chaîne de retard pour décharger le noeud 25 M. Selon une variante de l'exemple décrit à la figure 2, l'inverseur de la chaîne de retard modifié selon les principes de l'invention pourrait tout aussi bien être l'inverseur situé en deuxième (I2) ou troisième 30 position (I3) dans la chaîne de retard. 2905043 12 Selon le mode de réalisation préféré décrit en référence à la figure 2, la structure de la pile de décharge est exactement répliquée au sein de l'inverseur modifié Ii, à savoir que la pile de 5 transistors nMos MND1 à MND3 de l'inverseur modifié Il de la chaîne de retard comprend un nombre d'étages, en l'occurrence trois, identique à celui de la pile de transistors nMos MN1 à MN3 des moyens de décharge du nœud M, la taille des transistors respectivement de la 10 pile de décharge et de la pile de l'inverseur modifié étant en outre idéalement identique. Toutefois, cette configuration idéale est coûteuse à la fois en consommation et en espace occupé sur le circuit, bien qu'elle permette de s'assurer que le 15 temps de décharge du nœud intermédiaire M via la pile de décharge MN1/MN2/MN3 est exactement répliqué à travers la pile MND1/MND2/MND3 de l'inverseur modifié de la chaîne de retard. Aussi, la taille des transistors MND1/MND2/MND3 de 20 l'inverseur modifié de la chaîne de retard peut avantageusement être choisie inférieure à celle des transistors MN1/MN2/MN3 de la pile de décharge du nœud intermédiaire, par exemple d'un facteur 5, de manière à trouver un compromis entre un suivi et une prise en 25 compte relativement fidèle du temps de décharge de nœud intermédiaire au sein de la chaîne de retard et les contraintes de consommation et de place du circuit. Une solution alternative pour gagner de la place serait également de retirer un transistor nMos, à 30 savoir le transistor MND2 selon l'exemple, de l'inverseur modifié dans la chaîne de retard. Cette 2905043 13 solution se fait toutefois au détriment d'une bonne adaptation temporelle de la chaîne de retard au temps de décharge du noeud intermédiaire à travers la pile de décharge. 5 Enfin, un mode de réalisation représenté à la figure 3 consiste à intégrer un étage de combinaison logique COMB au sein des moyens de décharge du noeud intermédiaire M. L'étage de combinaison logique COMB selon l'exemple de la figure 3 comprend deux 10 transistors nMos, MN2 et MN4, connectés en série au sein de la pile de décharge entre les transistors MN1 et MN3, commandés respectivement par les données d'entrée Datal et Data2, et réalise de cette manière la fonction ET logique entre les deux données d'entrée 15 Data 1 et Data 2. Le noeud intermédiaire M est alors déchargé par l'intermédiaire des moyens de décharge lorsque à la fois la donnée Data_1 vaut 1 et la donnée Data 2 vaut 1 et est donc le résultat de l'opération logique NON (Data _1 ET Data_2), ce qui revient à 20 intégrer une porte NON ET dans le bistable selon l'exemple. Le fait d'embarquer une fonction logique au sein même du circuit bistable permet avantageusement de gagner le délai engendré par la porte logique qui 25 serait sinon prévue en amont du bistable pour réaliser la fonction logique en question. En réalité on gagne un peu moins que ce délai, car la fusion de la porte logique avec le circuit bistable nécessite d'ajouter un Mos supplémentaire, MN4 selon l'exemple, dans la pile 30 de décharge pour réaliser l'étage de combinaison logique correspondant. 2905043 14 Dans ce mode de réalisation du bistable avec logique embarquée via un réseau de transistors nMos intégré au sein des moyens de décharge entre les transistors MN1 et MN3, pour réaliser une fonction 5 logique déterminée entre des données d'entrée Data_1 à Data n du circuit, la chaîne de retard CH modifiée selon l'invention réplique alors de la même manière qu'expliqué précédemment la pile de décharge, y compris donc le réseau de transistors de la pile de décharge 10 réalisant la fonction logique. Ainsi, selon l'exemple de la figure 3, l'inverseur modifié Il comprend 4 étages de transistors, respectivement MND1, MND2, MND3 et MND4, de la même manière que la pile de décharge modifiée pour y 15 intégrer de la logique comprend les 4 étages de transistors, respectivement MN1, MN2, MN3 et MN4. De cette manière, la fenêtre temporelle définie par la chaîne de retard s'adapte au mieux au temps de décharge du nœud M via la pile de décharge avec logique 20 embarquée. REVENDICATIONS 1. Circuit bistable à basculement d'état sur les fronts d'un signal d'horloge (CLK), comprenant des moyens de précharge (Pl) d'un nœud intermédiaire (M) du circuit, des moyens de retard (CH) définissant une fenêtre temporelle autour d'un front dudit signal d'horloge, des moyens de décharge (MN1/MN2/MN3) du nœud intermédiaire (M) commandés par au moins une donnée d'entrée (Data) permettant de décharger le nœud intermédiaire (M) pendant la durée de ladite fenêtre temporelle, caractérisé en ce que les moyens de retard (CH) comprennent des moyens (MND1/MND2/MND3) pour ajuster temporellement la durée de la fenêtre temporelle au temps de décharge du nœud intermédiaire (M) à travers lesdits moyens de décharge. 2. Circuit selon la revendication 1, caractérisé en ce que, les moyens de retard (CH) comprenant une chaîne d'inverseurs (Il, I2, I3) et les moyens de décharge comprenant une pile de transistors nMos (MN1/MN2/MN3) connectée en série entre les moyens de précharge (Pi) et une masse du circuit, les moyens d'ajustement temporel des moyens de retard sont intégrés au niveau d'un inverseur (Il) modifié de la chaîne d'inverseurs, sous la forme d'une pile de transistors nMos (MND1/MND2/MND3) répliquant la pile de transistors (MN1/MN2/MN3) des moyens de décharge, connectée en série avec un transistor pMos dudit inverseur (Ii). 2905043 16 3. Circuit selon la revendication 1 ou 2, caractérisé en ce que les moyens de décharge du nœud intermédiaire (M) comprennent en outre un étage de combinaison logique (COMB) entre au moins deux données 5 d'entrée du circuit (Data 1, Data 2). 4. Circuit selon les revendications 2 et 3, caractérisé en ce que l'étage de combinaison logique comprend un réseau de transistors (MN2, MN4) agencés au 10 sein de la pile de transistors des moyens de décharge de manière à réaliser une fonction logique prédéterminée entre les données d'entrée, lesdits transistors constituant l'étage de combinaison logique étant commandés chacun respectivement par une des 15 données d'entrée (Datai, Data 2). 5. Circuit selon l'une quelconque des revendications 2 à 4, caractérisé en ce que la pile de transistors (MND1/MND2/MND3) de l'inverseur modifié 20 (I1) de la chaîne de retard comprend un nombre d'étages identique à celui de la pile de transistors (MN1/MN2/MN3) des moyens de décharge du nœud intermédiaire (M). 25 6. Circuit selon l'une quelconque des revendications 2 à 4, caractérisé en ce que la pile de transistors de l'inverseur modifié de la chaîne de retard comprend un nombre d'étages inférieur à celui de la pile de transistors des moyens de décharge du nœud 30 intermédiaire. 5 2905043 17 7. Bascule de type latch, comprenant un circuit bistable selon l'une quelconque des revendications 1 à 6. 8. Bascule de type flip-flop, comprenant une bascule maître et une bascule esclave, caractérisé en ce que la bascule maître est réalisée selon la revendication 7. 10