1
ARCHITETTURA DEL
COMPUTER
III Modulo dei dispositivi elettronici del
Laboratorio di Fisica
VaiA
2
Trasferimento delle informazioni
ROM e RAM
ADDRESS BUS
CPU
DATA BUS
CONTROL BUS
I/O
L’ADDRESS BUS seleziona la cella di memoria o il dispositivo di I/O
Il DATA BUS trasporta le informazioni (BYTE) dalla (e verso la) CPU alla
(dalla) memoria o ai dispositivi di I/O
Il CONTROL BUS perfeziona la comunicazione precisando il verso e
temporizzando la comunicazione
N.B. non esistono comunicazioni dirette fra memoria e dispositivi di I/O

VaiA
3
Trasferimento delle informazioni
ROM e RAM
ADDRESS BUS
CPU
DATA BUS
CONTROL BUS
I/O
L’ indirizzamento della memoria e dei dispositivi di I/O può avvenire in due modi:
a- condividendo lo spazio indirizzi e utilizzando un ulteriore segnale del CONTROL
BUS (IO/M) che separa indirizzi di memoria da indirizzi di I/O
b- con la tecnica del MEMORY-MAPPING ovvero della mappatura nello spazio di
memoria dei dispositivi di I/O.In tal modo un indirizzo individua in modo univoco
una cella di memoria o un dispositivo di I/O.
L’ evoluzione dei computer ha portato l’ indirizzamento della memoria dai 64K iniziali ai
16M attuali (anzi l’ indirizzamento può essere virtualmente infinito).
I dispositivi di I/O più diffusi sono TASTIERA, MONITOR, MEMORIA DI MASSA
(Hard e floppy disk, nastri magnetici, dischi ottici..), porte di I/O e dispositivi
programmabili come TIMER, USART, DMA, COPROCESSORE MATEMATICO...

VaiA
4
+Vcc
+Vcc
I
D
U
C
T1
T3
T2
T4
Trasmettitore 1
D
C
U
X
L
Hz
L
H
L
H
H
H
Trasmettitore 2
Linea del bus
Condizione di bus contention
quando sono attivi due trasmettitori
Schema logico di una porta
con uscita three-state e
relativa tabella della verità

5
VaiA
+Vcc
D
U
Q3
D
Q1
C
Q2
U
Q4
C
Schema di una porta NOT con uscita treestate, simbolo logico e tabella della verità
D
C
U
X
H
Hz
H
L
L
L
L
H

VaiA
6
Collegamento di più trasmettitori e
ricevitori ad una linea del bus
CT1
CT2
CT3
T1
T2
T3
linea del bus
CR1
CR2
R1
CR3
R2
R3

VaiA
7
Terminazioni di una linea del bus
+Vcc = 5V
+Vcc = 5V
R
R
180
180
linea del bus
390
390
T
T

VaiA
8
CT1
CT2
CT3
T1
T2
PREVENZIONE DEI
DISTURBI
T3
linea del bus
CR1
CR2
CR3
R1
R2
+Vcc = 5V
R3
+Vcc = 5V
R
R
180
linea del bus
390
180
390
T
T

Per quanto riguarda il
problema della prevenzione
dei disturbi eventualmente
indotti sulla linea da
sorgenti di rumore, si
adottano i criteri
generalmente impiegati nei
circuiti digitali, come
un’efficiente schermatura,
una opportuna dislocazione
delle linee di trasmissione
rispetto a sorgenti di
rumore, l’uso di piani di
massa per uno stabile
riferimento delle tensioni,
ecc.
VaiA
9

Le ROM (Read Only Memory)

Le ROM hanno nomi che riflettono
il modo utilizzato per scriverne e,
quando è possibile, cancellarne il
contenuto: PROM, EPROM, E2ROM
o EAROM.
 Le PROM (ProgrammableROM)
sono memorie programmabili una volta
sola, in quanto la programmazione
avviene bruciando i fusibili in
corrispondenza dei bit che debbono
contenere degli zeri.
 La fase di lettura consiste
nell’applicare tensione (5V) alla linea
orizzontale relativa alla cella che si
vuole leggere. In tal modo sulle linee di
uscita è possibile leggerne lo stato.
ROM a FUSIBILI
word 1
word 2
bit 1
bit 2
00
1
1
1
microfusibile
bit 1
bit 2
VaiA
10
EPROM (Electrically
Programmable ROM)
EPROM
gate
UV
SiO2
È un MOS con un gate immerso in
uno strato di SiO2 che fa da isolante.
Per mezzo di impulsi di tensione fra
source e drain si carica il gate che
quindi attirerà degli elettroni.
La cancellazione avviene
sottoponendo le EPROM ad un
fascio di raggi UV che penetrano nel
gate e liberano le cariche. Poiché il
gate non è un isolante perfetto, col
tempo (10 anni) le cariche usciranno.
N
N
E2
gate per cancellare
gate
SiO2
N
N
Non è possibile comunque la cancellazione individuale di singole celle di
memoria. Questo inconveniente è stato eliminato con la creazione delle E2
(Electrically Erasable ROM) che invece dei raggi ultravioletti utilizzano un
secondo elettrodo immerso nel SiO2.

