Unité de contrôle

Unité de contrôle

Dans un système logique, en particulier dans un processeur, l’unité de contrôle (de commande) ou séquenceur commande et contrôle le fonctionnement du système, notamment du chemin de données. Une unité de contrôle est un circuit logique séquentiel qui réalise un automate fini, plus précisément une machine de Moore ou de Mealy, qui génère des signaux de contrôle pour piloter les éléments du chemin de données.

Séquenceur câblé

Dans un séquenceur câblé, les signaux de contrôle sont produits par un circuit logique ad hoc qui réalise l'automate. Deux méthodes sont possibles :

  • on peut chercher à réduire le nombre de composants, en particulier le nombre de bascules ; si l'automate compte n états, on peut ainsi concevoir un circuit à log2 n bascules ;
  • on peut systématiquement attribuer une bascule à chaque état de l'automate ; cela augmente le nombre de bascules, mais simplifie la conception et la mise au point du circuit.

En pratique, les séquenceurs des processeurs réels sont si complexes qu'aucune méthode de conception d'un séquenceur câblé ne donne de résultat satisfaisant, à un coût acceptable.

Les séquenceurs câblés ont été mis en œuvre sur les premiers ordinateurs, en utilisant des composants discrets ou même des pièces mécaniques. Les processeurs modernes utilisent des séquenceurs microprogrammés (voir ci-dessous).

Les programmes des machines à laver et les types de points des machines à coudre ont longtemps été réalisés par des séquenceurs câblés. Dans les machines modernes, ils sont généralement réalisés en logiciel. Ce logiciel fonctionne sur un microprocesseur ou un microcontrôleur.

Séquenceur microprogrammé

Article détaillé : Microprogrammation.

Un séquenceur microprogrammé utilise un programme appelé microcode, contenu dans une mémoire morte (ROM). Un tel séquenceur est plus simple à concevoir et à mettre à jour, mais moins rapide.