I sommatori S R. R in. Full. Adder

Documenti analoghi
Es. 05. Addizionatori (Half Adder, Full Adder); sommatori a n bit (con e. complemento a due e sottrazione; overflow.

Unità Aritmetico-Logica

Aritmetica binaria e circuiti aritmetici

Reti Logiche 1. Prof. B. Buttarazzi A.A. 2009/2010. Circuiti Addizionatori

La rappresentazione dei numeri. La rappresentazione dei numeri. Aritmetica dei calcolatori. La rappresentazione dei numeri

Aritmetica dei calcolatori. La rappresentazione dei numeri

Appunti di informatica. Lezione 3 anno accademico Mario Verdicchio

Moltiplicatori HW e ALU

Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Corso di Laurea in Ingegneria Medica Operazioni logiche

Sommatori e Moltiplicatori

Lezione 7 Sommatori e Moltiplicatori

Rappresentazione di numeri relativi (interi con segno) Rappresentazione di numeri interi relativi (con N bit) Segno e Valore Assoluto

Esercitazione Informatica I (Parte 1) AA Nicola Paoletti

Appunti di informatica. Lezione 4 anno accademico Mario Verdicchio

Sommatori e Moltiplicatori

Elementi di Informatica

Circuiti combinatori notevoli

Circuiti Combinatori

SOMMA IN MODULO E SEGNO Sia

Componenti notevoli combinatori

Progetto di Circuiti Aritmetici

Moduli Combinatori. Moduli Combinatori. Corso di Architetture degli Elaboratori

Architettura degli Elaboratori A Modulo 2

Addizionatori: metodo Carry-Lookahead. Costruzione di circuiti combinatori. Standard IEEE754

Informazione binaria: - rappresentazione dei numeri naturali e interi relativi -

Progetto di Circuiti Aritmetici

senza stato una ed una sola

Come realizzate un AND a tre ingressi utilizzando solo porte NAND? Disegnate lo schema circuitale.

Architetture aritmetiche

Lezione 7 ALU: Moltiplicazione e divisione

Arithmetic and Logic Unit e moltiplicatore

Componenti per l aritmetica binaria

Circuiti di base e ALU. Lorenzo Dematte

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012

Rappresentazione. Notazione in complemento a 2. Complemento a due su 3 e 4 bit Complemento a due

Codifica e aritmetica binaria

$GGL]LRQDWRULPHWRGR &DUU\/RRNDKHDG

NUMERI NATURALI: INTERVALLO DI VALORI RAPPRESENTABILI INFORMAZIONI NUMERICHE

I.4 Rappresentazione dell informazione - Numeri con segno

