I microprocessori
Il microprocessore è un circuito integrato costituito da
silicio. Il microprocessore svolge fondamentalmente
due funzioni: sovraintende tutte le operazione del
sistema ed esegue i calcoli aritmetici e logici.
Quindi la CPU si suddivide
In due unità fondamentali:
Unità di controllo ( CU,
Control Unit) e l’unità
aritmetico logica ( ALU,
Arithmetic Logic Unit).
Il ciclo macchina
Il funzionamento della CPU inizia col prelevamento delle istruzioni da
eseguire; l'istruzione in seguito viene codificata e in seguito la CPU
emette i segnali necessari all’esecuzione dell’istruzione.
•
•
•
•
Fetch dell’istruzione;
Decode dell’istruzione;
Fetch degli operandi;
Execute.
Fetch dell’istruzione
Il termine Fetch significa prelevamento e identifica la fase in cui la CPU deve
reperire le istruzioni da eseguire.
Il prelevamento avviene in questo modo: la
Control Unit legge la cella di memoria in cui l’indirizzo è memorizzato in un
apposito registro chiamato Program Counter (PC). Inoltre incrementa il
contenuto del registro Program Counter in modo che esso punti all’istruzione
successiva.
Decode dell’istruzione
In questa fase il codice macchina dell’istruzione viene codificato in operazioni
da eseguire da parte della CPU.
Fetch degli operandi
In questa fase il processore riconosce se necessario o meno prelevare dalla
memoria o da un registro interno un altro dato per completare l’esecuzione
dell’istruzione.
Execute dell’istruzione
Nella fase di execute la Control Unit invia segnali che rappresentano opportuni
comandi per l’esecuzione.
I registri
I registri indicano una particolare cella di memoria contenuta
all’interno della CPU. La dimensione dei registri si esprime in
bit e dipende dall’architettura specifica della CPU. In generale
la funzione dei registri e quella di memorizzare
temporaneamente i dati.
I registri possono essere accessibili e non,possono essere
speciali o generali. I registri generali vengono utilizzati
principalmente per memorizzare temporaneamente dei dati in
corso di elaborazione e variano a seconda dell’ISA del
sistema, i registri generali sono tutti accessibili dal
programmatore.
I registri speciali
Anche se il numero di registri speciali varia a seconda dell' Isa del
sistema, tuttavia alcuni registri sono sempre presenti:

IP(Instruction Pointer)
Contiene l'indirizzo dell'istruzione che deve essere eseguita
immediatamente dopo quella corrente.

SP(Stack Pointer)
Contiene l'indirizzo di una specifica zona di memoria organizzata
secondo la filosofia LIFO.

IR(Instruction Register)
Contiene il codice operativo dell'istruzione che è stata prelevata
durante la fase di fetch.

AR(Address Register)
,
Sono registri che consentono la segmentazione della memoria e
sono divisi in:
-CS(Code Segment)
-DS(Data Segment)
-ES(Extra Segment)
-SS(Stack Segment)
Registro dei flag
Consiste in un gruppo di bit che consentono di ottenere tutta
una serie di informazioni sullo stato dei risultati dell'ultima
operazione aritmetico-logica eseguita.
L'UC e il Temporizzatore
L'unità di controllo (UC o CU, Control Unit), unitamente al
temporizzatore, definisce la cadenza con cui si susseguono in modo
sincrono la varie operazioni del sistema. La sezione della cpu legata
all' UC e al temporizzatore genera i comandi eseguibili e il segnale
di clock.
Il Processore 8086
Il processore Intel 8086, chiamato anche iAPx86/10, introdotto sul
mercato nel giugno 1978, è stato il primo microprocessore della
seconda generazione a 16 bit. È contenuto in un chip di silicio a 40
pin i cui piedini sono disposti ordinatamente su due linee contenenti
ognuna 20 piedini, a ciascuno dei quali fa capo un segnale specifico.
L'8086 è costituito da due sottoinsiemi che operano in modo
indipendente e asincrono:

EU (Execution Unit)

BIU (BUS Interface Unit)
La EU costituisce la parte della CPU che elabora, ed è costituita da:
 Registri General Purpose;
 Registri speciali;
 Unità di controllo;
 Unita aritmetico-logica;
La BIU gestisce l'indirizzamento, il prelievo dei dati e delle
istruzioni dalla memoria e gestisce il colloquio con i dispositivi
esterni. È costituita da:
 Logica di controllo dei BUS;
 Registri di segmento;
 Registro contatore di programma;
 Registri puntatore;
 Coda delle istruzioni, registro FIFO a 6 byte, in cui vengono
memorizzate le istruzioni da eseguire.
Attraverso l' architettura pipeline la BIU esegue le seguenti
operazioni:
 Preleva le istruzioni dalla memoria e le mette in coda nel registro
Instruction Queue mediante la tecnica chiamata prefetching;
 Preleva l'istruzione dalla coda, la pone nel registro IR e la esegue;
 In caso di interruzione, la coda delle istruzioni viene svuotata e
riempita da altre istruzioni presenti nella destinazione indicata.
L'ALU
L'unità aritmetico-logica è il componente che esegue le
elaborazioni richieste dalla CPU.

La CPU, mediante appositi segnali di controllo,

Indica all'ALU il tipo di operazione da eseguire.

Tutti i segnali collegati in ingresso all'ALU sono Bafferizzati.
LIFO

Last In First Out indica una struttura di memoria
chiamata a pila in cui l'ultimi elemento inserito
rappresenta il primo a essere estratto
Un segnale bufferizzato è segnale che viene mantenuto
costante fino alla variazione successiva del clock.

Clock


Il clock è un circuito di temporizzazione che permette di
generare un segnale a onda quadra caratterizzata da una
particolare frequenza. A ogni ciclo i circuiti interni del
processore eseguono un operazione.
La frequenza viene misurata in hertz (Hz).