18.06.2013 Views

Lezione X.ppt.pdf - Dipartimento di Fisica

Lezione X.ppt.pdf - Dipartimento di Fisica

Lezione X.ppt.pdf - Dipartimento di Fisica

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Laboratorio <strong>di</strong> <strong>Fisica</strong> V<br />

Corso B<br />

Prof. G. Punzi


Verso sistemi logici<br />

piu’ piu complessi


Operazioni Aritmetiche<br />

Abbiamo <strong>di</strong>scusso somma e sottrazione <strong>di</strong> interi<br />

Consideriamo ora moltiplicazione e <strong>di</strong>visione<br />

Tabella <strong>di</strong> verita’ verita<br />

Moltiplicazione a 1 bit:<br />

A B<br />

0 0<br />

0 1<br />

1 0<br />

1 1<br />

Y<br />

0<br />

0<br />

0<br />

1<br />

= AND<br />

Moltiplicazione a piu’ piu bits


Moltiplicatore 3x3


Divisioni<br />

La <strong>di</strong>visione e’ e l’operazione l operazione piu’ piu complessa<br />

Esiste una varieta’ varieta <strong>di</strong> implementazioni possibili: possibili<br />

Semplici-> Semplici->lente<br />

lente , Veloci->complicate<br />

Veloci->complicate<br />

Molte sono analoghe all’algoritmo all algoritmo che si adopera per la<br />

<strong>di</strong>visione a mano, mano,<br />

pero’ pero si adopera spesso una ra<strong>di</strong>ce 2N invece che 2.<br />

Si fa uso del complemento a 2 per la sottrazione<br />

Esempio semplice (molto lento)<br />

Contare sottrazioni ripetute


