fisica dell’informazione 1 elementi di architettura degli ... · elementi di architettura degli...
TRANSCRIPT
Corso di Laurea in FISICALaurea Specialistica in Informatica
Fisica dellFisica dell’’informazioneinformazione
1 Elementi di Architettura deglielaboratori
Prof. Luca Prof. Luca GammaitoniGammaitoni
Informazioni sul corso:Informazioni sul corso:
www.fisica.www.fisica.unipgunipg..it/gammaitoni/fisinfoit/gammaitoni/fisinfo
Corso di Laurea in FISICAFisica dellFisica dell’’informazioneinformazione
Elementi di architetturaElementi di architetturadegli elaboratoridegli elaboratori
Non è degno di uomini eccellenti perdere ore come schiavi e faticare su calcoli che potrebbero essere affidati a chiunque se venissero usate le macchine.
Gottfried Wilhelm Leibnitz
In base due possono essere effettutate le normalioperazioni aritmetiche, utilizzando gli algoritmi usuali
Per esempio la somma tra due numeri:
Automatizzare il calcolo
Vediamo nel dettaglio la somma a 1 bit:
B1 +B2 =_____
S
0 +0 =_____
0
0 +1 =_____
1
1 +1 =_____
10
Tavola di verità della somma a 1 bit
Disciplina nota come Architettura dei calcolatoriArchitettura dei calcolatori
Costruire un sommatore
Tavola di verità della somma a 1 bit
Operatori logici, cenni di logica Operatori logici, cenni di logica booleanabooleana
La somma non è la sola operazione che si può fare sui bit.Oltre alle operazioni algebriche esistono le operazioni LOGICHE
Operazione LOGICA NOT Tavola di verità
ANDORNOT
Se I1 = 1 ------> NOT (I1) = 0 Se I1 = 0 ------> NOT (I1) = 1
Se I1 = 0 e I2 = 1 ------> I1 AND I2 = 0Se I1 = 1 e I2 = 1 ------> I1 AND I2 = 1Se I1 = 0 e I2 = 1 ------> I1 OR I2 = 1
ANDORNOT
Se I1 = 0 e I2 = 1 ------> (I1 OR I2) AND I1 = ?
Se I1 = 1 e I2 = 0 ------> (I1 AND I2) OR (I1 OR I2) = ?
Se I1 = 1 e I2 = 1 ------> (I1 OR I2) AND (I1 OR I2) = ?
Problema:Problema: data una tavola di verità come determinare l’espressione algebrica che la soddisfa
Data una tavola di verita:1. si considerano le righe delle uscite corrispondenti a valori 12. per queste righe si fa l’AND tra gli elementi che costituiscono gli ingressi negando
quelli che hanno 0 in ingresso3. si fa l’OR dei termini cosi ottenuti.
Ci sono diverse tecniche ….
Esempio: il semi-sommatore
Semi-sommatore
S = (B1’・B2) + (B1・B2’)
A volte, per amor di semplicità di rappresentazione, si introduce una nuova porta logica che descrive il funzionamento dell’uscita S.
Tale porta si chiama OR esclusivo (XOR) e si indica con B1⊕B2
S = B1⊕B2 = (B1’• B2) + (B1• B2’)
SommatoreFull-adder
S = …?
R = …?
Per determinare l’espressione algebrica corrispondente (o la sua rappresentazione schematica) possiamo applicare i tre passi della nostra regola per ottenere:
S = Rin’(B1’• B2)+ Rin’(B1• B2’)+ Rin(B1’• B2’)+ Rin(B1• B2)R = Rin’(B1’• B2)+ Rin(B1’• B2)+ Rin(B1• B2’)+ Rin(B1• B2)
Si può minimizzare?
S = Rin’(B1’• B2)+ Rin’(B1• B2’)+ Rin(B1’• B2’)+ Rin(B1• B2)R = Rin’(B1’• B2)+ Rin(B1’• B2)+ Rin(B1• B2’)+ Rin(B1• B2)
Raccogliendo a fattor comune si ha:
S = Rin’ (B1’B2+B1B2’)+ Rin(B1’B2’+B1B2)R = (Rin’+ Rin)(B1B2)+ Rin(B1’B2+B1B2’)
Concentriamo la nostra attenzione su S, ed in particolare sulsecondo termine Rin(B1’B2’+B1B2). Applicando De Morgan si ha:
(B1’B2’)+(B1B2) = ((B1’B2’)’ (B1B2)’)’
e applicando ancora De Morgan entro le singole parentesi:((B1’B2’)’ (B1B2)’)’ = ((B1+B2) (B1’+B2’))’ =
= (B1B1’+B1B2’+B2B1’+B2B2’)’
Poiché B1B1’ = B2B2’ = 0,possiamo scrivere il secondo termine di S come Rin(B1B2’ + B1’B2)’ e così:
S = Rin’ (B1’B2+B1B2’)+ Rin(B1’B2 + B1B2’)’Utilizzando la porta logica OR esclusivo, con B1⊕B2 = (B1’B2)+(B1B2’), siottiene:
S = Rin’ (B1⊕B2)+ Rin(B1⊕B2)’= Rin ⊕ (B1⊕B2)
Veniamo ora al termine che fornisce il riporto:
R = (Rin’+ Rin)(B1B2)+ Rin(B1’B2+B1B2’)
Il primo termine si semplifica osservando che
(Rin’+ Rin) = 1
mentre il secondo termine altro non è che Rin(B1⊕B2).
Quindi
R = B1B2+ Rin(B1⊕B2)
Dal modello ai dispositivi: il transistor
Se Vin > 0.5V allora Vout = 0 VSe Vin < 0.5V allora Vout = 5 V
1944 (Bardeen, Brattley e Shotky)
Dal modello ai dispositivi: il transistor
Se Vin > 0.5V allora Vout = 0 VSe Vin < 0.5V allora Vout = 5 V
1944 (Bardeen, Brattley e Shotky)
Se Vin > 0.5V (stato di Input=1) allora Vout = 0 V (stato di Output=0)Se Vin < 0.5V (stato di Input=0) allora Vout = 5 V (stato di Output=1)
NOT gate:
Somma a più bitEsempio: uno schema che mostra il funzionamento di undispositivo sommatore per numeri a 3 bit.I numeri addendi sono:
A1A2A3 e B1B2B3 (per esempio 011 + 100)
L’ultimo bit di riporto Cr (quello più a sinistra o, come si dice quello più significativo) prendeil nome di bit di overflow.Se questo bit è diverso da 0 significa che il risultato della somma non può essere contenutoin tre bit (condizione detta per l’appunto di overflow).
Reti combinatorie:Reti combinatorie: L’uscita di una rete combinatoria è funzione dei propri ingressi.L’uscita varia “istantaneamente” al variare degli ingressi.
Esiste una diversa classe di dispositivi che chiameremosseequenzialiquenziali.
In un dispositivo sequenziale il valore che si ottiene all’uscita in un dato istantedipende sia dal valore che si trova all’ingresso in quello stesso istante che dallo statoprecedente del dispositivo stesso.
Esempio: la cella di memoria di un computer
Esempio: una “Bombarda”
Il cannone può trovarsi in diversi stati possibili, 1) “carico” 2) “scarico”3) “fuori servizio”
Esempio: una “Bombarda”
Analogia: Ingresso: accensione micciavalore: SI, NO
Uscita: esplulsione proiettilevalore: SI, NO
Non posso costruire una tavola di verità senza tenere conto dellostato del cannone.Infatti il valore dell’uscita dipende non soltanto dall’ingresso ma anche dallo statodel cannone:
Ingresso: NO -----------------------> Uscita: NOIngresso: SI -----------------------> Uscita: SI se STATO = caricoIngresso: SI -----------------------> Uscita: NO se STATO <> carico
In sintesi:
Il valore che si ottiene all’uscita in un dato istante (cioèquando serve sparare) dipende sia dal valore che si trovaall’ingresso (miccia accesa o miccia spenta) in quello stessoistante che dallo stato precedente del dispositivo stesso(cannone carico, scarico o fuori uso).
Un modo per descrivere questo comportamento è quello didire che il dispositivo conserva memoria della storiaprecedente, ovvero ha una memoria sua interna chedetermina lo stato attuale del dispositivo.
Il termine sequenziale, associato a questa classe di dispositivista proprio ad indicare che il risultato degli ingressi dipendedalla sequenza delle azioni a cui è stato sottopostoprecedentemente il dispositivo stesso.
Come lo si può realizzare con i dispositivi noti?
Utilizzando un trucco: il feedback
Flip-Flop SR, sincrono
Flip-Flop tipo D
la configurazione proibita è impedita a priori e l’ingresso D viene memorizzato all’uscita Q, durante ogni fase abilitata dal clock
un dispositivo sequenziale caratterizzato daun certo numero di stati n, prende anche ilnome di:
Macchina a Stati FinMacchina a Stati Finiititi (FSM)o “Automa a Stati Finiti”.
Definizione
Si può dimostrare che si può sempre trasformare una macchina di Moore inuna di Mealy e viceversa. Tuttavia il passaggio dalla macchina di Mealy allamacchina di Moore comporta in genere un amumento del numero degli statidella macchina stessa.
Due tipologie di FSM sono particolarmente rilevanti per chi si occupa diarchitettura dei computer:la macchina di Moore e la macchina di Mealy.
Una FSM è una macchina di macchina di MooreMoore:se, ad ogni istante, il valore delle uscite dipende esclusivamente dalvalore dei suoi stati in quell’istante senza dipendere dal valore degliingressi in quegli istanti.
Una FSM è una macchina di macchina di MealyMealy:se, ad ogni istante, il valore delle uscite dipende sia dal valore dei suoistati in quell’istante che dal valore degli ingressi, in quegli stessi istanti.