• Aucun résultat trouvé

Circuits séquentiels complexes

N/A
N/A
Protected

Academic year: 2022

Partager "Circuits séquentiels complexes"

Copied!
5
0
0

Texte intégral

(1)

Réalisé à partir des bascules élémentaires, des fonctions logiques séquentielles plus élaborées que ces dernières sont intégrées dans des circuits. Nous nous intéresserons ici particulièrement aux registres et aux compteurs. A titre indicatif une référence de circuit est donnée pour chaque fonction ; on rappelle cependant que ces références correspondent à des circuits aujourd’hui obsolètes pour une nouvelle conception, la facilité de mise en œuvre des circuits configurables les rendant maintenant préférables aux circuits à architecture figée.

1. Registres

Le registre assure la mémorisation d'un mot binaire (et éventuellement sa transformation). Il existe plusieurs type de registre.

1.1. Registres parallèles (storage registers)

Il est composé de bascule D montée en parallèle avec l'entrée d'horloge commune.

0

1

n

Q D

C

Q D

C . . . . . .

. .

. . . . Q

D C

D Q

horloge

D

D

Q

Q

0

1

n

Les entrées D des bascules sont généralement reliées à un bus. Au front actif de l'horloge, le mot présent sur le bus est alors mémorisé jusqu'au prochain coup d'horloge. On parle de registre à entrées et sorties parallèles, comme l’intègre le circuit 74HC166.

On réalise sensiblement la même fonction en utilisant des bascules D à verrouillage, la mémorisation se faisant alors lorsque l'entrée de chargement repasse à 0, le circuit étant "transparent" (c'est à dire entrées D et sorties Q égales) lorsque cette dernière est au niveau logique 1. On utilise alors le terme

"verrou" pour différentier du registre. Le circuit : 74HC373 est par exemple un verrou 8 bits (octal D- type transparent latches)

1.2. Registres à décalage (shift registers)

En reliant dans le schéma précédent la sortie des bascules à l'entrée de la suivante, on obtient à chaque coup d'horloge un décalage vers la droite des bits contenus dans le mot. Le registre obtenu est alors à entrée et sortie série.

(2)

Q D

C Q

D C horloge

Q 1 Q n

Q 0 D Q

C

sortie série entrée

série

Plusieurs applications sont possibles :

- réalisation d'une ligne à retard numérique, un bit mettant N fois la période de l'horloge pour traverser le registre de N bascules.

- division par deux d'un nombre binaire. Avec les registres à décalage commercialisés, on a parfois accès directement aux entrées et sorties des bascules; il est alors possible de se servir du circuit comme d'un registre parallèle, de charger un mot, d'effectuer un décalage à droite, puis de lire le mot sur les sorties. En forçant l'entrée de la première bascule à 0, la valeur binaire contenue dans le registre est alors divisée par deux à chaque coup d'horloge.

- conversion pour les communications séries. L'échange de mots binaires entre deux systèmes numériques peut se faire en parallèle (un fil par bit plus la masse) ou en série (un fil et la masse). Il est alors nécessaire pour l'émetteur d'envoyer tous les bits d'un mot les uns après les autres. On charge pour cela le mot à émettre dans un registre, puis par décalage les bits passent par la sortie série. De son coté, le récepteur les reçoit par l'entrée série d'un registre identique et recompose le mot également par décalage; il suffit alors de lire les sorties des bascules du registre récepteur.

émetteur récepteur

chargement des données

... ...

réception des données transmission

des données

Il est également possible de réaliser un décalage à gauche en reliant les entrées de chaque bascule à la sortie de la suivante.

Q D

C Q

D C

Q

1

Q

n

Q D

C sortie

série entrée

série

(3)

L'application principale est la multiplication par deux à chaque coup d'horloge de la valeur binaire contenue dans le registre.

1.3. Registres universels

Certains circuits intégrés réalisent toutes les fonctions décrites ci-dessus; on parle alors de registre universel : suivant les signaux appliqués sur des entrées de commande, un système combinatoire interne relie les bascules de manière à obtenir la fonction désirée. Exemple de référence : le circuit 74HC299, registre universel de 8 bits (8-bit universal shift/storage registers).

2. Compteurs

Ces circuits sont très importants en électronique numérique. Leur rôle ne se limite pas à compter des impulsions électriques correspondant par exemple au passage d'une pièce sur le tapis d'une chaîne de montage ou au nombre de tour d'une roue dont on veut connaître la vitesse, ils permettent également d'établir un ordre dans une succession d'événements. C'est par exemple, grâce à l'utilisation d'un compteur (entre autres) qu'un microprocesseur peut effectuer toutes les tâches d'un programme, les unes après les autres dans le bon ordre.

La topologie de base des compteurs est toujours à peu près la même : - une entrée d'horloge recevant les impulsions à compter

- N sorties sur lesquelles se trouve le résultat du comptage en binaire, en BCD ou dans un code quelconque (en décimal par exemple avec une seule des 10 sorties au NL 1)

Le nombre d'états possibles sur les sorties d'un compteur binaire est exprimé par son modulo : un compteur de modulo M compte de 0 à M - 1.

Comme pour les bascules, il existe deux types de compteur : asynchrone et synchrone. Le premier comme nous le verrons est très simple à réaliser, mais certaines limitations ont conduit à la mise au point du second.

2.1. Compteurs asynchrones

L'élément de base est la bascule D ou JK montée en diviseur de fréquence par deux.

Q Q D

C

J K

C Q 1

