Compteur modulo 16
Un article de Wikipedia.
(Différences entre les versions)
m (→Résultats) |
(→Résultats) |
||
Ligne 270 : | Ligne 270 : | ||
** J<sub>n</sub> = K<sub>n</sub> = Q<sub>1</sub>Q<sub>2</sub>...Q<sub>n-1</sub> pour n > 1 | ** J<sub>n</sub> = K<sub>n</sub> = Q<sub>1</sub>Q<sub>2</sub>...Q<sub>n-1</sub> pour n > 1 | ||
- | <logicsim height=" | + | <logicsim height="700" width="1000" circuit="Compteurmodulo16.lsim" start="true" /> |
== Conclusions == | == Conclusions == |
Version du 28 mars 2009 à 08:51
Sommaire |
Compteur modulo 16
But
Déterminer les composants logiques d'un compteur modulo 16.
Introduction
La réalisation est centrée sur des bascules JK Master / Slave (voir Bascule JK sur Wikipedia).
Table de vérité d'une bascule JK
La table de vérité d'une bascule JK est :
J | K | Q+ |
---|---|---|
0 | 0 | Q |
0 | 1 | 0 |
1 | 0 | 1 |
1 | 1 | /Q (le complément de Q) |
Table des transitions d'une bascule JK
Sa table des transitions déduites de sa table de vérité est :
Q | Q+ | J | K |
---|---|---|---|
0 | 0 | 0 | x |
0 | 1 | 1 | x |
1 | 0 | x | 1 |
1 | 1 | x | 0 |
Compteur modulo 16
Un compteur modulo 16 nécessite 4 bascules JK.
Etats du compteur
Les états d'un compteur modulo 16 ainsi que les états de bascules JK sont les suivants :
Etat | Q | Q+ | d | c | b | a | ||||||||||
d | c | b | a | d | c | b | a | J | K | J | K | J | K | J | K | |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | x | 0 | x | 0 | x | 1 | x |
1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | x | 0 | x | 1 | x | x | 1 |
2 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | x | 0 | x | x | 0 | 1 | x |
3 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | x | 1 | x | x | 1 | x | 1 |
4 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | x | x | 0 | 0 | x | 1 | x |
5 | 0 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | x | x | 0 | 1 | x | x | 1 |
6 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | x | x | 0 | x | 0 | 1 | x |
7 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | x | x | 1 | x | 1 | x | 1 |
8 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | x | 0 | 0 | x | 0 | x | 1 | x |
9 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | x | 0 | 0 | x | 1 | x | x | 1 |
10 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 1 | x | 0 | 0 | x | x | 0 | 1 | x |
11 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | x | 0 | 1 | x | x | 1 | x | 1 |
12 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | x | 0 | x | 0 | 0 | x | 1 | x |
13 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | x | 0 | x | 0 | 1 | x | x | 1 |
14 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | x | 0 | x | 0 | x | 0 | 1 | x |
15 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | x | 1 | x | 1 | x | 1 | x | 1 |
Matrice de référence
La matrice de référence des états du compteur :
QdQc\QbQa | 00 | 01 | 11 | 10 |
---|---|---|---|---|
00 | 0 | 1 | 3 | 2 |
01 | 4 | 5 | 7 | 6 |
11 | 12 | 13 | 15 | 14 |
10 | 8 | 9 | 11 | 10 |
Réduction des fonctions J et K
|
Ja = 1 |
|
Ka = 1 | |||||||||||||||||||||||||||||||||||||||||||||||||||
| Jb = Qa |
| Kb = Qa | |||||||||||||||||||||||||||||||||||||||||||||||||||
| Jc = QaQb |
| Kc = QaQb | |||||||||||||||||||||||||||||||||||||||||||||||||||
| Jd = QaQbQc |
| Kd = QaQbQc |
Résultats
Les résultats de la réduction des fonctions J et K sont compréhensibles :
- Qa change de valeur à chaque impulsion d'horloge. Cela se réalise quand J = K = 1 d'après la table de vérité de la bascule JK, d'où Ja = Ka = 1.
- Qb change de valeur après la prochaine impulsion d'horloge seulement quand le bit inférieur (Qa) est à 1, sinon il conserve sa valeur. D'ou Jb = Kb = Qa. Lorsque Qa = 1, Qb change de valeur et lorsque Qa = 0, Qb conserve sa valeur (selon la table de vérité de la bascule JK lorsque J = K = 0).
- Qc change de valeur après la prochaine impulsion d'horloge seulement quand les deux bits inférieurs (Qa et Qb) sont à 1, sinon il conserve sa valeur. D'ou Jc = Kc = QaQb.
- Qd change de valeur après la prochaine impulsion d'horloge seulement quand les trois bits inférieurs (Qa, Qb et Qc) sont à 1, sinon il conserve sa valeur. D'ou Jd = Kd = QaQbQc.
- Cela se généralise pour un compteur à n bascules JK :
- J1 = K1 = 1.
- Jn = Kn = Q1Q2...Qn-1 pour n > 1
Conclusions
Un compteur modulo 16 se réalise avec 4 bascules JK et 2 portes ET.
Ressources
- Fichiers pour LogicSim du Compteur Modulo 16