Esercitazioni pratiche di elettronica/Logica Combinatoria/Il Semisommatore o Half-Adder

Da testwiki.
Vai alla navigazione Vai alla ricerca

Template:Esercitazioni pratiche di elettronica

HALF ADDER

La porta XOR - OR esclusivo

Analizziamo innanzitutto il funzionamento di una porta XOR, in quanto risulterà utile nella trattazione del Semisommatore o Half-Adder:

File:Xor 1.jpg

Tabella di verità

La porta ha la seguente tabella della verità:

A1 A0 Y
0 0 0
0 1 1
1 0 1
1 1 0

Dove si nota che l'uscita assume il valore 1 logico sole se gli ingressi non sono uguali.

Simulazione

File:Xor 2.jpg


La somma aritmetica

A differenza della somma logica, effettuare la somma aritmetica vuol dire operare come per la somma in base 10, tenendo conto anche di un eventuale riporto che chiameremo CY; se la somma viene effettuata ad una cifra numerica, il riporto interverrà quando la somma supera o eguaglia la base, e nel caso della base 2, effettuando la somma ad una sola cifra (ovvero ad un solo bit per volta) avremo il riporto quando la somma supera 1.

Somma in base 2 ad un solo bit con riporto CY

Tabella di verità del Semisommatore

B0 A0 SUM CY
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1

Come vedete ci troviamo di fronte ad un blocco di logica combinatoria con due ingressi: B0 e A0, e due uscite: SUM (la somma) e CY (il riporto). Dovremo quindi realizzare due funzioni booleane distinte, una per ogni uscita del nostro blocco di logica combinatoria, dove ciascuna funzione booleana sarà una funzione a due ingressi ed una sola uscita.

Funzione booleana che realizza la somma - SUM

La funzione è quella che mostra le sue uscite nella terza colonna della tabella a partire da sinistra, ovvero la funzione con uscita SUM e ingressi B0 e A0; scriviamo i minterm:

B0 A0 SUM
0 0 0
0 1 1
1 0 1
1 1 0

SUM=B¯0A0+B0A¯0

E come vedete è identica alla funzione realizzata da una porta XOR.

File:Half adder 1.jpg

Funzione booleana che realizza il riporto - CY

La funzione è quella che mostra le sue uscite nella quarta colonna della tabella a partire da sinistra, ovvero la funzione con uscita CY e ingressi B0 e A0; scriviamo i minterm:

B0 A0 CY
0 0 0
0 1 0
1 0 0
1 1 1

CY=B0A0

E come vedete è identica alla funzione realizzata da una porta AND.

File:Half adder 2.jpg

Allora andiamo a realizzare lo schema del nostro blocco di logica combinatoria che realizza il Semisommatore mettendo insieme i due schemi parziali delle due separate funzioni:

Lo schema del Semisommatore

File:Half adder 3.jpg

Questo e lo schema completo di un semisommatore. Si può ora passare all'implementazione sulla scheda e a relativo test, inviando gli ingressi a due switch, ad esempio A0 a SW1 e B0 a SW2 e le uscite SUM e CY ai led LD1 e LD8.

La simulazione del semisommatore

File:Half adder 4.jpg