Esercitazioni pratiche di elettronica/Logica Combinatoria/Sommare due parole di 4 bit: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Rdgmus (discussione | contributi)
Nessun oggetto della modifica
Rdgmus (discussione | contributi)
Nessun oggetto della modifica
Riga 1:
{{Esercitazioni pratiche di elettronica}}
 
='''sommatore completo a 4 bit di tipo RIPPLE CARRY'''=
 
In questa lezione procederemo ad implementare un '''sommatore completo a 4 bit di tipo RIPPLE CARRY'''
Line 5 ⟶ 7:
Trattasi di un sommatore più lento rispetto alla versione LOOK-AHEAD-CARRY.
 
**=='''Lo schema'''==
 
[[Immagine:sum4bit_1.jpg]]
Line 11 ⟶ 13:
La somma delle due parole a bit, '''A[3:0]''' e '''B[3:0],''' viene effettuata ponendo in cascata 4 '''Full-Adder''', collegati in modo che il riporto della cifra precedente, '''CYOUT''', venga inviato all'ingresso di riporto, '''CYIN''', della cifra successiva. L'uscita sarà ancora una parola a 4 bit, '''SUM[3:0]''', più l'ultimo riporto in uscita, '''CYOUT''', ottenendo così un totale di 5 bits in uscita.
 
**'''Non dimenticare mai il riporto in uscita ad una somma se non si vogliono perdere cifre significative.'''
Questo risultato è congruente con il fatto che 4 bits contengono i numeri da 0 a 15 e che sommando due parole di 4 bits potremmo ottenere al massimo, quale risultato, il numero 30 che pùo essere contenuto in un numero di almeno 5 bits.
 
 
 
***=='''Bus e Tap'''==
 
[[Immagine:sum4bit_2.jpg]]
Line 34 ⟶ 36:
'''NOME_DEL_BUS[MIN_INDEX:MAX_INDEX]'''
 
***=='''Riporto precedente alla cifra successiva'''==
 
[[Immagine:sum4bit_3.jpg]]
Line 41 ⟶ 43:
Da questa immagine si vede come il riporto in uscita dalla somma della prima cifra, effettuata col primo sommatore, '''CYOUT''', viene inviato all'ingresso del sommatore per le cifre di peso successivo all'ingresso di riporto '''CYIN'''.
 
***=='''Somma + Riporto'''==
 
[[Immagine:sum4bit_4.jpg]]
Line 47 ⟶ 49:
Qui sono evidenziati il BUS somma, SUM[3:0] ed il riporto in uscita dall'ultimo sommatore.
 
***=='''Il riporto in ingresso alla cifra di peso zero viene forzato a GND''' ==
 
[[Immagine:sum4bit_5.jpg]]
Line 54 ⟶ 56:
 
 
**=='''La piedinatura'''==
 
Si effettua ora la piedinatura dello schema creando un nuovo file sorgente di tipo '''IMPLEMENTATION CONSTRAINTS FILE'''. Assegneremo il '''BUS A[3:0]''' a 4 switch ed il '''BUS B[3:0]''' a gli altri 4 switch rimanenti; per le uscite faremo in modo di inviare il '''BUS SUM[3:0]''' a 4 LED ed useremo un quinto LED per il riporto in uscita.
Line 60 ⟶ 62:
[[Immagine:sum4bit_ucf.jpg]]
 
**=='''L'implementazione e il test'''==
 
***Dopo aver effettuato il caricamento del file di programma, '''sum4bit.jed''' all'interno del device, settare i switch in modo da assegnare a ciascun bus d'ingresso, A[3:0] e B[3:0], un valore numerico da 0 a 15 a scelta.
 
***Osservare la configurazione binaria dei LEDs; il risultato ottenuto è esatto?
 
***Rispondere più volte a questa domanda con diverse configurazioni dei bus, in modo da controllare l'esatto funzionamento del sommatore.
 
 
**=='''La simulazione'''==
 
[[Immagine:sum4bit_sim.jpg]]