Esercizi di Elettronica Digitale.. Neve Esercizi Digitali 1
Porte logiche Elementari ND OR NND NOR EXOR EXNOR 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 1 0 0 1 1 0 1 0 1 1 1 1 0 0 0 1 * Reti logiche con interruttori Vcc OR R Out ND Vcc R Out NOT Vcc R Out NOR Vcc R Out Vcc R Out NND Insiemi di operatori Universale ND-OR-NOT NND-NND NOR-NOR.. Neve Esercizi Digitali 2
D 00 01 11 10 00 0 0 1 0 Reti combinatorie con uscita singola 01 0 0 1 1 11 1 1 1 1 10 0 0 1 0 Z,,, D D D 00 01 11 10 00 0 0 0 0 01 0 1 1 1 11 1 1 0 1 10 1 1 0 0 Z,,, D D D D 00 01 11 10 00 0 0 1 0 01 1 1 1 0 11 0 1 1 1 10 0 1 0 0 Z,,, D D D D 00 01 11 10 00 0 0 1 1 01 0 1 1 0 11 1 1 0 0 10 1 0 0 1 Z,,, D D D D D.. Neve Esercizi Digitali 3
D 00 01 11 10 00 0 0 1 1 01 1 0 0 1 11 0 0 1 1 10 1 0 0 1 Z,,, D D D D 00 01 11 10 00 1 0 1 0 01 1 1 1 1 11 1 0 1 1 10 0 1 0 0 Z,,, D D D D D D 00 01 11 10 00 1 1 0 1 01 0 1 1 1 11 1 1 1 0 10 1 0 1 1 Z,,, D D D D D 00 01 11 10 00 0 1 1 0 01 0 0 0 1 11 1 1 1 0 10 0 1 1 0 Z,,, D D D D.. Neve Esercizi Digitali 4
D 00 01 11 10 00 1 0 0 1 01 1 1 1 1 11 0 1 1 0 10 1 0 0 1 Z,,, D D D D 00 01 11 10 00 0 0 1 1 01 0 1 1 1 11 1 1 1 0 10 1 1 0 0 Z,,, D D D 00 01 11 10 00 1 0 0 1 01 1 1 0 1 11 1 0 1 0 10 1 0 0 0 Z,,, D D D D D 00 01 11 10 00 0 1 0 1 01 1 0 1 0 11 0 1 0 1 10 1 0 1 0 Z,,, D D.. Neve Esercizi Digitali 5
Reti combinatorie non completamente specificate D 00 01 11 10 00 0 0 0 x 01 1 1 0 0 11 1 x 0 x 10 1 0 1 x Z,,, D D D 00 01 11 10 00 1 0 x 1 01 0 1 x 0 11 1 0 x x 10 1 0 x x Z,,, D D D D D 00 01 11 10 00 1 1 1 0 01 0 x 1 0 11 1 0 0 0 10 x x 0 x Z,,, D D D D 00 01 11 10 00 1 1 0 1 01 0 0 1 0 11 x x x x 10 x x 0 1 Z,,, D D D.. Neve Esercizi Digitali 6
D 00 01 11 10 00 x 0 x 0 01 0 1 1 1 11 1 1 0 1 10 1 1 0 x Z,,, D D D D 00 01 11 10 00 1 1 1 0 01 0 x 0 x 11 1 0 0 0 10 x x x x Z,,, D D D D 00 01 11 10 00 1 1 1 0 01 0 x 1 x 11 1 0 0 0 10 x x x x Z,,, D D D D 00 01 11 10 00 0 1 x 0 01 0 x 1 0 11 1 0 x x 10 1 1 0 x Z,,, D D D.. Neve Esercizi Digitali 7
.. Neve Esercizi Digitali 8 nalisi di reti combinatorie f 1,, D D D D D D D f 1,,,
.. Neve Esercizi Digitali 9 f,, [ ] f,,
ircuiti combinatori con uscita multipla Sommatore: La funzione espletata da un sommatore a due bit è descritta dalla seguente tabella: S somma riporto S 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 S Il circuito proposto è detto sommatore semplice Half dder in quanto non tiene conto di eventuali riporti precedenti. La tabella di verità di un sommatore completo Full dder è invece la seguente: i S o 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 i riporto precedente S somma o riporto successivo S i i i i i i i o i i i i i i i Nella figura seguente è proposto il circuito di un Full dder... Neve Esercizi Digitali 10
Sottrattore: La funzione espletata da un sottratore a due bit è descritta dalla seguente tabella: S differenza P prestito S P 0 0 0 0 0 1 1 1 1 0 1 0 1 1 0 0 S P Il circuito proposto è detto sottrattore semplice Half Subtractor in quanto non tiene conto di eventuali prestiti precedenti. La tabella di verità di un sottrattore completo Full Subtractor è invece la seguente:.. Neve Esercizi Digitali 11
Pi S Po 0 0 0 0 0 0 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 1 0 1 0 1 0 0 1 1 0 0 0 1 1 1 1 1 Pi prestito precedente S differenza Po prestito successivo S Pi Pi Pi Pi Pi Pi Pi Po Pi Pi Pi Pi Pi Pi Pi Pi Nella figura seguente è proposto il circuito di un Full Subtractor... Neve Esercizi Digitali 12
Esercizio: Descrivere la funzione espletata dal seguente circuito Il circuito proposto si comporta come una piccola LU a due bit in grado di espletare le quattro funzioni logiche elementari ND, OR, NND e NOR. Gli ingressi sono e. I segnali di selezione sono S1 ed S2. S1 S2 Z1 Z2 Z3 Z4 0 0 nand 1 0 0 0 1 1 nor 0 0 1 0 1 1 and 0 1 0 1 1 0 or Esercizio: Utilizzando un decodificatore, realizzare un generatore di parità a tre bit:.. Neve Esercizi Digitali 13
Esercizio: Realizzare, con porte logiche, un codificatore a priorità con quattro ingressi I3 I2 I1 I0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 1 0 1 0 0 1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 1 1 1 1 0 1 0 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 I1I0 I3I2 00 01 11 10 00 0 0 1 1 01 0 0 0 0 11 1 1 1 1 10 1 1 1 1 I1I0 I3I2 00 01 11 10 00 0 0 0 0 01 1 1 1 1 11 1 1 1 1 10 1 1 1 1 0 1 0 I3 I1I 2 1 I 2 I3.. Neve Esercizi Digitali 14
D 8421 ORRET OUTPUT Esercizio: Realizzare un circuito che accetti in ingresso una parola in codice D8421 con codifica Hamming, ne effettui il controllo d errore ed eventualmente anche la correzione ed emetta in uscita la parola corretta. k1 k2 n0 k3 n1 n2 n3 1 2 3 4 5 6 7 1 2 3 4 n0 n1 n2 n3 ircuito per la rilevazione e correzione di errore per codici D 8421 in codifica Hamming HMMING ODE INPUT n3 n2 n1 k3 n0 k2 k1 P3 P2 3 --> 8 DEODER 7 6 5 4 3 2 1 0 P1 n0 n1 n2 n3.. Neve Esercizi Digitali 15
Esercizio: Realizzare un convertitore di codice da D 8421 in D Eccesso-3. N 3 2 1 0 E3 E2 E1 E0 0 0 0 0 0 0 0 1 1 1 0 0 0 1 0 1 0 0 2 0 0 1 0 0 1 0 1 3 0 0 1 1 0 1 1 0 4 0 1 0 0 0 1 1 1 5 0 1 0 1 1 0 0 0 6 0 1 1 0 1 0 0 1 7 0 1 1 1 1 0 1 0 8 1 0 0 0 1 0 1 1 9 1 0 0 1 1 1 0 0-1 0 1 0 x x x x - 1 0 1 1 x x x x - 1 1 0 0 x x x x - 1 1 0 1 x x x x - 1 1 1 0 x x x x - 1 1 1 1 x x x x La tabella descrive una macchina combinatoria avente quattro ingressi per il codice D 8421 e quattro uscite per il corrispondente codice D Eccesso-3. 10 32 00 01 11 10 00 0 0 0 0 01 0 1 1 1 11 x x x x 10 1 1 x x 10 32 00 01 11 10 00 0 1 1 1 01 1 0 0 0 11 x x x x 10 0 1 x x E 3 3 02 1 2 E 2 0 2 1 2 012 10 32 00 01 11 10 00 1 0 1 0 01 1 0 1 0 11 x x x x 10 1 0 x x 10 32 00 01 11 10 00 1 0 0 1 01 1 0 0 1 11 x x x x 10 1 0 x x E 1 01 01 E 0 0.. Neve Esercizi Digitali 16
Esercizio: Realizzare un convertitore di codice da D Eccesso-3 in D 8421. N E3 E2 E1 E0 3 2 1 0-0 0 0 0 x x x x - 0 0 0 1 x x x x - 0 0 1 0 x x x x 0 0 0 1 1 0 0 0 0 1 0 1 0 0 0 0 0 1 2 0 1 0 1 0 0 1 0 3 0 1 1 0 0 0 1 1 4 0 1 1 1 0 1 0 0 5 1 0 0 0 0 1 0 1 6 1 0 0 1 0 1 1 0 7 1 0 1 0 0 1 1 1 8 1 0 1 1 1 0 0 0 9 1 1 0 0 1 0 0 1-1 1 0 1 x x x x - 1 1 1 0 x x x x - 1 1 1 1 x x x x La tabella descrive una macchina combinatoria avente quattro ingressi per il codice D Eccesso-3 e quattro uscite per il corrispondente codice D 8421. E1E0 E3E2 00 01 11 10 00 x x 0 x 01 0 0 0 0 11 1 x x x 10 0 0 1 0 E1E0 E3E2 00 01 11 10 00 x x 0 x 01 0 0 1 0 11 0 x x x 10 1 1 0 1 3 E0E1E3 E2E3 2 E0E1E 2 E 0E 2 E1E 2 E1E0 E3E2 00 01 11 10 00 x x 0 x 01 0 1 0 1 11 0 x x x 10 0 1 0 1 E1E0 E3E2 00 01 11 10 00 x x 0 x 01 1 0 0 1 11 1 x x x 10 1 0 0 1 1 E0E1E3 E2E3 0 E 0.. Neve Esercizi Digitali 17
Esercizio: Realizzare un convertitore di codice da D 8421 in D GRY. N 3 2 1 0 G3 G2 G1 G0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 2 0 0 1 0 0 0 1 1 3 0 0 1 1 0 0 1 0 4 0 1 0 0 0 1 1 0 5 0 1 0 1 1 1 1 0 6 0 1 1 0 1 0 1 0 7 0 1 1 1 1 0 1 1 8 1 0 0 0 1 0 0 1 9 1 0 0 1 1 0 0 0-1 0 1 0 x x x x - 1 0 1 1 x x x x - 1 1 0 0 x x x x - 1 1 0 1 x x x x - 1 1 1 0 x x x x - 1 1 1 1 x x x x La tabella descrive una macchina combinatoria avente quattro ingressi per il codice D 8421 e quattro uscite per il corrispondente codice D GRY. 10 32 00 01 11 10 00 0 0 0 0 01 0 1 1 1 11 x x x x 10 1 1 x x 10 32 00 01 11 10 00 0 0 0 0 01 1 1 0 0 11 x x x x 10 0 0 x x G 3 3 02 1 2 G 2 12 10 32 00 01 11 10 00 0 0 1 1 01 1 1 1 1 11 x x x x 10 0 0 x x 10 32 00 01 11 10 00 0 1 0 1 01 0 0 1 0 11 x x x x 10 1 0 x x G 1 1 2 G 0 03 01 2 01 2 01 23.. Neve Esercizi Digitali 18
Esercizio: Realizzare un convertitore di codice da D GRY in D 8421. N G3 G2 G1 G0 3 2 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 3 0 0 1 0 0 0 1 1 2 0 0 1 1 0 0 1 0-0 1 0 0 x x x x - 0 1 0 1 x x x x 4 0 1 1 0 0 1 0 0-0 1 1 1 x x x x 9 1 0 0 0 1 0 0 1 8 1 0 0 1 1 0 0 0 6 1 0 1 0 0 1 1 0 7 1 0 1 1 0 1 1 1-1 1 0 0 x x x x - 1 1 0 1 x x x x 5 1 1 1 0 0 1 0 1-1 1 1 1 x x x x La tabella descrive una macchina combinatoria avente quattro ingressi per il codice D GRY e quattro uscite per il corrispondente codice D 8421. G1G0 G3G2 00 01 11 10 00 0 0 0 0 01 x x x 0 11 x x x 0 10 1 1 0 0 G1G0 G3G2 00 01 11 10 00 0 0 0 0 01 x x x 1 11 x x x 1 10 0 0 1 1 3 G1G3 2 G2 G1G 3 G1G0 G3G2 00 01 11 10 00 0 0 1 1 01 x x x 0 11 x x x 0 10 0 0 1 1 G1G0 G3G2 00 01 11 10 00 0 1 0 1 01 x x x 0 11 x x x 1 10 1 0 1 0 1 G1G 2 0 G2G3 G0G1G 3 G 0G1G 3 G 0G1G 2G 3 G0G1G 3.. Neve Esercizi Digitali 19
Esercizio: Realizzare un convertitore da ODIE GRY in INRIO LINERE Realizzare un convertitore da INRIO LINERE in ODIE GRY.. Neve Esercizi Digitali 20
Reti sequenziali Esercizio: Realizzare un contatore binario sincrono in avanti con modulo 5 e privo di protezione antiblocco. Un contatore modulo 5 richiede l utilizzo di tre flip-flop in quanto 2 3 >5. Vengono utilizzati del flip-flop JK la cui tabella di transizione inversa è la seguente. Q n Q n1 J K 0 0 0 x 0 1 1 x 1 0 x 1 1 1 x 0 L evoluzione degli stati è descritta dalla seguente tabella : Stato presente Stato futuro lock Q2 Q1 Q0 Q 2 Q 1 Q 0 J2 K2 J1 K1 J0 K0 0 0 0 0 0 0 1 0 x 0 x 1 x 1 0 0 1 0 1 0 0 x 1 x x 1 2 0 1 0 0 1 1 0 x x 0 1 x 3 0 1 1 1 0 0 1 x x 1 x 1 4 1 0 0 0 0 0 x 1 0 x 0 x - 1 0 1 x x x x x x x x x - 1 1 0 x x x x x x x x x - 1 1 1 x x x x x x x x x 0 0 0 1 0 1 x x x x J 2 Q0Q1 0 0 1 x x 1 0 x x x J 1 Q0 0 1 x x 1 1 0 x x x J 0 Q 2 0 x x x x 1 1 x x x K 2 1 0 x x 1 0 1 x x x x K 1 Q0 0 x 1 1 x 1 x x x x K 0 1.. Neve Esercizi Digitali 21
Il relativo circuito risulta il seguente: Il grafo che descrive l evoluzione degli stati è invece il seguente: 111 ome si può notare, la scelta pur casuale delle condizioni non specificate, è stata tale da non generare alcun anello di conteggio secondario e quindi il contatore è antiblocco. 100 000 001 011 010 110 101 Si evidenzia che, con una scelta sfortunata dei sottocubi sulle mappe di Karnaugh il risultato finale sarebbe risultato fallimentare come si può notare in seguito:.. Neve Esercizi Digitali 22
0 0 0 1 0 1 x x x x J 2 Q0Q1 0 0 1 x x 1 0 x x x J 1 Q0 0 1 x x 1 1 0 x x x J 0 Q1 Q 2 0 x x x x 1 1 x x x K 2 Q 0Q1 0 x x 1 0 1 x x x x K 1 Q0 0 x 1 1 x 1 x x x x K 0 Q1 Q 2 on queste scelte si ottiene ancora il contatore richiesto che ha però il seguente grafo degli stati: 000 110 100 001 101 111 011 010 Il contatore così ottenuto presenta però un pericoloso anello di conteggio secondario. Una tecnica più affidabile per impostare il progetto di un contatore sincrono consiste nell assegnare, fin dall inizio, le transizioni degli stati non utilizzati in modo da confluire rapidamente nell anello di conteggio principale come si può notare nella tabella successiva. In questo caso, gli stati non utilizzati vengono fatti confluire tutti nello stato iniziale 000... Neve Esercizi Digitali 23
Stato presente Stato futuro lock Q2 Q1 Q0 Q 2 Q 1 Q 0 J2 K2 J1 K1 J0 K0 0 0 0 0 0 0 1 0 x 0 x 1 x 1 0 0 1 0 1 0 0 x 1 x x 1 2 0 1 0 0 1 1 0 x x 0 1 x 3 0 1 1 1 0 0 1 x x 1 x 1 4 1 0 0 0 0 0 x 1 0 x 0 x - 1 0 1 0 0 0 x 1 0 x x 1-1 1 0 0 0 0 x 1 x 1 0 x - 1 1 1 0 0 0 x 1 x 1 x 1 0 0 0 1 0 1 x x x x J 2 Q0Q1 0 x x x x 1 1 1 1 1 K 2 1 0 0 1 x x 1 0 0 x x J 1 Q0Q 2 0 x x 1 0 1 x x 1 1 K 1 Q0 Q2 0 1 x x 1 1 0 x x 0 J 0 Q 2 0 x 1 1 x 1 x 1 1 x K 0 1.. Neve Esercizi Digitali 24
Il relativo diagramma degli stati è il seguente: 101 111 110 000 100 001 011 010.. Neve Esercizi Digitali 25
Esercizio: Realizzare un contatore sincrono modulo 6 i cui stati si evolvano in codice Gray. Sono necessari tre flip-flop. Risultando di tipo Gray, il codice di uscita dovrà essere monoprogressivo e ciclico per cui sarà necessaria una particolare attenzione nella scelta degli stati da scartare. Una possibile scelta è visibile è proposta nella seguente tabella di transizione degli stati: Stato presente Stato futuro lock Q2 Q1 Q0 Q 2 Q 1 Q 0 J2 K2 J1 K1 J0 K0 0 0 0 0 0 0 1 0 x 0 x 1 x 1 0 0 1 0 1 1 0 x 1 x x 0 2 0 1 1 1 1 1 1 x x 0 x 0 3 1 1 1 1 0 1 x 0 x 1 x 0 4 1 0 1 1 0 0 x 0 0 x x 1 5 1 0 0 0 0 0 x 1 0 x 0 x - 0 1 0 0 0 0 0 x x 1 0 x - 1 1 0 1 0 0 x 0 x 1 0 x TTENZIONE L RIEMPIMENTO DELLE MPPE 0 0 0 1 0 1 x x x x J 2 Q0Q1 0 0 1 x x 1 0 0 x x J 1 Q0Q 2 0 x x x x 1 1 0 0 0 K 2 Q 0Q1 0 x x 0 1 1 x x 1 1 K 1 Q 0 Q2 0 1 x x 0 1 0 x x 0 J 0 Q1Q 2 0 x 0 0 x 1 x 1 0 x K 0 Q1Q 2.. Neve Esercizi Digitali 26
Il grafo degli stati è il seguente: 101 110 111 100 011 000 010 001.. Neve Esercizi Digitali 27
Esercizio: Realizzare un contatore binario sincrono all indietro con modulo 7 Sono necessari tre flip-flop. In questo esempio, lo stato non utilizzato è quello 000. La tabella di transizione degli stati risulta la seguente: Stato presente Stato futuro lock Q2 Q1 Q0 Q 2 Q 1 Q 0 J2 K2 J1 K1 J0 K0 0 1 1 1 1 1 0 x 0 x 0 x 1 1 1 1 0 1 0 1 x 0 x 1 1 x 2 1 0 1 1 0 0 x 0 0 x x 1 3 1 0 0 0 1 1 x 1 1 x 1 x 4 0 1 1 0 1 0 0 x x 0 x 1 5 0 1 0 0 0 1 0 x x 1 1 x 6 0 0 1 1 1 1 1 x 1 x x 0-0 0 0 x x x x x x x x x TTENZIONE L RIEMPIMENTO DELLE MPPE 0 x 1 0 0 1 x x x x J 2 Q1 0 x 1 x x 1 1 0 x x J 1 Q 0 Q 2 0 x x x x 1 1 0 0 0 K 2 Q 0Q1 0 x x 0 1 1 x x 0 1 K 1 Q 0 0 x x x 1 1 1 x x 1 J 0 1 0 x 0 1 x 1 x 1 1 x K 0 Q1 Q2.. Neve Esercizi Digitali 28
Il relativo grafo degli stati è il seguente: 100 101 110 011 111 000 010 001.. Neve Esercizi Digitali 29
Esercizio: Realizzare un contatore binario sincrono in avanti con modulo 10 e privo di anelli secondari di conteggio. Sono necessari quattro flip-flop. Una conveniente assegnazione degli stati esclusi risulta essere la seguente: 0110 0111 1000 1001 1100 0101 0000 1111 1101 0100 0011 0010 0001 1110 1011 1010 Stato presente Stato futuro lock Q3 Q2 Q1 Q0 Q 3 Q 2 Q 1 Q 0 J3 K3 J2 K2 J1 K1 J0 K0 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 1 0 x 0 x 1 x 9 1 0 0 1 0 0 0 0 x 1 0 x 0 x x 1-1 0 1 0 1 0 1 1 x 0 0 x x 0 1 x - 1 0 1 1 0 1 0 0 x 1 1 x x 1 x 1-1 1 0 0 1 1 0 1 x 0 x 0 0 x 1 x - 1 1 0 1 0 1 0 0 x 1 x 0 0 x x 1-1 1 1 0 1 1 1 1 x 0 x 0 x 0 1 x - 1 1 1 1 0 0 0 0 x 1 x 1 x 1 x 1.. Neve Esercizi Digitali 30
Q3 00 0 0 0 0 01 0 0 1 0 11 x x x x 10 x x x x J 3 Q0Q1Q 2 Q3 00 x x x x 01 x x x x 11 0 1 1 0 10 0 1 1 0 K 3 Q0 Q3 00 0 0 1 0 01 x x x x 11 x x x x 10 0 0 1 0 J 2 Q0Q1 Q3 00 x x x x 01 0 0 1 0 11 0 0 1 0 10 x x x x K 2 Q0Q1 Q3 00 0 1 x x 01 0 1 x x 11 0 0 x x 10 0 0 x x J 1 Q0Q 3 Q3 00 x x 1 0 01 x x 1 0 11 x x 1 0 10 x x 1 0 K 1 Q0 Q3 00 1 x x 1 01 1 x x 1 11 1 x x 1 10 1 x x 1 J 0 1 Q3 00 x 1 1 x 01 x 1 1 x 11 x 1 1 x 10 x 1 1 x K 0 1.. Neve Esercizi Digitali 31
ome si può notare, il circuito finale è dotato di una uscita ausiliaria di riporto per il collegamento in cascata di più contatori decadi di conteggio, di un ingresso di reset generale e di un ingresso di abilitazione al conteggio. Si evidenzia la particolare semplicità del circuito grazie alla opportuna scelta delle transizioni assegnate agli stati non utilizzati... Neve Esercizi Digitali 32
Esercizio: Progettare un sistema che sia in grado di gestire tre pulsanti per tre concorrenti di un telequiz e funzioni nel seguente modo: Quando un concorrente schiaccia il suo pulsante prima degli altri due, si accende su un display il numero ad esso associato 1,2,3 e contemporaneamente viene inibito il funzionamento degli altri due pulsanti. Il sistema deve essere poi dotato di un quarto pulsante per il presentatore il cui azionamento faccia spegnere totalmente il display e riabiliti il funzionamento dei tre pulsanti. In linea di principio, il sistema dovrebbe utilizzare un numero di flip-flop almeno uguale al numero di concorrenti. Le uscite dei flip-flop, adeguatamente codificate dovrebbero pilotare un driver D- 7segmenti e, contemporaneamente, inibire il funzionamento degli altri due pulsanti ad eccezione di quello per il reset generale. Una possibile soluzione è proposta nel circuito seguente. Il sistema può essere resettato attivando il pulsante di RESET il quale genera uno zero logico sigli ingressi di clear dei tre flip-flop. In queste condizioni, le tre uscite Q 1, Q 2, Q 3 sono all 1 logico abilitando cos le tre porte ND a lasciar passare gli impulsi provenienti dai tre pulsanti. L attivazione di uno qualsiasi dei tre pulsanti manderà all 1 logico l uscita Q del flip-flop associato ed a zero quella negata la quale, a sua volta, adrà a bloccare le uscite delle tre porte ND e quindi la funzionalità dei restanti pulsanti... Neve Esercizi Digitali 33
Esercizio: Generatore digitale di numeri peudo casuali. La generazione di numeri pseudo casuali si ottiene facendo uso di registri a scorrimento shift register retroazionati riportando cioè in ingresso un segnale proveniente dalla combinazione dei bit di uscita. Un registro a scorrimento di M bit viene pilotato con un clock a frequenza fo. L ingresso del registro a scorrimento viene pilotato dall uscita di una porta ex-or i cui ingressi sono collegati alle uscite del registro a scorrimento N e M una delle quali è sempre l ultimo bit M. La lunghezza massima della sequenza di numeri così ottenibile è pari a 2 M -1 poiché lo stato formato da tutti zero bloccherebbe la generazione dei numeri. Questo valore della lunghezza della sequenza può essere ottenuto solo con una opportuna scelta dei valori di N ed M. Una volta generata l intera sequenza, questa tornerà a ripetersi in modo periodico. La tabella seguente descrive i valori di M ed N e le relative lunghezze delle sequenze ottenibili. M N Lunghezza 4 3 15 5 3 31 6 5 63 7 6 127 9 5 511 10 7 1023 11 9 2047 15 14 32767 20 17 1048575 25 22 33554431 31 28 2147483647 35 33 34359738367 39 35 549755813887 1 2 3 N M Nel caso in cui si volessero utilizzare dei registri di dimensione multipla di 8 bit, si dovranno utilizzare più di due linee di retroazione come descritto dalla seguente tabella. M N1 N2 N3 Lunghezza 8 4 5 6 255 16 4 13 15 65535 24 17 22 23 16777215 Nelle figure seguenti sono proposti i circuiti di due generatori di numeri pseudo casuali rispettivamente ad 8 e 16 bit... Neve Esercizi Digitali 34
.. Neve Esercizi Digitali 35
Esercizio: Realizzare il circuito di pilotaggio di un motore passo-passo unipolare. Un motore passo-passo unipolare è costituito da quattro avvolgimenti la cui alimentazione consente lo spostamento o il bloccaggio del rotore. L alimentazione delle quattro fasi, per mezzo della modalità Full Step, deve avvenire secondo opportune sequenze applicate attraverso i quattro transistor che operano in regime ON-OFF. Nella tabella seguente è descritta la sequenza degli stati assunti dai quattro avvogimenti: Step Q1 Q2 Q3 Q4 1 ON OFF ON OFF 2 ON OFF OFF ON 3 OFF ON OFF ON 4 OFF ON ON OFF W W Il relativo diagramma temporale è il seguente: Q1 Q2 Q3 Q4 t t t t W W secondo dell evoluzione della sequenza degli stati, la rotazione potrà essere oraria W oppure antiorario W. Dal diagramma temporale si può anche notare che: lo stato Q2 è il negato dello stato Q1 e lo stato Q4 è invece il negato dello stato Q3. iò implica che, le quattro fasi potranno essere prelevate dalle uscite di solo due flip-flop e che i segnali da generare saranno soltanto Q1 e Q3.. Neve Esercizi Digitali 36
i fini della progettazione del contatore le quattro fasi ora esaminate saranno così indicate: Q 1 Q1 Q 2 Q1 Q 3 Q0 Q 4 Q 0 Le uscite dei due flip-flop avranno le seguenti sequenze temporali: Q1 1 1 0 0 Q0 0 1 1 0 Dalle quali otterremo i seguenti grafi degli stati di due distinti contatori: 01 01 00 W 11 00 W 11 10 10 La tabella di transizione del primo contatore W è la seguente: Q1 Q0 Q1 Q0 J1 K1 J0 K0 1 0 1 1 x 0 1 x 1 1 0 1 x 1 x 0 0 1 0 0 0 x x 1 0 0 1 0 1 x 0 x Dalla quale si ottiene: J 1 Q 0 K 1 Q0 J 0 Q1 K 0 Q1 La tabella di transizione del secondo contatore W è la seguente: Q1 Q0 Q1 Q0 J1 K1 J0 K0 1 0 1 1 x 1 0 x 1 1 0 1 0 x 1 x 0 1 0 0 1 x x 0 0 0 1 0 x 0 x 1 Dalla quale si ottiene: J 1 Q0 K 1 Q 0 J 0 Q1 K 0 Q1 Osservando i risultati ottenuti per i due tipi di contatori, si può notare dalle simmetrie dei valori che non sarà necessario realizzare due circuiti separati ma, basterà aggiungere un selezionatore sulle uscite dei due fòip-flop così da poter riportare sugli ingressi K le uscite Q o Q negata. L ingresso J è invece uguale al valore di K negato. L ingresso si selezione sarà utilizzato per controllare il verso di rotazione del motore. Nella figura seguente è proposto lo schema completo... Neve Esercizi Digitali 37
Un circuito alternativo ma più efficiente è invece il seguente... Neve Esercizi Digitali 38