entrée 1

sortie sortie

entrée

0 t

0 t C

Q

On remarque en effet que dans cette configuration, le signal sur la sortie du compteur est de fréquence deux fois plus faible que celui sur l'entrée d'horloge. En associant ces bascules en cascade, on obtient sur les sorties un mot binaire dont la valeur est fonction du nombre d'impulsions apparues à l'entrée (l’indice de la sortie correspondant à la puissance de deux associée à la sortie).

(4)

2

horloge

1 0

Q Q D

C

t 0

0 1 Q

Q Q D

C Q

Q D

C

t

t t 0

0 Q Q

Q

0

Q

1

Q

2

horloge

2 3 4 5 6 7

Si le compteur comprend N bascules, son modulo est 2N, (le comptage s'effectuant de 0 à 2N - 1).

Pour obtenir un modulo M inférieur, il suffit de détecter à l'aide de portes l'état M - 1 et de mettre les bascules à 0 lors de l'impulsion suivante. C'est de cette manière que l'on réalise un compteur BCD en remettant à zéro un groupe de quatre bascules toutes les dix impulsions.

Si on utilise des bascules déclenchant sur front montant, on obtient alors un décompteur.

horloge

1 0

Q Q D

C

t 0

0

1 Q

Q Q D

C Q

Q D

C

t t 0

Q Q

Q

0

Q

1

Q

2

horloge

2 3 4 5 6

7 0

(5)

l'arrivée de la quatrième impulsion : le nombre trois étant présent en sortie (état stable), l'impulsion provoque le passage à 0 de la première bascule (on retrouve alors le nombre 2 sur la sortie du compteur), ce qui provoque le passage à 0 de la seconde bascule (on lit alors 0 en sortie du compteur), ce qui provoque la mise à 1 de la troisième bascule, le nombre 4 (état stable) pouvant alors être lu en sortie. Les nombres 2 et 0 n'apparaissent que pendant un temps très court correspondant au temps de propagation des bascules, mais cela peut être très gênant pour certaines applications. Aussi l'utilisation de ces compteurs est souvent limitée à la division de fréquence : on remarque en effet que sur la sortie de la bascule N on obtient un signal de fréquence 2N fois plus faible que le signal d'horloge. Cette propriété est utilisée par exemple lorsque l'on souhaite avoir un signal carré de fréquence basse stable et précise: on réalise alors un oscillateur à quartz dont la fréquence est élevée (pour des raisons mécaniques il est impossible de réaliser des quartz basse fréquence) puis on utilise un compteur asynchrone pour diminuer la fréquence. Le circuit 74HC4060 comprend par exemple une section oscillateur suivi de 14 étages montés en diviseur de fréquence par 2.

2.2. Compteurs synchrones

Le seul moyen d'éviter le problème des compteurs asynchrone est de faire en sorte que les bascules changent d'état en même temps. Pour cela les entrées d'horloge de celles-ci doivent être reliées ensemble (comme pour les registres). Le basculement de chaque élément est alors autorisé ou non par des portes logiques en fonction de l'état du compteur. On obtient alors un schéma beaucoup plus compliqué que les précédents.

2.3. Fonctions annexes

A l'intérieur des compteurs autour des bascules est organisé un certain nombre de circuits logiques combinatoire ou séquentiels permettant la réalisation de fonctions annexes :

- choix du mode de comptage; entre du binaire et du BCD par exemple par une entrée BIN/BCD (comptage binaire si NL1 et BCD si NL0).

- choix du comptage ou décomptage par entrée UP/DOWN par exemple.

- possibilité par l'intermédiaire d'entrées et de sorties de mettre plusieurs compteurs en cascade de manière à augmenter le modulo de l'ensemble.

- certains compteurs possèdent un registre de sortie permettant de mémoriser le résultat à un moment donné tandis que le comptage continue.

- enfin certains compteurs sont programmables, c'est à dire qu'il est possible de commencer le comptage ou le décomptage à partir de n'importe quel nombre chargé préalablement. Le chargement peut se faire de manière synchrone (c'est à dire au front actif de l'horloge, lorsque l'entrée ordonnant le chargement est au niveau actif) ou asynchrone (c'est à dire lorsque l'entrée ordonnant le chargement est au niveau actif). Citons par exemple le circuit 74HC40103.

Références

Documents relatifs

– Le dernier appel à encode(), avec endOfInput à true, a renvoyé un CoderResult tel que isUnderflow() soit true (plus rien à lire). – Il faut faire flush() pour terminer le

Les entrées sont les données envoyées par un périphérique (disque, réseau, clavier…) à destination de l'unité centrale ;.. • Les sorties sont les données émises par

7 Un process impose les contraintes temps réel suivantes : temps de latence <1000µs et temps séparant 2 événements consécutifs >2ms.. On choisira le mode d'

– mode ne doit contenir que des droits d’accès – on ne peut détruire qu’un répertoire vide.

 Il envoie un signal sur la ligne d'occupation pour préciser que le bus est

Les bascules sont des circuits séquentiels pour lesquels l’état des sorties dépend à la fois de l’état actuel des entrées et des états passés de la sortie._.. La sortie est Q

• C'est un registre qui effectue un décalage vers la gauche en répercutant la sortie de la derniére bascule vers l'entrée de la dernière bascule. • Le décalage peut être

Test d’une seule entrée : la technique consiste à effectuer un « masquage » (ET logique bit par bit) du registre d’entrée (pour neutraliser l’état des autres entrées), puis à