11
VaiA
RAM Bipolare
Condizione di memoria
(“1” cioè lo stato di T1)
x, y = 0,3 V;
W/R = 0,5 V.
T1 interdetto;
T2 saturo;
(Circola corrente in T2, x,
y, ma non nella linea
W/R perché è ad un
potenziale più alto)
è una condizione stabile
Vcc (+5V)
linea
bit ”1”
S = “1”
linea
bit ”0”
S= “0”
T1

T2
selezione riga (x)
W/R
W/R
selezione colonna (y)
Condizione di memoria (“0”)
T1 saturo;
T2 interdetto;
x, y = 0,3 V;
W/R = 0,5 V.
(Circola corrente in T1, x, y, ma non nella linea W/R perché è ad un potenziale più
alto)
è una condizione stabile
12
VaiA
RAM Bipolare
Operazione di lettura
x, y = 3V  T1 e T2
rimangono nello stesso
stato; la corrente del
transistor T2 circola ora
sulla linea W/R.
Individuando quale linea
W/R è percorsa da
corrente si risale allo
stato della memoria (se la
linea bit “1” non è
percorsa da corrente
allora il bit memorizzato
è “1”).
Vcc (+5V)
linea
bit ”1”
S = “1”
linea
bit ”0”
S = “0”
T1

T2
selezione riga (x)
W/R
W/R
selezione colonna (y)
Operazione di scrittura (viene scritto uno “0” ovvero si deve interdire T1)
x, y = 3V e la linea W/R del bit “0” a livello alto  T2 interdetto mentre T1 conduce
per effetto del livello basso di W/R relativo alla linea bit “1”.
VaiA
13
RAM NMOS
T3 e T4 sono
depletion.mos e
hanno solo la
funzione di
resistenze di carico
per T1 e T2 che
funzionano come un
flip-flop.
Condizione di
memoria (“1”)
5V
linea bit ”1”
p
n
off
T4
linea bit ”0”
T3
on
off
p
5V
T5
n
T1 off
0V
n
n off
T6
T2 on
x, y
T1 = off,
T2 = ON,
x, y = “0”  T5, T6 = “off”
Questa è una condizione stabile che rispetto alle RAM bipolari permette di
dissipare meno energia in quanto non circola corrente. Infatti nelle condizioni
esposte T3 è off e T4 è on cosicchè su ciascuna linea che va da +5V a massa c’è
sempre un transistor off.

VaiA
14
RAM NMOS
Condizioni di
lettura
5V
linea bit ”1”
T4
linea bit ”0”
T3
p
on
off
p
x, y = 1 e le linee bit
“0” e bit “1” a
n 5V
0V n
potenziale basso 
circola corrente
T6
off T5 n
n off
nella linea bit “1”
T2 on
T1 off
poiché ha il
x, y
potenziale a destra
di T5 alto.
Condizioni di scrittura
x, y = 1 e linea del bit interessato (bit “1” se si vuole scrivere un “1”,
bit “0” se si vuole scrivere uno “0”) alto  si porterà alto il
potenziale dall’altra parte del transistor con la linea del bit alta.

VaiA
15
RAM DINAMICHE
linee di refresh
0V
S = “1”
T3
0V
S = “0”
T1
T4
T2
off
on
C1
C2
bit “1”
bit “0”
linea di selezione x, y

VaiA
16

RAM DINAMICHE
Condizione di memoria
T1 off, T2 on e x, y = 0  C2
è carico, C1 è scarico.
Questa condizione non è
stabile e nel tempo (10 ms) C2
si scarica e T2 diventa off.
Operazione di refresh
x, y = 10 V e bit “0”, bit “1”
= 5V  T3, T4 vanno in
conduzione.
Circola corrente solo verso il
condensatore carico (C2), che
così si rigenera.
T3
T4
T1
T2
C1
C2
x, y
<5 V
0V
T3
T4
T1
T2
5V
5V
C1
bit “1”
C2
x, y
bit “0”
VaiA
17