Co<strong>di</strong>ficatore ( (Encoder Encoder)<br />

Un encoder (co<strong>di</strong>ficatore<br />

( co<strong>di</strong>ficatore) e’ e un circuito che rappresenta con<br />

un co<strong>di</strong>ce binario l’arrivo l arrivo <strong>di</strong> un segnale su una tra N possibili<br />

linee. linee.<br />

(Es. applicazione:<br />

applicazione:<br />

tastiera) tastiera<br />

1<br />

0<br />

0<br />

0<br />

3<br />

2<br />

1<br />

0<br />

E<br />

1<br />

1 = no 3 !<br />

La co<strong>di</strong>fica non e’ e necessariamente il numero or<strong>di</strong>nale, or<strong>di</strong>nale,<br />

ad es. es<br />

potrebbe essere conveniente che rappresenti il carattere


Tabella verita’ verita <strong>di</strong> Encoder<br />

Se assumo che ho sempre un solo input alto, posso usare dei<br />

semplici OR (risparmio ( risparmio molte porte per gli AND e i NOT)


Implementazione a matrice <strong>di</strong><br />

<strong>di</strong>o<strong>di</strong> (Diode Logic)


Deco<strong>di</strong>ficatore (decoder)<br />

Il decoder (deco<strong>di</strong>ficatore<br />

( deco<strong>di</strong>ficatore) ) effettua l’operazione<br />

l operazione<br />

inversa: inversa dato un co<strong>di</strong>ce binario in ingresso, ingresso invia un<br />

segnale su un output da esso in<strong>di</strong>viduato.<br />

in<strong>di</strong>viduato<br />

(Es. Applicazione: Applicazione abilitare un <strong>di</strong>spositivo scelto) scelto<br />

n o 3 ⇒<br />

1<br />

1<br />

D<br />

3<br />

2<br />

1<br />

0<br />

1<br />

0<br />

0<br />

0<br />

Al <strong>di</strong>spositivo n o 3


Esempio: Esempio:<br />

Decoder 4→10 4 10


Selettore ( (multiplexer<br />

multiplexer)<br />

Un multiplexer permette <strong>di</strong> convogliare su una linea <strong>di</strong> uscita uno tra<br />

piu’ piu input a scelta<br />

(applicazione<br />

applicazione: : trasmettere molti segnali su poche linee <strong>di</strong>stinte) <strong>di</strong>stinte<br />

Agisce come un “deviatore deviatore logico” logico<br />

Inputs Output


Sel In1 In2<br />

0 0<br />

0<br />

0 0 1<br />

0 1 0<br />

0 1 1<br />

1 0 0<br />

1 0 1<br />

1 1 0<br />

1 1 1<br />

Es. Multiplex 2x1<br />

Out<br />

0<br />

0<br />

1<br />

1<br />

0<br />

1<br />

0<br />

1<br />

In 1<br />

In 2<br />

Si puo’ puo costruire con puri strumenti logici<br />

Sel<br />

Out


Multiplexer molti input<br />

MUX


Multiplexer 4x1 (da ( da Decoder)<br />

Enable<br />

INPUTS<br />

CONTROL<br />

Come si puo’ puo realizzare un Demultiplexer ?


Memorie<br />

I moderni sistemi <strong>di</strong>gitali fanno uso <strong>di</strong> notevoli quantita’ quantita <strong>di</strong><br />

memoria, memoria ben al <strong>di</strong> la’ la <strong>di</strong> pochi FF<br />

Le memorie “esterne esterne” sono <strong>di</strong>sponibili in una varieta’ varieta <strong>di</strong><br />

supporti: supporti:<br />

nastri, nastri,<br />

Hard Disks, <strong>di</strong>schi ottici….ad ottici .ad accesso<br />

casuale o sequenziale,<br />

sequenziale,<br />

sono accessibili tramite interfacce<br />

piu’ piu o meno veloci, veloci,<br />

servono per archiviare files per una<br />

varieta’ varieta <strong>di</strong> scopi. scopi<br />

Ora ci occupiamo <strong>di</strong> memoria “in in linea”: linea imme<strong>di</strong>atamente<br />

<strong>di</strong>sponibile ad alta velocita’. velocita . E’ E utilizzata per memorizzare:<br />

In modo temporaneo dati interme<strong>di</strong> dell’elaborazione<br />

dell elaborazione o buffers <strong>di</strong><br />

informazioni destinate o provenienti da memorie esterne<br />

in modo permanente dati, dati,<br />

co<strong>di</strong>ce eseguibile, eseguibile,<br />

tabelle <strong>di</strong> conversione,<br />

conversione<br />

funzioni predefinite


Read ead Only nly Memory emory (ROM)<br />

Ha un certo numero <strong>di</strong> linee <strong>di</strong> input (in<strong>di</strong>rizzo ( in<strong>di</strong>rizzo, , address) address<br />

un certo numero <strong>di</strong> output ( (data data)<br />

Funziona come una tabella. tabella.<br />

Si puo’ puo usare per<br />

implementare una funzione logica qualunque con il dato<br />

numero <strong>di</strong> inputs e outputs<br />

address address<br />

data<br />

data


ROM<br />

Una ROM puo’ puo essere costruita come la combinazione <strong>di</strong><br />

un deco<strong>di</strong>ficatore (dell dell’in<strong>di</strong>rizzo in<strong>di</strong>rizzo) che pilota un opportuno<br />

co<strong>di</strong>ficatore (del dato memorizzato nella locazione data)


Esempio implementazione ROM


Address Address<br />

(8 (8 bits)<br />

bits)<br />

ROM con in<strong>di</strong>rizzamento X-Y<br />

data data (4 (4 bits) bits)


Tipi <strong>di</strong> ROM<br />

Alcune ROM sono costruite con una struttura “immutabile immutabile” una volta<br />

costruite, ma l’esigenza esigenza <strong>di</strong> poterle programmare ha condotto a una<br />

varieta’ varieta <strong>di</strong> <strong>di</strong>spositivi. <strong>di</strong>spositivi<br />

PROM: PROM:<br />

Programmabile dall’utente dall utente una sola volta, volta,<br />

con un<br />

<strong>di</strong>spositivo apposito. apposito<br />

EPROM: “erasable erasable PROM”: PROM : Puo’ Puo essere “cancellata cancellata”<br />

tramite esposizione a luce ultravioletta.<br />

ultravioletta<br />

EEPROM: (E 2PROM) PROM) “electrically electrically erasable”” erasable puo’ puo essere<br />

“cancellata cancellata” con applicazione <strong>di</strong> opportune tensioni<br />

elettriche agli input.


RAM<br />

Random andom Access ccess Memory. emory. Utilizzabile sia in lettura e<br />

scrittura tramite le stesse linee <strong>di</strong> address address e data. data.<br />

SRAM (Static (Static<br />

RAM). Memoria statica: statica:<br />

l’informazione informazione e’ e<br />

memorizzata in Flip-Flops, e permane finche’ finche e’ e presente<br />

la alimentazione.<br />

alimentazione.<br />

Veloce ma costosa. costosa<br />

DRAM (Dinamic ( inamic RAM). Piu’ Piu economica,<br />

economica,<br />

l’informazione informazione e’ e<br />

memorizzata come carica <strong>di</strong> condensatori,<br />

condensatori,<br />

puo’ puo essere<br />

prodotta in quantita’ quantita maggiori. maggiori.<br />

Richiede pero’ pero frequenti<br />

cicli <strong>di</strong> refresh refresh per mantenere la memorizzazione.<br />

memorizzazione<br />

NVRAM (Non (Non<br />

Volatile Volatile<br />

RAM). Mantiene l’informazione<br />

l informazione<br />

anche in assenza <strong>di</strong> alimentazione.<br />

alimentazione<br />

Sistemi a basso consumo con batteria <strong>di</strong> backup<br />

“FLASH FLASH RAM”: RAM Si tratta in realta’ realta <strong>di</strong> una variante <strong>di</strong> EEPROM, EEPROM<br />

con maggiore velocita’ velocita e flessibilita’.<br />

flessibilita


ADDRESS(HI)<br />

Chip Enable<br />

Write Enable<br />

RAM (1024x4 bits)<br />

DATA<br />

(In)<br />

ADDRESS(LO)<br />

3-state<br />

buffers<br />

DATA<br />

(Out)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!