Unità di Apprendimento 1: Le fasi operative della CPU

Slide sull'Unità di apprendimento 1. Il Pdf, una presentazione di livello universitario in Informatica, descrive le architetture dei sistemi di elaborazione e le fasi operative della CPU, come fetch, decode e fetch degli operandi.

Mostra di più

22 pagine

8QLWjGLDSSUHQGLPHQWR
/HDUFKLWHWWXUHGHLVLVWHPLGL
HODERUD]LRQH
8QLWjGLDSSUHQGLPHQWR
/H]LRQH
/¶XQLWjGLHODERUD]LRQH&38

Visualizza gratis il Pdf completo

Registrati per accedere all’intero documento e trasformarlo con l’AI.

Anteprima

Unità di apprendimento 1

Le architetture dei sistemi di elaborazione 1110100101 IO 0100 10101010001010 1012100101 101010100101 001110101010100101Unità di apprendimento 1 Lezione 2 1110100101

L'unità di elaborazione (CPU)

IO 0100 10101010001010 101010100101 1012100101 001110101010100101In questa lezione impareremo:

  • a riconoscere il ruolo di CPU, ALU, Unità di Controllo e BUS
  • a definire il funzionamento e il ruolo del chipset e dei BUS di espansione
  • a connettere una CPU sulla motherboardmicroprocessore

Il microprocessore

Il microprocessore , è il cuore del sistema, svolge fondamentalmente due funzioni:

  • sovrintende a tutte le operazioni del sistema, generando i segnali necessari al funzionamento dei circuiti a esso collegati;
  • esegue i calcoli aritmetici e logici. .

Le tre unità fondamentali della CPU

  • l'unità di controllo (CU, Control Unit), che governa e impartisce gli ordini di esecuzione all'unità aritmetico-logica;
  • l'unità aritmetico-logica (ALU, Arithmetic-Logic Unit), che esegue i calcoli elementari;
  • Registri di memoria (registri di appoggio per memorizzare provvisoriamente i dati usati per l'esecuzione dei calcoli).Il ciclo macchina

Il ciclo macchina

  1. fase di Fetch dell'istruzione;
  2. fase di Decode dell'istruzione;
  3. fase di Fecth degli operandi;
  4. fase di Execute.

Boot Fetch Op Code Fetch Decode Op Code Fetch Operand Address Execute Execute Instruction

Ciclo macchina e reset

. Ogni ciclo macchina viene eseguito molto velocemente e in maniera ciclica a sua volta con altri cicli macchina, fino a un reset Completamento della decodifica dell'istruzione attuale Reset Fetch Execute Completamento dell'esecuzione dell'istruzione precedenteFetch dell'istruzione

Fase di Fetch dell'istruzione

  • Fecht significa «prelevamento» e identifica la fase in cui la CPU deve reperire l'istruzione da eseguire. I questa fase la CPU dialoga con la memoria centrale per ottenere il codice dell'istruzione da eseguire. .

Prelevamento dell'istruzione

Il prelevamento avviene in questo modo:

  • La CU legge la cella di memoria il cui indirizzo è memorizzato in un apposito registro chiamato contatore di programma (PC, Program Counter).
  • Dopo aver letto il codice dalla memoria, incrementa in contenuto del PC, in modo che «punti» all'istruzione successiva.Decode dell'istruzione

Fase di Decode dell'istruzione

. In questa fase il codice macchina dell'istruzione viene codificato in operazioni da seguire da parte della CPU, tutto questo attraverso circuiti logici predisposti (prefissate fisicamente) o mediante microistruzioni (sequenze di passi elementari) contenute nella ROM secondo la logica microprogrammata.Fecth degli operandi

Fase di Fetch degli operandi

  • Operazione di lettura, dalla memoria o da un registro nel caso in cui la CPU riconosce se è necessario prelevare dalla memoria o da un registro interno un altro dato per completare l'esecuzione.Execute dell'istruzione

Fase di Execute dell'istruzione

Nella fase di execute la Control Unit invia segnali che rappresentano opportuni comandi per l'esecuzione.Ciclo d'istruzione

Ciclo d'istruzione

Fase fetch

(1) Fetch istruzione (2) Calcola l'indirizzo della prossima istruzione

Fase decode

(3) Decodifica l'istruzione (4) Calcola l'indirizzo dell'operando (5) Fetch operando Operandi multipli

Fase execute

(6) Esegui l'istruzione (7) Calcola l'indirizzo del risultato (8) Memorizza il risultato Istruzione completata, estrai la prossima istruzioneEsempio: Operazioni svolte dalla CPU

Esempio: Operazioni svolte dalla CPU

Supponiamo di voler effettuare la somma tra il contenuto della cella di memoria di indirizzo [000Ah] e il contenuto del registro AL ( registro accumulatore, AX: AH+AL, è quello che coinvolge quasi tutte le operazioni logico-aritmetiche) il processore deve eseguire la seguente istruzione in assembly: ADD [000Ah], ALLa memory dump

La memory dump

. La memory dump identifica lo stato in cui si trovano le celle della memoria in un determinato momento . In alcuni casi viene anche mostrato il corrispettivo ASCII del contenuto della singola cella di memoriaEsempio di memory dump

Esempio di memory dump

il valore 05h è memorizzato nella cella di indirizzo 000Ah, due celle più a destra rispetto all'indirizzo base 0008h indirizzo base di memoria contenuto delle singole celle di memoria +1 +2 +3 +4 +5 +8 +7 0000h ... 0008h 05 ... 00F8h 0100h 00 OA 08 00 00 L'indirizzo che contiene 05 è dato da: 0008 + 2 = 000A + istruzione ADD [000Ah], AL Dump della memoria RAMLa CPU esegue: ADD [000Ah],AL

La CPU esegue: ADD [000Ah],AL

1) Fetch

  • Viene prelevata l'istruzione presente all'indirizzo contenuto nel registro PC (0100h)
  • Si tratta di una sequenza di 6 byte che rappresentano il codice macchina dell'istruzione (00 05 0A 00 00 00) Il codice operativo dell'istruzione viene inserito nel registro IR (Instruction Register)La CPU esegue: ADD [000Ah],AL