una rete combinatoria è un circuito logico avente n ingressi (x 1

Rappresentazione dei numeri interi in un calcolatore

Rappresentazione dei numeri interi in un calcolatore. Rappresentazione dei numeri

Università degli Studi di Cassino

Aritmetica in complemento a due. 29 settembre 2017

Notazione posizionale. Codifica binaria. Rappresentazioni medianti basi diverse. Multipli del byte

Conversione di base. Conversione decimale binario. Si calcolano i resti delle divisioni per due

Architettura degli Elaboratori

Codifica binaria. Rappresentazioni medianti basi diverse

Rappresentazione dei numeri

Reti combinatorie. Reti combinatorie (segue)

ARITMETICA BINARIA. La somma viene eseguita secondo le regole per la somma di due bit, di seguito riportate:

Aritmetica dei Calcolatori

Unita aritmetica e logica. Input e output della ALU. Rappresentazione degli interi. Rappresentazione in modulo e segno. Aritmetica del calcolatore

Un ripasso di aritmetica: Rappresentazione decimale - limitazioni

Esame di INFORMATICA (*) Operazioni Aritmetiche: Somma. Lezione 3. Operazioni Aritmetiche: Somma. Operazioni Aritmetiche: Somma

anno scolastico 2009 / 2010 ELETTRONICA per Elettrotecnica ed Automazione

Interi positivi e negativi

Rappresentazione dei numeri interi in un calcolatore

Università degli Studi di Cassino

Rappresentazione dell Informazione

Esercitazioni di Reti Logiche. Lezione 4

Numeri con segno ed in virgola

Algebra di Boole. Fondamenti di Informatica per Meccanici Energetici - Biomedici 1. Politecnico di Torino Ottobre Mr. Boole. Variabile booleana

Architettura degli elaboratori - 2 -

04 Aritmetica del calcolatore

Anno Accademico Lezione 10 : Conversione di Base (p. 3) Lunedì 6 Dicembre 2010

Tutorato architettura degli elaboratori modulo I (lezione 1)

Rappresentazione dell informazione

Moltiplicazione e ALU

Componenti di un sistema digitale

CONVERSIONE BINARIO DECIMALE NB: Convertire in decimale il numero binario N = N =

Esercitazioni di Reti Logiche. Lezione 1 Rappresentazione dell'informazione. Zeynep KIZILTAN zkiziltan@deis.unibo.it

Rappresentazione numeri con e senza segno ([PH] par. 2.4) Giovedì 1 ottobre 2015 (ore 9-13)

Modulo e segno Complemento a 1 (CA1) Complemento a 2 (CA2)

Esercitazioni su rappresentazione dei numeri e aritmetica dei calcolatori

Progetto di Contatori sincroni. Mariagiovanna Sami Corso di reti Logiche 8 Anno

Numeri interi (+/-) Alfabeto binario. Modulo e segno

Il Livello Logico-Digitale. Blocchi funzionali combinatori

Complementi ed Esercizi di Informatica Teorica II

Reti Logiche Combinatorie

Rappresentazione dell informazione

La codifica dei numeri

TECNOLOGIA DIGITALE. CPU, memoria centrale e dispositivi sono realizzati con tecnologia elettronica digitale

UNIVERSITÁ POLITECNICA DELLE MARCHE

1.2f: Operazioni Binarie

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dei numeri relativi

Le operazioni. di somma. e sottrazione

Modulo: Elementi di Informatica

circuiti combinatori: ALU

Calcolatori Elettronici

Virtual CPU (Eniac): parte 2

Aritmetica dei Calcolatori 2

Unità aritmetica e logica

Cap. 2 - Rappresentazione in base 2 dei numeri interi

Transcript:

I sommatori 1) ddizionatore Half dder (senza riporto in ingresso): 0 0 0 0 0 1 1 1 Half dder = = N.Porte = 2 Cammino Critico = 1, = 1 2) ddizionatore Full dder ( con riporto in ingresso ): in out 0 0 0 0 0 0 0 1 0 0 1 1 0 1 1 0 1 1 1 1 1 1 in Full dder out out in N.Porte = 7 Cammino Critico = 3, = 3 out = ~ in ~ + ~ in ~ + in ~~ + in = ~ in (~ + ~) + in (~~ + ) = ~ in ( ) + in ~ ( ) = ~ in + in ~ + in ~ + in = (~ in + in ) + in (~ + ~) = + in ( ) Nota: ~~ + = ~~ + = ~(~(~~ + )) = ~(~(~~) ~ ( )) = ~((~~+~~) (~+~)) =~((+) (~+~)) = ~((~+~)+(~+~)) =~(~+~+~+~) = ~(~+~) = ~ ( ) emplificazione circuitale: = ~ in ( ) + in ~ ( ) = in ( ) in out N.Porte = 5 Cammino Critico = 2, = 3 Nota: le porte ND e la O possono essere pensate come gate che lasciano passare il segnale presente su un terminale in funzione del segnale presente sull altro. Diversamente le porte XO si comportano come invertitori : il segnale presente su un terminale viene lasciato passare o invertito a seconda del segnale presente sull altro.

