Les circuits électroniques numériques sont construits à l’aide de composants qui réalisent des fonctions logiques. Ces composants sont appelés des portes logiques. Chaque porte logique est elle-même construite à l’aide de composants plus simples.
Le composant de base de l’électronique numérique est le transistor. Dans ce document, nous ne ferons pas l’inventaire de tous les types de transistors et nous ne détaillerons pas leur fonctionnement. Les lecteurs curieux sont invités à approfondir le sujet par eux-mêmes. Nous nous intéresserons uniquement à la technologie CMOS (Complementary Metal Oxide Semiconductor) car elle est aujourd’hui la plus répandue et la plus facile à comprendre.
Pour construire un circuit logique en technologie CMOS, nous utilisons les éléments illustrés par la figure ci-dessous :
Nous avons représenté les transistors comme des pièces de puzzle afin de montrer les connexions qui sont typiquement réalisables :
En pratique, il existe d’autres possibilités qui ne seront pas présentées ici.
Par convention, une tension proche de représentera le bit 1 ; une tension proche de représentera le bit 0. On les désignera également par les termes état haut et état bas.
Les transistors sont utilisés en régime de commutation, c’est-à-dire que chaque transistor est placé dans des conditions où il se comporte comme un interrupteur ouvert ou fermé entre son drain et sa source. L’ouverture et la fermeture de l’interrupteur sont commandées par la tension appliquée à sa grille.
Sur la figure ci-dessous, nous avons représenté le fonctionnement d’un transistor NMOS (à gauche) et d’un transistor PMOS (à droite). Nous avons mis en vis-à-vis les schémas électriques des circuits et les modèles correspondants à base d’interrupteurs.
On observe que les deux types de transistors ont des fonctionnements complémentaires.
D’un point de vue logique, nous avons résumé ci-dessous le comportement des deux types de transistors sous la forme d’une table de vérité :
G | D (NMOS) | D (PMOS) |
---|---|---|
0 | Z | 1 |
1 | 0 | Z |
L’état Z est appelé état haute impédance. Il correspond aux situations où le drain d’un transistor n’est relié ni à , ni à . Il n’est ni à l’état haut, ni à l’état bas.
L’état haute impédance est exploité dans des circuits logiques dits à trois états (tri-state) qui seront étudiés ultérieurement.
Le circuit logique le plus simple peut être réalisé à l’aide de deux transistors complémentaires reliés de la manière indiquée ci-dessous :
Le schéma équivalent à base d’interrupteurs montre que les deux transistors fonctionnent de façon alternée : l’un est toujours fermé quand l’autre est ouvert. Nous pouvons construire la table de vérité de ce circuit :
0 | 1 |
1 | 0 |
Ce circuit est appelé inverseur, porte inverseuse ou porte NON (en anglais inverter ou NOT gate). Il réalise la fonction logique NON de l’algèbre de Boole. est l’entrée de cette porte, et est la sortie.
Avec quatre transistors, nous pouvons réaliser le circuit ci-dessous, sur lequel les transistors PMOS sont placés en série et les transistors NMOS en parallèle.
Pour que soit à l’état haut, il faut que les transistors PMOS soient tous les deux passants, c’est-à-dire que et soient tous les deux à l’état bas. Nous reconnaissons la fonction NON-OU dont nous rappelons ci-dessous la table de vérité.
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
Ce circuit s’appelle une porte NON-OU (en anglais NOR gate). et sont les entrées de cette porte, et est la sortie.
Sur schéma ci-dessous, ce sont les transistors NMOS qui sont placés en série et les transistors PMOS en parallèle.
Pour que la sortie soit à l’état haut, il suffit que l’un des transistors PMOS soit passant, c’est-à-dire que ou soit à l’état bas. Ce circuit s’appelle une porte NON-ET (en anglais NAND gate).
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Les deux circuits précédents montrent un résultat inattendu. Dans l’algèbre de Boole, nous considérions les fonctions ET et OU comme des fonctions de base. Les fonctions NON-ET et NON-OU étaient présentées comme des fonctions composées.
En électronique, au contraire, les circuits à deux entrées les plus simples sont les portes NON-ET et NON-OU. Pour réaliser une porte ET, on utilisera une porte NON-ET dont la sortie sera inversée grâce à une porte NON. Pour réaliser une porte OU, on utilisera une porte NON-OU dont la sortie sera inversée grâce à une porte NON.
Les schémas à base de transistors nous ont permis de comprendre comment construire des portes logiques. À partir de maintenant, ce sont les portes logiques qui serviront de briques de base pour la construction de circuits encore plus complexes. Pour cette raison, nous allons leur associer des symboles et nous ne chercherons plus à détailler leur constitution interne.
Il existe deux normes couramment utilisées pour symboliser les portes logiques. Nous utiliserons de préférence les symboles distinctifs, également qualifiés de symboles américains (figure ci-dessous) plutôt que ceux de forme rectangulaire. Vous noterez la présence d’un petit cercle en sortie des symboles qui représentent les fonctions inversées (NON, NON-OU, NON-ET).
Nous avons indiqué par des flèches le sens de circulation des informations. Ces flèches ne sont normalement pas utiles car la forme des symboles suggère sans ambiguïté où sont les entrées et les sorties des portes logiques.
Par exemple, l’expression pourra être réalisée par le circuit suivant :
Il est également possible de placer un petit cercle devant l’entrée d’une porte au lieu de dessiner le symbole complet d’un inverseur. La figure ci-dessous propose différentes représentations des fonctions NON-ET et NON-OU en appliquant les lois de De Morgan.
Dans nos explications précédentes nous avons assimilé les bits 0 et 1 à des tensions électriques proches de et . En effet, les transistors ne se comportent pas comme des interrupteurs idéaux. Par exemple, considérons un transistor PMOS dont la source est directement reliée à . Au moment où il devient passant, la tension de son drain ne sera pas exactement égale à mais légèrement inférieure. Si ce drain, à son tour, est relié à la grille d’un autre transistor, il faudra que leur tension reste assez élevée pour être reconnue comme un 1 logique.
Pour qu’un circuit logique fonctionne correctement, il est nécessaire de préciser les niveaux de tension qui seront reconnus sans ambiguïté comme des valeurs logiques. Il existe des conventions pour documenter ces niveaux de tension. La figure ci-dessous représente une porte ET (à gauche) dont la sortie est reliée à une entrée d’une porte OU (à droite).
En sortie de la porte ET :
En entrée de la porte OU :
Deux portes logiques sont compatibles si les tensions produites par la première sont toujours correctement reconnues par la seconde, c’est-à-dire si les conditions suivantes sont respectées :
La figure ci-dessous illustre une situation où ces conditions n’ont pas été respectées. Si la tension de sortie de la porte ET se trouve dans l’un des intervalles marqués d’un point d’exclamation, la comportement de la porte OU est imprévisible.
Un circuit logique en technologie CMOS est constitué de transistors qui se comportent comme des interrupteurs commandés.
Une porte logique est un circuit qui réalise une fonction logique simple. Avec deux transistors, nous pouvons construire une porte non ; avec quatre transistors, nous pouvons construire les portes non-et (NAND) et non-ou (NOR).
Pour connecter ensemble des circuits logiques, nous devons vérifier la compatibilité des niveaux de tension qu’ils acceptent à leurs entrées et qu’il produisent à leurs sorties.