Fonction "FA" en CMOS



Technologie CMOS

En technologie CMOS (Métal Oxyde Semiconducteur complémentaire) on utilise des transistors canal N et des transistors canal P pour réaliser des fonctions logiques. La technologie CMOS est actuellement la technologie dominante du marché. Son principal intérêt par rapport à d'autres technologies comme le NMOS ou le bipolaire est une consommation d'énergie remarquablement faible. En fait les circuits CMOS ont un courant statique (quand ils sont au repos) pratiquement négligeable.

Dans les figures ci-dessous :

  • Un '1' logique est représenté électriquement par la tension d'alimentation Vdd (des valeurs courantes de Vdd sont +5V ou +3,3V ou +2,8V) et est coloré en rouge.
  • Un '0' logique correspond à la tension de masse ou GND est coloré en bleu.
  • Une connexion non reliée est colorée en jaune.

Remarquez que le transistor canal N conduit quand sa grille est au '1' logique, et que le transistor canal P conduit quand sa grille est au '0' logique. Les touches permettent de changer le dessin des transistors.

L'inverseur CMOS dessin inverseur

L'inverseur est la porte CMOS la plus fréquente. Il est formé d'un transistor canal N et un transistor canal P, reliés par leurs drains. La figure ci-dessous en illustre le fonctionnement.

Les couleurs sont toujours le rouge pour '1' logique et le bleu pour '0' logique. Une tension d'entré entre les deux cause un court-circuit en maintenant les deux transistors en conduction. Une telle tension est colorée en vert. Cliquer sur l'entrée "a" pour la faire passer de '0' à court-circuit (vert), puis à '1', puis de nouveau à '0'.



Remarquez que si l'entrée vaut '0' ou '1', un seul transistor conduit.

Délai et consommation de l'inverseur CMOS dessin inverseur