3) ommatore ad n bit (senza riporto in ingresso) E possibile realizzare un sommatore ad n bit usando un H e n-1 F collegati in cascata. H F F F Il cammino critico è quello definito dalla propagazione dei riporti dal primo modulo all ultimo. e si esamina il circuito dei F si nota che la porta XO e le porta ND colegate direttamente agli ingressi a i b i si stabilizzano tutte nella prima unità di tempo. Ne segue che per propagare il riporto dall'ingresso in all'ingresso out di ogni sommatore occorrono due unità di tempo per ogni F. a 0 b 0 a 1 b 1 a 2 b 2 a 3 b 3 r 3 s 0 s 1 s 2 s 3 Il cammino critico quindi per questo sommatore è 1 + 2 * (n-1) dove n è il numero di bit da sommare. Nota: per i fini del corso potete considerare gli F come un modulo monolitico in cui la propagazione del riporto avviene sempre 3 cicli dopo la stabilizzazione di tutti gli ingressi. In questo caso quindi il cammino critico del circuito risulta 1+3*(n-1) = 3*n -2.

4) ommatore ad n bit (con riporto in ingresso) Normalmente si preferisce adottare un F anche per il primo modulo. Questo permette di mettere in cascata più sommatori e di realizzare semplicemente un sottrattore binario in complemento a due (vedi più avanti). F F F F s 3 In questo caso quindi il cammino critico è 3 + 2 * (n-1) = 1+2*n poiché al primo F occorrono 3 unità di tempo per generare il primo riporto. Nota: per i fini del corso potete considerare gli F come un modulo monolitico in cui la propagazione del riporto avviene sempre 3 cicli dopo la stabilizzazione di tutti gli ingressi. In questo caso quindi il cammino critico del circuito risulta 3*n. 5) ommatori veloci: unita di Carry Look-head Il tempo di commutazione dei circuito sommatore ad n bit dipende dal tempo di propagazione del riporto dalla coppia di bit meno significativa alla coppia di bit più significativa. e riusciamo a prevedere il riporto r i che sarà sommato ad ogni coppia di bit prima che avvenga la propagazione dallo stadio precedente possiamo accelerare il processo di somma. i tratta di anteporre,o meglio affiancare al circuito sommatore un unità di Carry Look-head (CL), di previsione del riporto. CL r 0 r 1 r 2 r -1 F F F F Consideriamo il generico sommatore Full-dder ad un bit in posizione i-esima. Il suo cammino critico è determinato dal calcolo del resto in uscita: r i = a i b j + r i-1 (a i b i ) = g i + r i-1 p i

