Esame di Architetture 1 - AA 2000-2001 - Canale H-Z
Esame A
Progettate, usando flip-flop di tipo
JK, il circuito sequenziale che genera la sequenza ciclica di cifre esadecimali:
C > 2 > 0 > E > 4 > 8 > 6 > A > C.
- Costruite l'automa che parte dallo stato C e cicla attraverso i diversi stati.
- Minimizzate l'automa.
- Disegnate in forma grafica l'automa minimizzato.
- Codificate gli stati dell'automa.
- Calcolate la tabella delle transizioni.
- Calcolate le funzioni di input dei flip-flop di tipo JK.
- Codificate l'output (le cifre esadecimali).
- Disegnate il circuito usando una PLA.
Suggerimento: Con una scelta accorta della codifica degli stati il circuito di codifica dell'output esadecimale diventa molto semplice.
Soluzione A
L'automa ha la tabella di transizione (con
x che indica la transizione):
|
C |
2 |
0 |
E |
4 |
8 |
6 |
A |
C |
|
x |
|
|
|
|
|
|
2 |
|
|
x |
|
|
|
|
|
0 |
|
|
|
x |
|
|
|
|
E |
|
|
|
|
x |
|
|
|
4 |
|
|
|
|
|
x |
|
|
8 |
|
|
|
|
|
|
x |
|
6 |
|
|
|
|
|
|
|
x |
A |
x |
|
|
|
|
|
|
|
L'automa non e' minimizzabile.
Notiamo che i numeri da produrre sono tutti pari, e quindi il meno significativo dei 4 bit che li rappresentano e' sempre
0.
Quindi scegliamo come codifica degli stati i 3 bit piu' significativi di ciascuna cifra esadecimale.
Stato |
Cifra |
Codice |
0 |
0000 |
000 |
2 |
0010 |
001 |
4 |
0100 |
010 |
6 |
0110 |
011 |
8 |
1000 |
100 |
A |
1010 |
101 |
C |
1100 |
110 |
E |
1110 |
111 |
Si ricordano le transizioni di un FF JK.
J K |
Q Q' |
0 0 |
1 1 |
0 0 |
0 0 |
1 0 |
- 1 |
0 1 |
- 0 |
1 1 |
1 0 |
1 1 |
0 1 |
|
Da cui si ottiene la regola
Q Q' |
J K |
0 0 |
0 - |
0 1 |
1 - |
1 0 |
- 1 |
1 1 |
- 0 |
|
Quindi otteniamo la tabella di transizione
Q2 Q1 Q0 |
Q2' Q1' Q0' |
J2 K2 |
J1 K1 |
J0 K0 |
0 0 1 |
0 0 0 |
0 - |
0 - |
- 1 |
1 0 0 |
0 1 1 |
- 1 |
1 - |
1 - |
1 1 0 |
0 0 1 |
- 1 |
- 1 |
1 - |
1 1 1 |
0 1 0 |
- 1 |
- 0 |
- 1 |
0 0 0 |
1 1 1 |
1 - |
1 - |
1 - |
0 1 0 |
1 0 0 |
1 - |
- 1 |
0 - |
0 1 1 |
1 0 1 |
1 - |
- 1 |
- 0 |
1 0 1 |
1 1 0 |
- 0 |
1 - |
- 1 |
|
Le 6 funzioni
J2 K2 J1 K1 J0 K0 si ottengono con la minimizzazione delle mappe di Karnaugh (con le lettere
a,b indico le zone minimizzate nell'ordine in cui appaiono nelle formule):
Q2 Q1 \ Q0 |
0 |
1 |
0 0 |
1 a |
0 |
0 1 |
1 ab |
1 b |
1 1 |
- ab |
- b |
1 0 |
- a |
- |
J2 = Q0n---+ Q1
|
Q2 Q1 \ Q0 |
0 |
1 |
0 0 |
1 a |
0 |
0 1 |
- a |
- |
1 1 |
- ab |
- b |
1 0 |
1 ab |
1 b |
J1 = Q0n---+ Q2
|
J0 = Q1n---+ Q2
|
Q2 Q1 \ Q0 |
0 |
1 |
0 0 |
- a |
- |
0 1 |
- ab |
- b |
1 1 |
1 ab |
1 b |
1 0 |
1 a |
0 |
K2 = Q0n---+ Q1
|
Q2 Q1 \ Q0 |
0 |
1 |
0 0 |
- ab |
- ab |
0 1 |
1 ab |
1 ab |
1 1 |
1 a |
0 |
1 0 |
- a |
- |
K1 = Q0n---+ Q2n
|
Q2 Q1 \ Q0 |
0 |
1 |
0 0 |
- a |
1 a |
0 1 |
- |
0 |
1 1 |
- b |
1 b |
1 0 |
- ab |
1 ab |
K0 = Q1n---+ Q2
|
La PLA si ricava immediatamente.
Esame B
Progettate, usando flip-flop di tipo
D, il circuito sequenziale che:
- prende in input una variabile binaria X
- se X = 1 ad ogni colpo di clock passa alla prossima cifra esadecimale della sequenza ciclica: F > 5 > 3 > 1 > 7 > B > 9 > D > F.
- Se X = 0 invece ad ogni colpo di clock torna indietro di una cifra.
-
- Costruite l'automa e minimizzatelo.
- Disegnate in forma grafica l'automa minimizzato.
- Codificate gli stati dell'automa.
- Calcolate la tabella delle transizioni.
- Calcolate le funzioni di input dei flip-flop di tipo D.
- Codificate l'output (le cifre esadecimali).
- Disegnate il circuito usando porte NAND.
Suggerimento: Con una scelta accorta della codifica degli stati il circuito di codifica dell'output esadecimale diventa molto semplice.
Soluzione B
L'automa ha la tabella di transizione:
|
F |
5 |
3 |
1 |
7 |
B |
9 |
D |
F |
|
1 |
|
|
|
|
|
0 |
5 |
0 |
|
1 |
|
|
|
|
|
3 |
|
0 |
|
1 |
|
|
|
|
1 |
|
|
0 |
|
1 |
|
|
|
7 |
|
|
|
0 |
|
1 |
|
|
B |
|
|
|
|
0 |
|
1 |
|
9 |
|
|
|
|
|
0 |
|
1 |
D |
1 |
|
|
|
|
|
0 |
|
L'automa non e' minimizzabile.
Notiamo che i numeri da produrre sono tutti dispari, e quindi il meno significativo dei 4 bit che li rappresentano e' sempre
1.
Quindi scegliamo come codifica degli stati i 3 bit piu' significativi di ciascuna cifra esadecimale.
Stato |
Cifra |
Codice |
1 |
0001 |
000 |
3 |
0011 |
001 |
5 |
0101 |
010 |
7 |
0111 |
011 |
9 |
1001 |
100 |
B |
1011 |
101 |
D |
1101 |
110 |
F |
1111 |
111 |
Si ricordano le transizioni di un FF D.
Da cui si ottiene la regola
D = Q'
Quindi otteniamo la tabella di transizione
X |
Q2 Q1 Q0 |
D2'=Q2' D1'=Q1' D0'=Q0' |
0 |
0 0 0 |
0 0 1 |
0 |
0 0 1 |
1 1 0 |
0 |
0 1 0 |
1 1 1 |
0 |
0 1 1 |
1 0 0 |
0 |
1 0 0 |
0 1 0 |
0 |
1 0 1 |
0 1 1 |
0 |
1 1 0 |
1 0 1 |
0 |
1 1 1 |
0 0 0 |
1 |
0 0 0 |
1 1 1 |
1 |
0 0 1 |
0 0 0 |
1 |
0 1 0 |
1 0 0 |
1 |
0 1 1 |
1 0 1 |
1 |
1 0 0 |
0 1 1 |
1 |
1 0 1 |
1 1 0 |
1 |
1 1 0 |
0 0 1 |
1 |
1 1 1 |
0 1 0 |
Le funzioni
D2 D1 D0 si ottengono con la minimizzazione delle mappe di Karnaugh:
X Q2 \ Q1 Q0 |
0 0 |
0 1 |
1 1 |
1 0 |
0 0 |
0 |
1 a |
1 ab |
1 bc |
0 1 |
0 |
0 |
0 |
1 c |
1 1 |
0 |
1 d |
0 |
0 |
1 0 |
1 e |
0 |
1 b |
1 be |
D2 = Xn Q2n Q0n---+ Q2n Q1 + Xn Q1 Q0n + X Q2 Q1n Q0 + X Q2n Q0n
X Q2 \ Q1 Q0 |
0 0 |
0 1 |
1 1 |
1 0 |
0 0 |
0 |
1 a |
0 |
1 b |
0 1 |
1 c |
1 ac |
0 |
0 |
1 1 |
1 ce |
1 cd |
1 d |
0 |
1 0 |
1 e |
0 |
0 |
0 |
D1 = Xn Q1n Q0---+ Xn Q2n Q1 Q0n + Q2 Q1n + X Q2 Q0 + X Q1n Q0n
X Q2 \ Q1 Q0 |
0 0 |
0 1 |
1 1 |
1 0 |
0 0 |
1 a |
0 |
0 |
1 a |
0 1 |
0 |
1 c |
0 |
1 b |
1 1 |
1 d |
0 |
0 |
1 b |
1 0 |
1 d |
0 |
1 e |
0 |
D0 = Xn Q2n Q0n---+ Q2 Q1 Q0n + Xn Q2 Q1n Q0 + X Q1n Q0n + X Q2n Q1 Q0
Il circuito si ricava immediatamente.
--
AndreaSterbini - 03 Jul 2001