1. Des transistors aux portes logiques
Un transistor peut être utilisé comme un interrupteur électronique commandé. En associant plusieurs transistors, on construit des circuits capables de réaliser des opérations logiques élémentaires.
Ces circuits sont représentés par des portes logiques : NOT, AND, OR, XOR...
Chaque porte réalise une opération simple sur un ou plusieurs bits.
- NOT inverse une valeur logique ;
- AND vaut 1 uniquement si toutes ses entrées valent 1 ;
- OR vaut 1 si au moins une de ses entrées vaut 1 ;
- XOR vaut 1 lorsque ses deux entrées sont différentes.
2. Calculer : les circuits combinatoires
Les portes logiques peuvent être associées pour construire des circuits réalisant des fonctions plus complexes.
Lorsque la sortie dépend uniquement des valeurs présentes à l'entrée, on parle de circuit combinatoire.
Le demi-additionneur
Un demi-additionneur permet d'additionner deux bits A et B.
Le résultat comporte deux informations :
- la somme S ;
- la retenue Cout.
| A | B | S | Cout |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 1 |
À vous
- À partir de la table de vérité, quelle porte logique permet d'obtenir la somme S ?
- Quelle porte logique permet d'obtenir la retenue Cout ?
- Pourquoi peut-on dire que le demi-additionneur constitue déjà un circuit de calcul ?
Vérification
La somme S correspond à la fonction XOR : elle vaut 1 lorsque A et B sont différents.
La retenue Cout correspond à la fonction AND : elle vaut 1 uniquement lorsque A = 1 et B = 1.
3. Mémoriser : les registres
Un circuit de calcul ne suffit pas. Un système numérique doit aussi pouvoir conserver temporairement des informations.
Pour cela, il utilise des circuits capables de mémoriser des bits. En regroupant plusieurs éléments de mémorisation, on obtient un registre.
Selon sa taille, un registre peut contenir plusieurs bits simultanément : 8 bits, 16 bits, 32 bits, 64 bits...
Les registres sont notamment utilisés pour conserver temporairement :
- des données ;
- des résultats intermédiaires ;
- des adresses ;
- des informations de contrôle.
4. Synchroniser : l'horloge
Dans un circuit complexe, de nombreuses opérations doivent être coordonnées.
Une horloge, souvent notée CLK, fournit un signal régulier qui sert de référence temporelle.
Les registres peuvent par exemple mettre à jour leur contenu à un instant précis du signal d'horloge, souvent lors d'un front montant.
La fréquence de l'horloge, exprimée en hertz, indique le nombre de cycles effectués chaque seconde.
5. Faire circuler l'information : les bus
Les différents blocs d'une puce doivent pouvoir échanger des informations.
Pour cela, plusieurs lignes électriques peuvent être regroupées pour former un bus.
Selon leur rôle, on distingue notamment :
- les bus de données, qui transportent les valeurs à traiter ;
- les bus d'adresses, qui indiquent où lire ou écrire une donnée ;
- les bus de contrôle, qui transportent des signaux de commande.
Repère visuel
Sur un schéma électronique, un bus est souvent représenté par un trait plus épais qu'une liaison transportant un seul bit.
Une indication comme 8 bits, 16 bits ou 32 bits précise le nombre de lignes regroupées dans le bus.
6. Une puce, plusieurs fonctions
Les milliards de transistors présents dans une puce ne sont donc pas disposés au hasard. Ils sont organisés en blocs assurant différentes fonctions.
| Bloc | Fonction principale |
|---|---|
| Portes logiques | Réaliser des opérations élémentaires |
| Circuits combinatoires | Effectuer des calculs |
| Registres | Mémoriser temporairement des bits |
| Horloge | Synchroniser les opérations |
| Bus | Faire circuler les informations |