Organizzazione della lezione

Documenti analoghi
Unità logico-aritmetica (ALU) Architetture dei Calcolatori (Lettere. Blocchi di base per costruire l ALUl. Passi per costruire l ALUl

Unità logico-aritmetica (ALU) Unità logico-aritmetica. Passi per costruire l ALU. Blocchi di base per costruire l ALU

Circuiti digitali notevoli: ALU

Circuiti digitali notevoli: ALU

{ 1, 2,3, 4,5,6,7,8,9,10,11,12, }

Componenti per l aritmetica binaria. Motivazioni. Sommario. Sommario. M. Favalli

Semplificazione: mappe di Karnaugh Circuiti digitali notevoli: ALU

Corso di Analisi: Algebra di Base. 4^ Lezione. Radicali. Proprietà dei radicali. Equazioni irrazionali. Disequazioni irrazionali. Allegato Esercizi.

Elettronica dei Sistemi Digitali Progetto di sottosistemi in tecnologia CMOS (parte II)

Laurea triennale in Scienze della Natura a.a. 2009/2010. Regole di Calcolo

Controlli Automatici. Trasformate L e Z e schemi a blocchi. Esercizi sulle trasformate L e Z

Elettronica dei Sistemi Digitali Progetto di sottosistemi in tecnologia CMOS

Architettura degli Elaboratori

Unità 3 Metodi particolari per il calcolo di reti

Facoltà di Ingegneria

Introduzione e strumenti

SPAZI VETTORIALI. 1. Spazi e sottospazi vettoriali

2 x = 64 (1) L esponente (x) a cui elevare la base (2) per ottenere il numero 64 è detto logaritmo (logaritmo in base 2 di 64), indicato così:

, x 2. , x 3. è un equazione nella quale le incognite appaiono solo con esponente 1, ossia del tipo:

SUGLI INSIEMI. 1.Insiemi e operazioni su di essi

POTENZA CON ESPONENTE REALE

CORSO ZERO DI MATEMATICA

Il calcolo letterale

Riassunto. Riassunto. Ciclo fetch&execute. Concetto di programma memorizzato. Istruzioni aritmetiche add, sub, mult, div

Unità Aritmetico-Logica

2 Numeri reali. M. Simonetta Bernabei & Horst Thaler

CORSO ANALISI MATEMATICA 1 A.A. 2015/2016. Testo consigliato

" Osservazione. 6.1 Integrale indefinito. R Definizione (Primitiva) E Esempio 6.1 CAPITOLO 6

Esercizi sulle serie di Fourier

Linguaggi di Programmazione Corso C. Parte n.5 Automi a Stati Finiti. Nicola Fanizzi

Esercizi svolti Limiti. Prof. Chirizzi Marco.

F (r(t)), d dt r(t) dt

Siano α(x), β(x) due funzioni continue in un intervallo [a, b] IR tali che. α(x) β(x).

Area del Trapezoide. f(x) A f(a) f(b) f(x)

I radicali. Cos è un radicale? ESERCIZIO 2.1. Determina le C.E. dei seguenti radicali e delle seguenti espressioni contenenti radicali.

Le etichette nei programmi. Istruzioni di branch: beq. Istruzioni di branch: bne. Istruzioni di jump: j

Minimi quadrati e problemi di distanza minima

PRODOTTI NOTEVOLI. Esempi

Organizzazione della Memoria usata dai Processi

Differenziale. Consideriamo la variazione finita, x della variabile indipendente a cui corrisponde una variazione finita della funzione f x, f x y

Sezione Esercizi ; ; ; 1 4. f ) 13 + g ) , 100, 125; f ) 216; 8 27 ; ; e ) g ) 0; h )

Equazioni 1 grado. Definizioni Classificazione Risoluzione Esercizi

Alcune mosse che utilizzano le proprietà delle operazioni in N

VOLUMI, MASSE, DENSITÀ

