« Fonctionnement d'un ordinateur/Les circuits compteurs et décompteurs » : différence entre les versions
Contenu supprimé Contenu ajouté
Ligne 69 :
[[File:AsyncCounter Alternativ.svg|centre|vignette|upright=3|Compteur asynchrone de 3 bits, basé sur des bascules T simplifiées activées sur front montant.]]
====L'incrémenteur/décrémenteur asynchrone
Un décrémenteur est strictement identique à un incrémenteur auquel on a inversé tous les bits. On peut donc réutiliser le compteur du dessus, à part que les sorties du compteurs sont reliées aux sorties Q des bascules.▼
Le circuit précédent a cependant un problème : il ne peut pas être réinitialisé. Pour que cela soit possible, il faut que les bascules du compteur aient une entrée de réinitialisation ''Reset'', qui les force à se remettre à zéro, alors on peut l'utiliser. Il suffit d'ajouter une entrée ''Reset'' au compteur, et de la connecter aux entrées ''Reset'' des bascules. Ce faisant, le compteur peut être remis à zéro sur simple demande.▼
[[File:AsyncCounter
Il est possible de fusionner un incrémenteur et un décrémenteur asynchrone, de manière à créer un circuit qui puisse soit incrémenter, soit décrémenter le compteur. Le choix de l'opération est réalisé par un bit d'entrée, qui vaut 1 pour une incrémentation et 0 pour une décrémentation. L'idée est que les entrées des bascules sont combinées avec ce bit, pour donner les entrées compatibles avec l'opération demandée.▼
Cette réinitialisation est utile pour créer des compteurs modulo. Il suffit de créer un circuit qui vérifie si la valeur maximale du comparateur est atteinte et qui met à 1 l'entrée ''Reset'' si c'est le cas. Un exemple est illustré ci-dessous.▼
[[File:AsyncCounter
====
▲
▲Un décrémenteur est strictement identique à un incrémenteur auquel on a inversé tous les bits. On peut donc réutiliser le compteur du dessus, à part que les sorties du compteurs sont reliées aux sorties Q des bascules.
[[File:AsyncCounter
▲Cette réinitialisation est utile pour créer des compteurs modulo. Il suffit de créer un circuit qui vérifie si la valeur maximale du comparateur est atteinte et qui met à 1 l'entrée ''Reset'' si c'est le cas. Un exemple est illustré ci-dessous.
▲Il est possible de fusionner un incrémenteur et un décrémenteur asynchrone, de manière à créer un circuit qui puisse soit incrémenter, soit décrémenter le compteur. Le choix de l'opération est réalisé par un bit d'entrée, qui vaut 1 pour une incrémentation et 0 pour une décrémentation. L'idée est que les entrées des bascules sont combinées avec ce bit, pour donner les entrées compatibles avec l'opération demandée.
[[File:AsyncCounter UpDown.svg|centre|vignette|upright=3|AsyncCounter UpDown]]▼
▲[[File:AsyncCounter
====L'incrémenteur asynchrone configurable====
|