RAM DINAMICHE
<5 V
Operazione di lettura
Si procede come per il refresh
e si esamina su quale linea bit
circola corrente apprezzabile.
Operazione di scrittura
(scrivo uno “0” ovvero porto
T2 in interdizione)
x, y = 10 V e linea bit “0” =
10 V  T1 conduce T2 si
interdice.
0V
T3
T4
T1
T2
5V
5V
C1
bit “1”
C2
bit “0”
x, y
T3
T4
T1
T2
10 V
C1
bit “1”
C2
x, y
bit “0”
VaiA
18
Charge Couple Devices
Sono memorie ad alta densità di immagazzinamento, realizzate con
materiale semiconduttore. Per queste memorie il tempo di accesso (in
questo caso detto anche tempo di latenza) è superiore a quello ad
accesso casuale per una singola cella, ma diventa inferiore per leggere
l’intera memoria.
5V
10V
Q
15V
5V
10V
15V
Q
Durante la fase di acquisizione il CCD ha i singoli PIXEL in
condizione di immagazzinare elettroni grazie ai potenziali dei tre
elettrodi che creano una buca di potenziale opportuna.

VaiA
19

Charge Couple Devices
Poiché le celle di memoria sono equivalenti, è possibile procedere allo
scorrimento delle cariche immagazzinate nelle singole celle di
memoria, utilizzando solo tre segnali che collegano gli elettrodi simili.
5V
10V
Q
15V
5V
10V
15V
Q
Alla fine dell’elemento di linea c’è un amplificatore di carica che
legge il contenuto della memoria. L’informazione dell’indirizzo
relativo alla cella della quale l’amplificatore di carica sta leggendo il
valore è deducibile utilizzando il CLOCK, che temporizza tutto il
processo di lettura.
VaiA
20
Charge Couple Devices
riga n+1
parte in
lettura
riga n
parte in
memorizzazione
CCD televisivo
La memoria può essere organizzata in modo bidimensionale, ed in
tal caso esisterà una struttura analoga in verticale capace di
trasferire il contenuto di un’intera riga nella riga superiore; quindi
attraverso un’opportuna operazione di scorrimento orizzontale si
procede alla lettura.
Nei CCD per uso
televisivo la
struttura è duplicata
in modo che mentre
una parte è in fase
di lettura l’altra
parte è in fase di
memorizzazione

VaiA
21

Organizzazione decodifica delle
memorie
Un chip di memoria contiene di solito un certo
numero di byte, per cui per comporre una certa
estensione di memoria occorre organizzare
questi banchi in modo opportuno.
Questi chip presentano, oltre all’alimentazione
e alla massa:
Un set di pin (address bus) per indirizzare le
singole celle di memoria;
Un set di pin (data bus) come supporto per
l’entrata e l’uscita dei dati;
Un pin (R/W) per controllare la scrittura o
lettura del dato;
Un pin (CS) per selezionare il chip.
DB 0
data
bus
DB 7
AD0
address
bus
1 Kbyte
AD9
R/W
CS
VaiA
22

Organizzazione decodifica delle
memorie
DB0
Supponiamo
ora di voler
organizzare una
zona di
memoria di 4
Kb
data
bus
AD0
address
bus
AD0
1 Kbyte
AD9
R/W
data
bus
1 Kbyte
AD9
CS
AD0
R/W
data
bus
1 Kbyte
AD9
CS
AD0
R/W
1 Kbyte
AD9
CS
R/W
R/W
Concettualmente
sono necessari 12
bit per
l’indirizzamento
ed il segnale R/W
AD10
AD11
AD11
AD9
AD0
selezione della locazione del chip
selezione del chip
data
bus
CS
DB7
VaiA
23
Organizzazione decodifica delle
memorie
data
bus
DB0
DB7
AD0
address
1 Kbyte
bus
1 Kbyte
1 Kbyte
1 Kbyte
1 Kbyte
1 Kbyte
1 Kbyte
1 Kbyte
AD9
00
01
A0
A1
02
A2
decoder 8205
07
E1
E2
E3
+5V
AD10
AD11
AD12
AD12
AD9
AD0
selezione della locazione del chip
selezione del chip

24
VaiA
Lettura dei dati
Si suppone che ad un certo istante
t0, considerato istante iniziale,
venga fornito l’indirizzo di memoria
della parola che si desidera leggere.
L’invio di questo indirizzo non
rende automaticamente
disponibile il dato richiesto: deve
essere anche attivato il segnale di
abilitazione della memoria CS.
tempo di lettura
INDIRIZZO
CS
DATI VALIDI
tR
tempo di accesso
t0
Dall’attivazione di questo segnale
iniziano le varie attività all’interno della memoria per rendere disponibile all’esterno
il dato richiesto.
Questo avverrà dopo un tempo indicato in figura come tempo di ritardo tR.
Considerando che l’operazione di lettura richiede necessariamente anche l’invio
dell’indirizzo, si può dire che il minimo tempo necessario per avere il dato a
disposizione è quello indicato in figura con il nome di tempo di accesso.

