CALCOLATORI ELETTRONICI 4/11
Architettura di von Neumann rivisitata
Inizialmente, abbiamo suddiviso logicamente l’architettura in due blocchi:
• Unita di calcolo (PU): tutto ciò che esegue il lavoro;
• Unità di controllo (CU): la parte intelligente
In realtà, all’interno della nostra CPU troviamo:
• l’unità di controllo;
• l’unità di calcolo (circuito combinatorio);
• parte della memoria di lavoro (registri)
Registri
I registri sono delle unit`a di memoria interne al processore, compongono la parte di
memoria di lavoro interna alla CPU. Permettono di memorizzare parole binarie. I registri
sono realizzati a partire da flip flop, la quantit`a di memoria disponibile `e estremamente
limitata.
I registri di una CPU possono essere suddivisi in classi principali:
• Registri principali: sono i registri senza i quali non `e possibile realizzare un’architettura di
von Neumann.
• Registri visibili al programmatore: sono registri che il programmatore può utilizzare
esplicitamente nel suo programma.
• Registri invisibili al programmatore: sono registri che il programmatore può modificare
solo indirettamente e non programmaticamente
Interconnessione tra registri
Per effettuare operazioni e memorizzare dati, i registri devono essere connessi tra loro.
•Interconnessione diretta: Tutti i registri sono collegati tra loro. Quindi da ogni registro
escono 16 canali da 64 fili
PRO: semplice da implementare
CONTRO: difficoltà se è necessario interconnettere più registri tra loro (troppi fili)
•Interconnessione tramite multiplexer
Tutti i registri sono collegati tra loro tramite un solo canale (composto da 64 fili). Per
sovrascrivere un registro:
• il multiplexer seleziona l’ingresso corrispondente al registro che contiene i dati che
vogliamo inserire nel nuovo registro;
• l’unità di controllo deve impostare wreg = 1, dove per w intendiamo write enable.
Possiamo scrivere in un registro solo se wreg = 1.
Abbiamo bisogno di w messo in and con il clock per selezionare il registro in cui vogliamo
scrivere, dato che i fili portano le stesse informazioni a tutti i registri.
PRO: semplice da implementare, possibilità di trasferire più dati contemporaneamente
CONTRO: costo eccessivo dei multiplexer e delle linee di interconnessione
•Interconnessione tramite BUS interno
Nel caso precedente, da ogni registro usciva un filo, in questo caso abbiamo un unico filo,
chiamato BUS, che connette in lettura e scrittura tutti i registri.
Il BUS `e caratterizzato da due operazioni:
• ricezione dati: i bit presenti sul BUS sono memorizzati in un registro;
• trasmissione dati: il contenuto di un registro è posto sul BUS.
Sul BUS può scrivere al massimo un registro alla volta. Utilizziamo dei segnali di controllo
opportunamente generati: write enable (Wreg) e buffer three-state (Breg).
-
Appunti lezione Calcolatori elettronici
-
Appunti Calcolatori Elettronici
-
Appunti di Calcolatori elettronici
-
Appunti calcolatori elettronici esercitazioni uso del simulatore