2) Decode

  • Viene decodificata l'istruzione il cui codice macchina è presente nel registro IRLa CPU esegue: ADD [000Ah],AL

3) Fetch degli operandi

  • Viene prelevato il contenuto della cella 000Ah, cioè 05hLa CPU esegue: ADD [000Ah],AL

4) Execute

Il valore recuperato dal passo precedente (05h) viene sommato con il contenuto del registro AL (poniamo che contenga 0Fh) Il risultato viene posto nuovamente nella cella di indirizzo 000A che conterrà 14h al termine dell'esecuzione dell'istruzione . L'operazione richiede più cicli di data pathData Path

Data Path

Il data path è una sezione della CPU che raggruppa l'ALU e i registri II passaggio di due operandi attraverso l'ALU e la memorizzazione del risultato in un nuovo registro viene detto ciclo di data path A+ B A Registri B BUS di Input della ALU A B Registri di Input della ALU ALU A + B C Registro di Output della ALUIl clock

Il clock

Ogni ciclo macchina è scandito da un temporizzatore (clock), oscillatore al quarzo che emette segnali a intervalli di tempo regolari Il numero di cicli macchina eseguiti in un secondo di tempo prende il nome di Hertz (Hz) Il clock è un segnale in ingresso alla CPU, maggiore è la frequenza del clock, maggiore sarà la velocità di lavoro della CPU. 7 Tempoclock

CPU e tempi discreti

La CPU è un sistema a tempi discreti, in quanto si prendono in considerazione lo stato del sistema in un certo istante t e poi all'istante successivo (t+1) è privo di significato; quello che succede nel periodo compreso tra t e (t+1) è privo di significato. La CPU è un circuito digitale sincrono; il suo stato cambia ogni volta che riceve un impulso da un segnale di sincronismo, detto clock, che ne determina la velocità operative, detta velocità di clock.Architettura interna di una generica CPU

Architettura interna di una generica CPU

indirizzi dati controllo scrivi leggi memoria MAR scrivi bus interni registro registro ALU MDR registro esecuzione BUS Central Processor Unit unità di controllo PC IR PSW bus interni stato leggi I/O

Non hai trovato quello che cercavi?

Esplora altri argomenti nella Algor library o crea direttamente i tuoi materiali con l’AI.