25
VaiA
Lettura dei dati
tempo di lettura
Il tempo di accesso può
assumere valori variabili da
pochi ns fino a qualche s,
in base al tipo di memoria
utilizzata, ed in particolare
della tecnologia impiegata.
INDIRIZZO
CS
DATI VALIDI
tR
tempo di accesso
t0
L’operazione di lettura termina non appena è possibile l’invio di un
nuovo indirizzo per leggere un altro dato, dopo aver prelevato quello
precedente. Da parte di un utilizzatore della memoria, una operazione
di lettura richiede un tempo che nella figura è compreso fra le due
variazioni dei segnali che forniscono l’indirizzo.

26
VaiA
Scrittura dei dati
All’istante iniziale t0 viene fornito
l’indirizzo di memoria della parola
che si desidera modificare.
E’ reso quindi attivo il segnale chip
select CS.
Successivamente si invia il segnale
R/W per informare che
l’operazione che si desidera
compiere è di scrittura.
Infine è inviato il dato da scrivere,
che deve restare disponibile per un
certo tempo per completare
l’operazione di scrittura.
Questo tempo può essere spesso
diviso in due parti:
Un primo intervallo di tempo,
indicato in figura con tdw,
è il tempo minimo che deve
tempo di scrittura
INDIRIZZO
CS
R/W
DATI
DATI VALIDI
t0
tdw
th
intercorrere da quando il dato è valido a
quando il segnale R/W è disattivato; un
secondo tempo, che può essere indicato
come tempo di mantenimento th, è il tempo
minimo durante il quale il dato da scrivere
deve essere mantenuto valido dopo che il
segnale R/W è stato disattivato.

27
VaiA
Scrittura dei dati

tempo di scrittura
Dopo quest’ultimo intervallo di
tempo l’indirizzo può assumere un
nuovo valore, per iniziare un’altra
operazione di scrittura.
L’intervallo di tempo compreso fra
due possibili modifiche
dell’indirizzo prende il nome di
tempo di scrittura.
INDIRIZZO
CS
R/W
DATI
DATI VALIDI
t0
tdw
th
Si vuole far presente che sono possibili anche altri modi di organizzazione. Ad
esempio non è sempre necessario che gli indirizzi siano disponibili per l’intero ciclo
di scrittura o lettura: con questo tempo si deve intendere il ritardo che ci deve essere
all’istante t0 in cui ha avuto inizio una operazione a quello in cui è possibile iniziarne
un’altra.
28






OSSERVAZIONI
VaiA
Diapositiva 10: Nel secondo disegno sostituita la scritta EPROM con E2.
Diapositive 11, 12, 15: Sostituita nel disegno della RAM Bipolare la Q con la
M, in quanto si è riusciti a trovare il carattere M soprasegnato (Inserisci Simbolo - MS Reference 1), mentre ciò non è stato possibile per la lettera Q.
Diapositiva 13: Ci sono nel disegno ben tre scritte “T3”: unoa è stata eliminata
(quella sopra T2on) mentre quella sopra T1 è stata corretta con T4. In tal modo
c’è corrispondenza tra quello che viene detto nel testo ( T3 off e T4 on) e
quanto riportato nel disegno.
Diapositiva 16: I due schemini semplificati sono stati completati, per renderli
piu aderenti a quanto riportato nel testo, in cui si parla di T3, T4, x, y, bit “0”,
bit “1”. Verificare la correttezza delle modifiche apportate. Inoltre nel testo,
dopo la frase Condizione di memoria, sono state soppresse le parole: (indicata
nello schema sopra).
Diapositiva 17: Vengono riproposti due schemini semplificati. Quello superiore
è lo stesso dell’Operazione di refresh della diapositiva precedente; quello
inferiore è stato realizzato sulla scorta del testo “Operazione di scrittura…”.
Verificarne la correttezza.
Diapositive 18 e 19: Nella figura il terzo valore di tensione è stato corretto da 5
V a 15 V. E’ esatto?

29






OSSERVAZIONI
VaiA
Diapositiva 23: E’ corretto il titolo della diapositiva? O è meglio titolarla
“Decoder 8205”? Anziché ripetere nel disegno otto volte “Data bus”, tale testo
è stato inserito tra le linee DB0 e DB7 .
Diapositive 24, 25 e 26: Piccole correzioni nel testo.
Diapositiva 26:Nel testo è stato sostituito W sopralineato con W sottolineato.
Diapositiva 27: L’ultima frase del testo, dopo … l’intero ciclo di scrittura o
lettura:… non è affatto chiara (forse manca qualcosa nel testo).
Diapositive # >27: Che titolo si deve dare alle diapositive successive alla 27
(ancora da realizzare)?
Verificare tutti i titoli delle diapositive e il sottotitolo della diapositiva titolo.
