Estratto del documento

Lezione 2 21/03/23

Il nostro processore MIPS che utilizziamo in questo corso ha a disposizione:

  • 6 bit per il codice operativo
  • 5 bit per il registro
  • 5 bit per l'offset
  • 32 bit per il bus degli indirizzi

Un problema che sorge subito è che siccome ogni istruzione deve essere composta da soli 32 bit, questo adesso risulta impensabile.

Nota: 6 + 5 + 5 + 32 = 56 bit 32 bit

Per questo motivo allora andiamo ad utilizzare un'indirezione indiretta a registro. Con questo tipo di indirizzamento vado a caricare l'indirizzo di destinazione in un registro, detta l'istruzione di basta specificare quale indirizzo fornisce questa istruzione.

Osserva: registro dove carico l'indirizzo di destinazione è di 5 bit - contiene l'indirizzo base a cui poi va sommato l'offset per destinare così la cella in memoria oggetto dell'istruzione.

Così facendo ottengo che ho:

  • 6 bit codice operativo
  • 5 bit registro
  • 5 bit offset
  • Registro per l'indirizzo
  • 32 bit

Nota: il bus dati è anche non di 32 bit

Lezione 2 21/03/23

Il nostro processore MIPS che utilizziamo in questo corso ha a disposizione:

  • 6 bit per il codice operativo
  • 5 bit per il registro
  • 5 bit per l'offset
  • 32 bit per il bus degli indirizzi

Un problema che sorge subito è che siccome ogni istruzione deve essere composta da soli 32 bit questo, adesso, risulta impossibile.

Nota: 6 + 5 + 5 + 32 = 56 bit → 32 bit

Per questo motivo allora andiamo ad utilizzare un'indirizzazione indiretta di registro. Con questo tipo di indirizzamento vado a caricare l'indirizzo di destinazione in un registro, detta l'istruzione in essa specificare quale indirizzo fornisce questa istruzione.

Osserva: registro dove carico l'indirizzo di destinazione è di 5 bit → contiene l'indirizzo base a cui poi va sommato l'offset per accedere così la cella di memoria oggetto dell'istruzione.

Così facendo ottengo che ho:

  • 6 bit codice operativo
  • 5 bit registro
  • 5 bit offset
  • 5 bit registro per l'indirizzo
  • 32 bit ← rispettando il vincolo

Nota: il bus dati è anche di 32 bit

Istruzioni di lettura e scrittura

(1) lw $A5, 0($2)

Registro dove vado a salvare il dato

Offset che applico all'indirizzo base

Ind. base

Istruzione di lettura da memoria

(2) sw $A5, 4($2)

Indirizzo dov'è contenuto il dato che voglio scrivere in memoria

Indirizzo di memoria dove vado a salvare il dato

Istruzione di scrittura in memoria

Esempio di programma: scambio di variabili

Temp = V[k]

V[k] = V[k+1]

V[k+1] = Temp

  • lw $A5, 0($2)
  • lw $A6, 4($2)
  • sw $A5, 4($2)
  • sw $A6, 0($2)

Lezione 3: 15/03/19

Unità di ingresso

Programmi e dati

Memoria

ALU

Unità di controllo

CPU

Unità di uscita

Risultati

Bus indirizzi

Si compone di un dato numero linee dove comparando le sequenze di 0 e 1 che attraversano un luogo d'origine ad ogni cella di memoria che la CPU può indirizzare.

Linee che interconnettono la CPU con la RAM, ROM, dispositivi periferici.

Nota problema

È la CPU che pilota il bus degli indirizzi. Utilizza un intervallo di tempo per trasferire l'informazione giusta.

Bisogna stare attenti che la somma delle massime capacità che possono essere assorbite dai dispositivi, le periferiche, sia minore rispetto a quella erogabile dalla CPU.

Se questa condizione è verificata allora non ho errore della trasmissione. Verificata con un costo maggiore.

Questo problema riguarda anche per bus controllo e dati

Bus dati

Una differenza sostanziale rispetto al bus indirizzi è che il bus dati può essere pilotato anche dai dispositivi, e non solo dalla CPU.

Affinché si abbia un corretto trasferimento dei flussi che la linea veniva pilotata da un solo dispositivo alla volta se no c'è un conflitto di tensione.

Il dispositivo che pilota sarà deciso in base alle informazioni ricevute indirizzo e le linee del bus controlli.

L'interlocutore è l'interlocutore dalla CPU attorno il bus indirizzi. A tale interlocutore giungeva anche una linea dei bus controlli.

Tutti i dispositivi che si affacciano sul bus dati vedono adesso uno stato di resta a tre stati.

Cioè ogni linea può trovarsi nello stato in cui pilota con il valore logico alto oppure col valore basso e inoltre può trovarsi nello stato di non interferenza.

Detto anche di alta impedenza (circuito aperto)

Bus controlli

Si tratta di tante linee

Anteprima
Vedrai una selezione di 6 pagine su 22
Appunti Calcolatori elettronici - prima parte Pag. 1 Appunti Calcolatori elettronici - prima parte Pag. 2
Anteprima di 6 pagg. su 22.
Scarica il documento per vederlo tutto.
Appunti Calcolatori elettronici - prima parte Pag. 6
Anteprima di 6 pagg. su 22.
Scarica il documento per vederlo tutto.
Appunti Calcolatori elettronici - prima parte Pag. 11
Anteprima di 6 pagg. su 22.
Scarica il documento per vederlo tutto.
Appunti Calcolatori elettronici - prima parte Pag. 16
Anteprima di 6 pagg. su 22.
Scarica il documento per vederlo tutto.
Appunti Calcolatori elettronici - prima parte Pag. 21
1 su 22
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Ingegneria industriale e dell'informazione ING-INF/01 Elettronica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher torta1998 di informazioni apprese con la frequenza delle lezioni di Calcolatori elettronici e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Pavia o del prof Danese Giovanni.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community