Nous venons de voir que l'inverseur n'a pas de dissipation d'énergie sauf lorsqu'il commute. En effet si l'entrée vaut '0' ou '1' il n'y a pas de chemin de conduction entre l'alimentation Vdd et la masse GND. Dans les conditions normales d'utilisation, le courant de court-circuit (inévitable lorsque l'entrée commute) dure très peu de temps, typiquement quelques picosecondes.

La contribution du courant de charge ou décharge des capacités à la consommation est beaucoup plus importante. Les grilles G des transistors forment des capacités. Ces capacités sont d'ailleurs nécessaires au fonctionnement du transistor à effet de champs. Typiquement la capacité d'entré Cg vaut environ 10 fF. Si l'entrée a de l'inverseur est à reliée à Vdd au temps t1, cette capacité est chargée (charge Q = Cg * Vdd). Si par la suite l'entrée est reliée à GND au temps t2 la capacité se décharge. Cette décharge produit un courant dans la grille de valeur I = dQ/dt = (Cg * Vdd)/(t2-t1).

Bien que le courant de charge/décharge de grille soit faible, le courant total consommé par un circuit intégré complexe peut être important.
Prenons un exemple :

  • Un microprocesseur moderne peut contenir 50 millions de transistors, soit environ dix millions de portes. A chaque cycle environ 1% de ces portes commutent.
  • Les fréquences d'horloge atteignent 500 MHz (temps de cycle 2 ns) avec une tension d'alimentation Vdd = 3.3V.
  • Les fis connectant les portes ont une capacité parasite Cw bien plus grande que la capacité de grille Cg des portes. Chaque fois qu'une équipotentielle commute, toutes les capacités qui lui sont attachées doivent être chargées ou déchargées : Ctotal=Cg+Cw.
  • La capacité d'un fil d'interconnexion atteint typiquement 1 pF

Il est assez difficile d'estimer le courant dû aux courts-circuits, il est en général faible. En revanche le courant résultant de l'activité de commutation est important :
I = (portes actives) * (Ctotal*Vdd) / dt = (1% * 1.000.000) * (1pF * 3.3V) / 2ns = 16 A

Enfin le courant de repos dû aux fuites des transistors (pour une circuiterie conventionnelle) est très faible. Une mémoire statique SRAM de 2K*8 bits en CMOS laisse fuir 1 µA au repos.

La figure ci-dessous illustre le courant, ou déplacement d'électrons  de l'inverseur CMOS . Si la tension d'entrée demeure à '1' ou à '0', soit le transistor canal P ou le transistor canal N est bloqué et il n'y a pas de courant.

  • Si l'entrée a commute, les grilles des deux transistors doivent être chargées ou déchargées. Ceci est illustré par le passage d'un électron  (de charge négative) venant de GND ou bien allant à Vss..
  • Quand l'entrée commute, elle passe par des tensions faisant conduire les deux transistors pendant un temps très court. Le courant de court circuit résultant est illustré par le passage d'un électron de GND à Vss.
  • Enfin la sortie est chargée ou déchargée à travers les transistors. La capacité qui y est attachée stocke deux électrons.

La puissance dissipée par un circuit en logique CMOS conventionnelle est en conséquence directement proportionnelle à la fréquence des commutations, qui est la fréquence de l'horloge.

Simulation électrique de l'inverseur CMOS dessin inverseur

Quand vous cliquez dans le chronogramme ci-dessous, vous tracez la tension de l'entrée "a" de l'inverseur (tracé en rouge sur le chronogramme). La tension de la sortie "y" est alors calculée (tracée en bleu). Le courant traversant le transistor canal N est dessiné en vert et celui du transistor canal P en jaune.
Pour stopper l'applet et figer le dessin, sortez le pointeur de la figure.

Portes de base NOR et NAND

Nous allons étudier maintenant les portes logiques de base en CMOS: successivement un NOR et un NAND à 2 entrées puis un NAND à 3 entrées. Comme pour toutes les portes CMOS, chaque entrée est connectée à la grille d'un transistor canal N et à la grille d'un transistor canal P.

Conventions de couleurs: Ce sont celles de l'Inverseur. Les connexions à Vdd ( '1' logique) sont en rouge, les connexions à GND ( '0' logique) sont en bleu, les connexions simultanément à Vdd et GND sont dessinés en vert. Enfin les connexions ni à Vdd ni à GND (flottantes) sont en jaune. Ces dernières couleurs n'ont pas d'image logique.

  • Cliquer près d'une entrée pour changer sa valeur, notez le changement de l'état des transistors.
  • La ligne de la table de vérité correspondant à cette combinaison de valeurs d'entrées est indiquée en blanc.
  • En cliquant dans la table de vérité, on positionne les entrées aux valeurs de la ligne.
  • Cliquer sur le haut de la table reconstruit progressivement cette table.

Pour simplifier les applets, seuls des '1' et '0' logiques sont permis en entrée. Il n'est donc pas possible d'entrer des tensions provoquant un court-circuit entre Vdd et GND.

La porte NOR à 2 entrées dessin NOR

La porte CMOS à 2 entées est l'une des portes les plus simples pour illustrer le qualificatif complémentaire: les transistors canal P sont connectés en série alors que les transistors canal N sont connectés en parallèle. Les réseaux de transistors canal N et de transistors canal P sont complémentaires.

Remarquez que si aucun des deux transistors canal P en série ne conduit, leur connexion commune est flottante (jaune). Cette valeur non logique ne pose toutefois pas de problème de fonctionnement logique car cette connexion n'est reliée à aucune grille de transistor.

La porte NAND à 2 entrées dessin NAND

Dans le NAND à 2 entrées, les transistors canal P sont reliés en parallèle alors que les transistors canal N sont reliés en série.

La porte NAND à 3 entrées dessin NAND3

La généralisation du schéma d'une porte NOR ou d'une porte NAND à plus de 2 entrées est immédiate. La figure ci-dessous décrit une porte NAND à 3 entrées. Les 3 transistors canal P sont reliés en parallèle et les trois transistors canal N sont reliés en série.


Des portes NAND avec plus de 3 entrées se construisent en suivant le même schéma.
Cependant un grand nombre de transistors en série entraîne un délai de porte insupportablement long.

Les portes complexes dessin AOI32

On appelle porte complexe des portes demandant à la fois des symboles ET et des symboles OU pour leur dessin au niveau logique. Cependant les réseaux de transistors restent raisonnablement simples.


La généralisation à d'autres portes complexes est facile.

Ainsi la plupart des bibliothèques de portes précaractérisées contiennent des AOI (and-or-inverted), OAI (or-and-inverted), etc..

L'additionneur binaire
dessin cellule FA

La cellule "FA" ( Full Adder ) est formée de deux portes complexes connectées. Elle réalise une égalité arithmétique: la somme pondérée des 3 entrées "x", "y" et "z" a toujours la même valeur que la somme pondérée des deux sorties "c" et "s", c'est à dire que " x + y + z = 2*c + s ". On peut aisément vérifier cette propriété grâce à la table de vérité.



Le réseau de transistors canal P est symétrique au réseau de transistors canal N. Un circuit ayant cette propriété est appelé "miroir". Tous les additionneurs ont cette propriété qui découle d'un lien arithmétique entre le complément logique et le complément arithmétique.

Enfin les sorties de ce circuit sont inversées. Cela découle d'une propriété de la technologie CMOS qui ne permet de faire facilement que les fonctions logiques non croissantes.