Logique séquentielle
En théorie des circuits électroniques, la logique séquentielle est un type de logique dont les résultats ne dépendent pas seulement des données actuellement traitées mais aussi des données traitées précédemment. Elle s'oppose à la logique combinatoire, dont les résultats sont fonction et seulement fonction des données actuellement traitées. En d'autres termes, la logique séquentielle utilise la notion de mémoire de stockage (Bascules, registres, etc.) alors que la logique combinatoire n'en a pas.
L'élément de base de la logique séquentielle est la bascule.
Fonctionnements synchrone et asynchrone
Dans un système respectant la logique séquentielle, les tâches peuvent être effectuées de deux manières :
- fonctionnement asynchrone : dans ce mode de fonctionnement, la sortie logique peut changer d'état à tout moment quand une ou plusieurs entrées changent ;
- fonctionnement synchrone : le changement d'état est commandé par un signal d'horloge, les informations évoluent en fonction du temps :
Cependant globalement le système doit fonctionner de manière harmonieuse grâce à la synchronisation globale des éléments.
Applications
La logique séquentielle est utilisée à chaque fois que plusieurs actions doivent être effectuées simultanément. Les applications les plus courantes sont :
- la robotique où les différents mouvements doivent être synchronisés (par exemple pour ne pas perdre l’équilibre) ;
- l'informatique où les différentes actions doivent être cohérentes pour que le résultat soit celui espéré (par exemple : le transfert de données d'un disque dur vers la mémoire centrale, lecture du disque à la volée et écriture en mémoire, synchronisée avec les tâches de l'unité centrale).
Synthèse
Les systèmes séquentiels peuvent être différenciés en fonction de leur mode de fonctionnement qui peut être synchrone ou asynchrone. Dans le mode synchrone, les éléments de mémorisation sont des bascules. Les modifications d'état du système ne peuvent donc intervenir qu'à des instants très précis déterminés par des signaux d'horloge. Par contre, dans le mode asynchrone, la fonction de mémorisation est réalisée par de simples boucles de rétroaction. L'évolution des états ne dépend donc que des modifications intervenant sur les entrées Ei de la machine.