Esercitazioni pratiche di elettronica/Logica Combinatoria/Il Sommatore completo o Full-Adder
FULL ADDER
modificaCosa succede se dobbiamo sommare parole aventi più di un bit?
modificaSi dice parola un numero binario avente più di una cifra, avremo generalmente a che fare con parole di 4, 8 16, 32 o più bit. Se abbiamo quindi parole con più di un bit, da sommare tra di loro, dobbiamo innanzitutto tenere conto dell'eventuale riporto CY ottenuto dalla somma della parola precedente, come facciamo quando si effettua una somma in base 10, per cui oltre che sommare i bit dello stesso peso, tra di loro, si dovrà sommare al risultato ottenuto, cioè al SUM, il riporto CY ottenuto dalla somma dei bit di peso minore sommati precedentemente?
Come abbiamo visto nel Semisommatore, CY può assumere anche il valore 1 logico, e dobbiamo aggiungerlo alla somma dei bit di peso successivo, altrimenti avremo un risultato errato.
È necessario, quindi, tenere conto nella somma di due bit dello stesso peso, del riporto precedente, e dunque dovremo realizzare un sommatore, detto Sommatore Completo o Full-Adder, apportando dei miglioramenti all' Half-Adder visto prima.
Costruiamo quindi la tabella di verità di un sommatore completo, un blocco di logica combinatoria avente come ingressi tre bits, i bit da sommare e il riporto precedente, che avrà come uscite la somma ed un riporto successivo, da sommare ai bits di peso successivo.
Chiamiamo A, e B i bit da sommare, CYIN il riporto precedente, o CARRY INPUT, e CYOUT o CARRY OUTPUT il riporto successivo, e continuiamo a chiamare SUM il risultato della somma. La nostra tabella della verità sarà dunque, un'estensione della tabella della verità del Semisommatore dove avremo un riporto precedente o CYIN che può assumere i valori 0 o 1 logico.
Tabella di verità del Semisommatore
modificaB | A | SUM | CY |
---|---|---|---|
0 | 0 | 0 | 0 |
0 | 1 | 1 | 0 |
1 | 0 | 1 | 0 |
1 | 1 | 0 | 1 |
Blocco generico del Semisommatore
modificaTabella di verità del Sommatore Completo o con riporto
modificaCyIn | B | A | SUM | CyOut |
---|---|---|---|---|
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 |
Come vedete, le prime quattro righe della tabella sono identiche a quelle del Semisommatore avente un riporto precedente, sottinteso, uguale a 0. Nelle ultime quattro righe invece si aggiunge alla somma ottenuta, il riporto che qui è uguale ad 1, il che produce dei risultati differenti.
Blocco generico del Sommatore Completo
modifica
Sintesi dello schema in logica combinatoria
modificaOra per costruire lo schema relativo a questa tabella possiamo procedere in due maniere differenti:
Costruendo la funzione booleana
modificaQuesto è il metodo analitico.
Funzione SUM
modifica
Funzione CYOUT
modifica
Schema realizzato col procedimento analitico
modificaUtilizzando due semisommatori in cascata
modificaQuesto è il metodo intuitivo. Il primo semisommatore per sommare A e B ottenendo una somma ed un riporto, il secondo per sommare alla somma così ottenuta, il riporto precedente.
Schema realizzato col procedimento intuitivo
modificaEsplodendo lo schema si ottiene lo stesso schema ottenuto col procedimento analitico
modifica