Determinanti e caratteristica di una matrice (M.S. Bernabei & H. Thaler

Anno 2. Potenze di un radicale e razionalizzazione

IL CALCOLO LETTERALE: I MONOMI Conoscenze. per a = - 2 vale:

Cioè, basta considerare le due cifre meno significative della somma aritmetica (tralasciando quindi l'ultimo riporto).

Cap. 5. Rappresentazioni grafiche di modelli

BREVE APPENDICE SULLE UNITA' LOGARITMICHE

Corso di Analisi Matematica. Calcolo integrale

La scomposizione in fattori dei polinomi

Organizzazione della Memoria usata dai Processi

Complementi di Matematica e Calcolo Numerico A.A Laboratorio 10 - Integrazione numerica

Nello studio della meccanica si incontrano due principali categorie di grandezze: scalari e vettori. Cosa distingue queste quantita?

C A 10 [HA] C 0 > 100 K

IL CALCOLO LETTERALE: I MONOMI Conoscenze. per a = - 2 vale:

1. Elementi di analisi funzionale Esercizi

COLPO D ARIETE: MANOVRE DI CHIUSURA

LEZIONE 13 MINIMIZZAZIONE DEI COSTI. Condizione per la minimizzazione dei costi. Efficienza tecnica ed efficienza economica

Un circuito integrato è una piastrina di silicio (o chip), quadrata o rettangolare, sulla cui superficie vengono realizzati e collegati

Corso di Analisi Matematica Calcolo integrale per funzioni di una variabile

Capitolo 5. Integrali. 5.1 Integrali di funzioni a gradinata

Lezione 1 Insiemi e numeri

LEZIONE 20. è lineare. Per la commutatività del prodotto scalare segue anche la linearità dell applicazione

Anno 5. Applicazione del calcolo degli integrali definiti

1 Equazioni e disequazioni di secondo grado

Facoltà di Economia - Università di Sassari Anno Accademico Dispense Corso di Econometria Docente: Luciano Gutierrez.

ESPONENZIALI E LOGARITMI

Turnazione dei mezzi (vehicles-scheduling)

B8. Equazioni di secondo grado

Verifica di Fisica 04/12/2014 Argomenti trattati durante il corso:

RAPPRESENTAZIONE GRAFICA DELLA PARABOLA a ( ) { } f con, è la parabola di equazione y = ax + bx + c. Vogliamo disegnarla. 2

{ 3 x y=4. { x=2. Sistemi di equazioni

ESPONENZIALI E LOGARITMI

INTEGRALI IMPROPRI. f(x) dx. e la funzione f(x) si dice integrabile in senso improprio su (a, b]. Se tale limite esiste ma

Integrali de niti. Il problema del calcolo di aree ci porterà alla de nizione di integrale de nito.

Esercizi di Informatica Teorica

Integrale Improprio. f(x) dx =: Osserviamo che questa definizione ha senso dal momento che per ogni y è ben definito l integrale b

Erasmo Modica. : K K K

CALCOLATORI ELETTRONICI 15 aprile 2014

Titolazione Acido Debole Base Forte. La reazione che avviene nella titolazione di un acido debole HA con una base forte NaOH è:

Anno 1. Numeri reali: proprietà e applicazioni di uso comune

P8 Ponti radio terrestri e satellitari

Serie di Potenze. Introduciamo il concetto di convergenza puntuale ed uniforme per successioni. { 0 se 1 < x < 1

Architettura di tipo registro-registro (load/store)

Radicali. Definizioni Variazioni di radicali Operazioni Razionalizzazione Radicali doppi Potenze con esponente razionale Esercizi

fattibile con le tecniche elementari che imparerai in seguito. Ad esempio il polinomio

acuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1

Equazioni di 2 grado. Definizioni Equazioni incomplete Equazione completa Relazioni tra i coefficienti della equazione e le sue soluzioni Esercizi

Circuiti combinatori ALU

Laboratorio di Architettura degli Elaboratori LabArch 2007 Terzo Quadimestre, a.a Docente: H. Muccini

Lezione 7 Sommatori e Moltiplicatori

Le frazioni algebriche

TEST DI MATEMATICA. Funzioni in una, Funzioni in due variabili Integrali Equazioni differenziali. 1) Il valore del limite seguente. e e. e 1.

Aritmetica Definizioni di concetti, regole e proprietà per il 1 anno della scuola media

acuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1

7. Derivate Definizione 1

Calcolatori Elettronici

FLESSIONE E TAGLIO (prof. Elio Sacco)

Transcript:

Costruzione di un unità ritmetico-logic Orgnizzzione dell lezione Operzioni logiche Addizione e sottrzione Hlf dder e Full dder ( bit) Complemento e sottrzione Altre operzioni Set on less thn, test di uguglinz Considerzioni di efficienz ALU propgzione di riporto ALU con crry-lookhed Moltipliczione Ptterson e Hennessy Cpitolo 3: sezioni 3.3, 3.4 [fino Booth escluso] Appendice B: sezioni B.5, B.6 [Esempi Verilog esclusi] Tnenbum, complementi 2

L ALU: visione di insieme Un volt recuperti operndi di registri si può Clcolre un indirizzo di memori (lod, store) Clcolre un risultto ritmetico (dd, sub, ) Effetture confronti (slt, beq, ) Dt Register # PC Address Instruction Instruction Registers Register # ALU memory Register # Address Dt memory Dt 3 Operzioni logiche Logicl shift opertions (non le implementeremo) right (srl) left (sll) Esempio: sll $s, $s8, 3 $s8 : $s : AND e OR bitwise Esempio: nd $s3, $s, $s6 or $s4, $s, $s6 $s : $s6 : $s3 : $s4 : 4 2

Addizioni e sottrzioni Addizione: Bit bit e riporto ll cifr successiv Sottrzione: Direttmente Addizione con il complemento due Overflow: I numeri sono rppresentti con un numero fissto di bit (limitti) L somm di due numeri di segno ugule può eccedere qulsisi rppresentzione L differenz di due numeri di segno opposto può eccedere qulsisi rppresentzione 5 Operzioni logiche nell ALU Costruzione di un ALU 32 bit (mpiezz dell prol MIPS) 32 ALU d bit Primo psso: operzioni logiche Opertion b Result 6 3

Full dder sommtore d bit Chimto nche sommtore (3,2) perché h 3 ingressi e 2 uscite : riporto proveniente dll somm del bit destr : riporto diretto ll somm del bit sinistr b Sum 7 Relizzzione di un full dder Costruzione dell SdP d tbell di verità Minimizzzione Esempio: generzione di co = b ci + b ci + b ci + b ci + b ci + b ci co = b ci + ci + b L uscit Sum si gener con lo stesso procedimento Esercizio b 8 4

Relizzzione di full dder trmite hlf dder () Gener somm e riporto (crry) tr due bit Non tiene in considerzione riporto d bit meno significtivi sum = A xor B crry = A nd B 9 Relizzzione di full dder trmite hlf dder (2) A prtire dllo hlf dder sum = (A xor B) xor crryout = (A nd B) or ((A xor B) nd ) Sum b 5

ALU d bit e 32 bit Un riporto dl bit meno significtivo si può propgre fino l bit più significtivo Sommtore propgzione di riporto (ripple crry dder) b ALU Opertion Result Opertion b ALU Result Result 2 b2 ALU2 Result2 b 2 3 b3 ALU3 Result3 Sottrzione Si f l somm tr il primo operndo e l versione negt del secondo operndo Complemento 2 Psso : si invertono tutti i bit Psso 2: si ggiunge Relizzzione Psso : multiplexer sceglie tr l operndo e il suo complemento Psso 2: si forz d il del bit meno significtivo + b+ = + (b+ ) = + ( b) = b b Binvert Opertion 2 Result Ecco perché complemento 2 è scelt stndrd! 2 6

Set on less thn () Istruzione slt richiede supporto hrdwre Verific dell condizione <b (ovvero (-b)<) Se verifict => risultto (ovvero ) Se non verifict => risultto (ovvero ) Prim modific Nuovo segnle di ingresso: I bit -3 del risultto sono sempre => = per i bit -3 Il bit meno significtivo del risultto dipende dl segno di -b => il suo segnle è il bit di segno dell differenz -b Second modific È necessrio modificre l ALU per il bit più significtivo Si ggiunge nche l logic per il rilevmento dell overflow) 3 Binvert Opertion Set on less thn (2) Binvert Opertion b 2 3 Result b ALU Result. Prim modific: ingresso Second modific (bit 3): overflow b ALU Result Binvert Opertion 2 b2 ALU2 Result2 b 2 Result 3 Set 3 b3 ALU3 Result3 Set Overflow Overflow detection Overflow 4 b. 7

ALU: versione finle () Ancor due ggiunte per rggiungere l versione finle Istruzioni di slto condizionto: richiedono supporto hrdwre Verific dell condizione =b (ovvero (-b)=) Si costruisce il segnle Zero Zero = ( b) Quindi Zero= -b= 3 + ( b) 3 + + ( b) Osservzione: (riporto su bit) e InvertiB sempre concordi Somm e operzioni logiche: =InvertiB= Sottrzione: =InvertiB= Allor, InvertiB sostituiti d un unico segnle NegB 5 b ALU opertion ALU: versione finle (2) ALU Zero Result Overflow Bnegte b ALU Result Opertion Linee di controllo (NegB,Operzione) ( bit + 2 bit) Funzione nd b 2 b2 ALU ALU2 Result Result2 Zero or somm sottrzione 3 b3 ALU3 Result3 Set Overflow set on less thn 6 8

Considerzioni di efficienz In un ALU d bit: Ritrdo nell generzione di è di 2 porte In un ALU n bit con sommtore propgzione di riporto Ritrdo nel sommtore è di 2n porte Progetto poco efficiente! È necessrio progettre schemi di riporto veloce Anticipo del crry (crry lookhed) f sì che il cso peggiore di propgzione del riporto bbi tempo logritmico e non linere 7 Riporto veloce ( con hrdwre infinito) Forme cnoniche: qulunque funzione logic h un relizzzione due livelli Ingressi nel sommtore:, b, c ( di bit) => I di bit -3 sono esprimibili come funzioni ( due livelli) di questi ingressi Esempio: c =(b c )+( c )+( b ) c 2 =(b c )+( c )+( b ) => c 2 =( b ) + ( c ) + ( b c ) + + (b b ) + (b c ) + (b b c ) + ( b ) b Per i bit di ordine più elevto l complessità esplode, schem troppo costoso 8 9

Riporto veloce: propgzione e generzione () Primo livello di strzione. Riscrittur dell equzione per il riporto: c i+ = (b i c i ) + ( i c i ) + ( i b i ) = ( i b i ) + ( i +b i ) c i Definizione di fttori di propgzione p i e generzione g i p i = ( i +b i ) g i = ( i b i ) Allor c i+ = g i + p i c i Se g i = => c i+ generto indipendentemente d c i Se g i = e p i = => c i propgto su c i+ Segnli di crry in un sommtore quttro bit c =g o +(p o c ) c 2 =g +(p g ) + (p p c ) c 3 =g 2 +(p 2 g ) + (p 2 p g ) + (p 2 p p c ) c 4 =g 3 +(p 3 g 2 ) + (p 3 p 2 g ) + (p 3 p 2 p g ) + (p 3 p 2 p p o c ) 9 Riporto veloce: propgzione e generzione (2) Ogni segnle ci è relizzto con logic due livelli Anche utilizzndo p i e g i l logic divent troppo compless nel cso di più bit Si ricorre d un secondo livello di strzione 2

Riporto veloce: propgzione e generzione (3) Anlogi idrulic L uscit del tubo c i+ èpien se Il segnle g i è perto oppure Il segnle p i è perto e c è cqu monte 2 Riporto veloce: secondo livello di strzione () Si costruiscono sommtori 4 bit con crry-lookhed Si costruisce sommtore 6 bit con 4 sommtori 4 bit in csct Si costruiscono segnli l livello superiore Propgzione P =p 3 p 2 p p P =p 7 p 6 p 5 p 4 P 2 =p p p 9 p 8 P 3 =p 5 p 4 p 3 p 2 Generzione G =g 3 +(p 3 g 2 ) +(p 3 p 2 g ) +(p 3 p 2 p g o ) G =g 7 +(p 7 g 6 ) +(p 7 p 6 g 5 ) +(p 7 p 6 p 5 g 4 ) G 2 =g +(p g ) +(p p g 9 ) +(p p p 9 g 8 ) G 3 =g 5 +(p 5 g 4 ) +(p 5 p 4 g 3 ) +(p 5 p 4 p 3 g 2 ) 22

Riporto veloce: secondo livello di strzione (2) Utilizzndo i P i e G i si generno i segnli di in ingresso ALU pi ciscuno dei sommtori 4 bit gi C =G o +(P o c ) C 2 =G +(P G ) + (P P c ) C 3 =G 2 +(P 2 G ) + (P 2 P G ) + (P 2 P P c ) C 4 =G 3 +(P 3 G 2 ) + (P 3 P 2 G ) + (P 3 P 2 P G ) + (P 3 P 2 P P o c ) b b 2 b2 3 b3 4 b4 5 b5 6 b6 7 b7 8 b8 9 b9 b b P G ALU P G ALU2 P2 G2 C C2 C3 ci + pi + gi + ci + 2 pi + 2 gi + 2 ci + 3 Result--3 Crry-lookhed unit Result4--7 Result8-- 2 b2 3 b3 4 b4 5 b5 ALU3 P3 G3 C4 pi + 3 gi + 3 ci + 4 Result2--5 23 Considerzioni di efficienz ALU con propgzione del riporto In ALU d bit ritrdo di è di 2 porte In ALU 6 bit ritrdo nel sommtore è di 32 porte ALU con nticipo del riporto C 4 (ultimo riporto) generto con 2 livelli di logic in termini di P i e G i P i e G i generti rispettivmente in e 2 livelli di logic in termini di p i e g i p i e g i generti in livello di logic in termini di i e b i In un ALU 6 bit ritrdo nel sommtore è di 5 porte Un sommtore 6 bit con nticipo del riporto è 6 volte più veloce di un sommtore 6 bit con propgzione del riporto 24 2

Moltipliczione Esempio di moltipliczione in bse 2: Usimo solo cifre o Risultto di n + m cifre Possibilità di overflow dieci dieci Moltiplicndo Moltiplictore Prodotto Prodotti przili (cifr i-esim di Mctore x Mcndo) Vlgono se cifr i-esim di Mctore = Vlgono Mcndo se cifr i-esim di Mctore = Risultto = Somm dei prodotti przili shiftti di i posizioni 25 Circuito logico ( versione) Registro Moltiplicndo 64 bit (per sclmento sx) Registro Moltiplictore 32 bit Registro Prodotto 64 bit (per evitre overflow) Abbimo bisogno di un ALU 64 bit! Left shift Moltiplicndo 64 bit Moltiplictore 32 bit Right shift ALU 64 bit 32 bit 64 bit Prodotto Controllo 26 3

Algoritmo ( versione) Inizio Prodotto = Prodotto + M.cndo bit = bit bit bit? di = di M.ctore left shift di di bit bit M.cndo right shift di di bit bit M.ctore 32 iterzione? No Fine Si 27 Algoritmo versione: 2 dieci x3 dieci ( due x due ) Iterzione Psso Mctore Mcndo Prodotto Vl. Inizili Prod=Prod+Mcndo LeftShift Mcndo RightShift Mctore 2 Prod=Prod+Mcndo LeftShift Mcndo RightShift Mctore 3 Nessun operzione LeftShift Mcndo RightShift Mctore 4 Nessun operzione LeftShift Mcndo RightShift Mctore 28 4

Circuito logico (2 versione) Si vorrebbe usre un ALU 32 bit Osservzione: metà dei bit del Mcndo sono sempre Ide: invece di sclre sinistr il Mcndo Scrivo nei bit più significtivi del Prodotto Sclo destr il prodotto Moltiplicndo 32 bit Moltiplictore 32 bit Right shift ALU 32 bit 32 bit Prodotto Right shift 64 bit Controllo 29 Algoritmo (2 versione) Inizio bit = bit bit bit? di = di m.ctore prte sinistr prod = prte sinistr prod + m.cndo right shift di di bit bit Prodotto right shift di di bit bit M.ctore 32 iterzione? No Si Fine 3 5

Algoritmo 2 versione: 2 dieci x3 dieci ( due x due ) Iterzione 2 3 4 Psso Vl. Inizili Prod=Prod+Mcndo RightShift Prodotto RightShift Mctore Prod=Prod+Mcndo RightShift Prodotto RightShift Mctore Nessun operzione RightShift Prodotto RightShift Mctore Nessun operzione RightShift Prodotto RightShift Mctore Mctore Mcndo Prodotto 3 Circuito logico (3 versione) Si vogliono ottimizzre ulteriormente tempi di clcolo e spzio occupto Osservzione: l psso i-esimo I (32-i) bit meno significtivi del Prodotto sono inutilizzti Il Mctore h (32-i) bit d controllre Si effettu RightShift di Prodotto e di Mctore Ide: scrivo il Mctore nei bit meno significtivi del Prodotto Moltiplicndo 32 bit ALU 32 bit Prodotto Right shift 64 bit Controllo 32 6

Algoritmo (3 versione) Inizio bit = bit bit bit? di = di Prodotto prte sinistr prod = prte sinistr prod + m.cndo Osservzione: ho ncor bisogno di un registro 64 bit per il Prodotto Il processore MIPS utilizz due registri 32 bit Hi e Lo per immgzzinre il Prodotto right shift di di bit bit Prodotto right shift di di bit bit M.ctore 32 iterzione? No Si Fine 33 Algoritmo 3 versione: 2 dieci x3 dieci ( due x due ) Iterzione Psso Mcndo Prodotto Vl. Inizili [] Prod=Prod+Mcndo [] RightShift Prodotto [] 2 Prod=Prod+Mcndo RightShift Prodotto [] [] 3 Nessun operzione RightShift Prodotto [] [] 4 Nessun operzione RightShift Prodotto [] [] 34 7

Prole chive Hlf dder e Full dder Set on less thn Zero Overflow Riporto Propgzione di riporto Anticipo di riporto (crry lookhed) Fttori di generzione e di propgzione Due livelli di strzione Moltipliczione Mcndo (sclmento sinistr) Mctore (sclmento destr) ALU 32 e 64 bit 35 8