Il termine a i b j = g i calcola se nello stadio i-esimo verrà generato un riporto mentre il termine a i b i = p i calcola se il riporto dello stadio precedente verrà propagato a quello successivo. Da notare che tutti questi termini possono essere calcolati in parallelo con cammino critico uguale a 1. Per il circuito in esempio quindi vale: viluppando: r 0 = g 0 + r -1 p 0 e r 1 = g 1 + r 0 p 1 r 1 = g 1 + r 0 p 1 = g 1 + (g 0 + r -1 p 0 ) p 1 = g 1 + g 0 p 1 + r -1 p 0 p 1 cioè si verifica un riporto r 1 nello stadio 1 se viene generato nello stadio stesso ( termine g 1 ) oppure se si verifica nel precedente e viene propagato dallo stadio attuale ( g 0 p 1 ) oppure se c era un riporto in ingresso e i due stadi iniziali lo hanno propagato (r -1 p 0 p 1 ). Da notare che il riporto r 1 con questa forma algebrica può essere calcolato senza tenere conto del risultato degli stadi F, al contrario di come accade con i sommatori a propagazione di riporto. viluppiamo ora i riporti successivi: r 2 = g 2 + r 1 p 2 = g 2 + (g 1 + g 0 p 1 + r -1 p 0 p 1 ) p 2 = g 2 + g 1 p 2 + g 0 p 1 p 2 + r -1 p 0 p 1 p 2 r 3 = g 3 + r 2 p 3 = g 3 + (g 2 + g 1 p 2 + g 0 p 1 p 2 + r -1 p 0 p 1 p 2 ) p 3 = g 3 + g 2 p 3 + g 1 p 2 p 3 + g 0 p 1 p 2 p 3 + r -1 p 0 p 1 p 2 p 3 iepilogando, un CL a 4 bit deve realizzare le seguenti funzioni booleane: r 0 = g 0 + r -1 p 0 r 1 = g 1 + g 0 p 1 + r -1 p 0 p 1 r 2 = g 2 + g 1 p 2 + g 0 p 1 p 2 + r -1 p 0 p 1 p 2 r 3 = g 3 + g 2 p 3 + g 1 p 2 p 3 + g 0 p 1 p 2 p 3 + r -1 p 0 p 1 p 2 p 3 Calcoliamo il cammino critico per queste funzioni: dividiamo gli operatori inserendo una coppia di parentesi in modo da avere solo operatori binari e valutiamo il numero massimo di parentesi aperte nel punto più profondo: r 0 = [g 0 + (r -1 p 0 )] C.Critico = 2 (+1) Tempo necessario per calcolare i termini p i e g i r 1 = {[g 1 + (g 0 p 1 )] +[r -1 (p 0 p 1 )]} C.Critico = 3 (+1) r 2 = ({[g 2 + (g 1 p 2 )] + [g 0 (p 1 p 2 )]} + [(r -1 p 0 )( p 1 p 2 )]) C.Critico = 4 (+1) r 3 = [{[g 3 + (g 2 p 3 )]+ [g 1 ( p 2 p 3 )]}+ ([(g 0 p 1) (p 2 p 3 ) ]+ {[r -1 (p 0 p 1 )]( p 2 p 3 )})] C.Critico = 5 (+1) Tutti questi riporti possono essere calcolati in parallelo quindi il cammino critico più lungo è quello corrispondente a r 3 pari a 6 (il +1 indica il tempo di calcolo dei termini g i ed r i ). Calcoliamo il cammino critico per s i : s i = (a i b i ) r i-1 = [ p i (r i-1 )] C.Critico = C.Critico(r i-1 ) + 1

Ne segue che il cammino critico più lungo per il calcolo del risultato corrisponde al calcolo di s 3 ed è pari a 6, come per il calcolo di r 3. Da quanto visto, ne segue che il cammino critico complessivo per un sommatore a 4 bit con CL è pari al cammino critico per r 3 (o anche a quello di s 3 ) che è 6. Un corrispondente sommatore classico senza anticipazione di riporto ha cammino critico 1+2*4 = 9 (da cui la dicitura sommatore veloce!!). La complessità di circuito di un unità CL aumenta all aumentare del numero di bit da trattare. Questo rende economico sviluppare sommatori veloci solo per basse cardinalità di bit e se necessario utilizzare questi sommatori come blocchi per sommatori modulari di più grandi dimensioni: Ex: un sommatore a 16 bit può essere realizzato con 4 moduli CL a 4 bit: a 0 :a 3 b 0 :b 3 a 4 :a 7 b 4 :b 7 a 8 :a 11 b 8 :b 11 a 12 :a 15 b 12 :b 15 r -1 F-CL 4 bit r 3 r 7 r 11 F-CL 4 bit F-CL 4 bit F-CL 4 bit s 0 :s 3 s 4 :s 7 s 8 :s 11 s 12 :s 15 r 15 Il cammino critico è 4 * 6 = 24. Il cammino critico del sommatore classico è 1+16 * 2 = 33. 6) ottrattori ad n bit In binario la sottrazione ad n bit (con segno) può essere realizzata con una somma secondo la regola: = + ~ + 1 dove ~ è l inversione bit a bit del secondo termine. dottando un sommatore con riporto in ingresso è possibile realizzare un sottrattore binario a n bit in questo modo: ettando il riporto in ingresso ad 1 si ottiene implicitamente la somma della costante 1. 1 F F F F

7) Problema dell overflow Nel caso che il risultato di un addizione con segno ecceda il limite di rappresentazione della dimensione della parola si verifica un errore di segno (Overflow). Esempio: 19 10 + 15 10 = 34 10 se eseguita in aritmetica binaria con segno a 6 bit dà come risultato: 1 1 1 1 1 0 0 1 1 + 0 0 1 1 1 1 = 1 1 1 0 10011 2 + 0 01111 2 = 0010 2 che in rappresentazione in complemento a due è un numero negativo, precisamente - 11110 2 = -30 10. nalogamente si verifica lo stesso effetto di riporto errato sul bit di segno quando si sommano due numeri negativi in valore assoluto troppo grandi: Ex: -17 10 + -19 10 = -35 10, se eseguita in aritmetica binaria con segno a 6 bit dà come risultato: -17 10 = - 10001 2 (M&) = 101111 2 (C2) -19 10 = - 10011 2 (M&) = 101101 2 (C2) 1 1 1 1 1 1 1 1 1 1 + 1 1 = 1 1 1 1 1 1 1111 2 + 1101 2 = 0 11100 2 che è un numero positivo, precisamente +28 10. Nel caso di somme miste, negativo con positivo e viceversa, questo problema non si pone poiché il risultato in valore assoluto sarà sempre al più grande come il più grande in valore assoluto dei due termini sommati.

Circuito per rilevare l overflow: Da quanto visto sopra ne segue che l overflow si verifica solo nei seguenti due casi: egno di = 0 e egno di = 0 e egno del risultato = 1 oppure egno di = 1 e egno di = 1 e egno del risultato = 0 Tenendo presente il circuito Full-dder a n bit, F F F F il circuito che realizza questo controllo deve sintetizzare la seguente forma tabellare: s n-1 a n-1 b n-1 Overflow 0 0 0 0 0 0 0 0 0 1 1 1 0 1 1 0 1 1 In forma OP si può scrivere: O = ~s n-1 a n-1 b n-1 + s n-1 ~a n-1 ~b n-1 F F F F O Per realizzare le porte ND a tre ingressi occorrono due porte in cascata. Ne segue che il cammino critico di questo circuito per l overflow ha cammino critico 2 (le due porte ND a tre ingressi eseguite in parallelo) più la porta O per un totale di 3.

i può fare di meglio (assegnamo per comodità = n-1 =a n-1 =b n-1 ): O = ~ + ~~ = ~~ + ~~ x = xx = ~~ + 0 + 0 + ~~ x=x+0 = ~~ + ~~ + ~~ + ~~ 0 =x ~x, x=xy = (~ + ~)~ + ~(~ + ~) xy+xz=x(y+z) = ( ) ~ + ~( ) ~xy + x~y=x y = ( ) (~ + ~) xy+xz=x(y+z) = ( ) ( ) ~xy + x~y=x y che ha cammino critico pari a 2. Ne segue che il cammino critico di un circuito Full-dder con rilevamento dell overflow definito dal tempo necessario per propagare i segnali in ingresso al circuito di rilevamento dell overflow più il cammino critico del circuito stesso: F F F F O Cammino critico: primi n-1 stadi + ultimo stadio + Overflow = 1+2(n-1) + 2 + 2 = 2(n+1) + 1 Nota: Le porte XO in questo caso si comportano come invertitori a comando: quando è a 0 permettono ad e di giungere inalterati alla porta ND e di realizzare la parte alta della forma tabellare mentre quando è uguale ad 1 invertono e realizzando la parte bassa, cioè ~~. Nota: Il cammino critico del F non passa più per l ultimo resto poiché, dati i termini precedenti, il cammino critico per avere il bit di somma più il tempo del circuito di overflow, in totale 4, è maggiore del cammino critico per calcolare quest ultimo resto, come visto sopra pari a 3.