260 likes | 451 Views
dati. dati. dati. istruzioni. istruzioni. comandi. Bus dati. Registro di stato. Dati. Registro dati. indirizzi. Registro indirizzi. ALU. accumulatore. Memoria centrale. Bus indirizzi. Registro istruzioni. Program counter. rete di decodifica. clock. u. di controllo.
E N D
dati dati dati istruzioni istruzioni comandi Bus dati Registro di stato Dati Registro dati indirizzi Registro indirizzi ALU accumulatore Memoria centrale Bus indirizzi Registro istruzioni Program counter rete di decodifica clock u. di controllo Unità centrale di processo
Modello di Von Newmann • Viene eseguita una istruzione una di seguito all’altra in modo sequenziale • Formato • Sottosistema memorie • Sottosistema calcolo • Sottosistema input/output • Interagiscono tra loro attraverso i Bus
Il clock • Funzione in modo sincrono (tutto assieme) • Clock • Frequenza MHz milioni di impulsi al secondo • GHz miliardi di impulsi al secondo • Diversi tipi di clock • Del processore interno alla CPU • Dei bus di sistema per sincronizzare con il mondo esterno • Ogni dispositivo ha il proprio
La memoria • Esistono diversi tipi di memoria • Registri (CPU) • Cache • Ram • Memorie di massa (dispositivi di i/o) • Rom
La memoria centrale Ram • Dispositivo elettronico in grado di contenere tutte le informazioni necessarie per l’elaborazione dei dati • Dati , informazioni, risultati intermedi • È più veloce della memoria di massa
Deve • permettere • Di Scrivere • Di Leggere • Di Conservare • Non tutte le cose contemporaneamente • Soddisfare le seguenti esigenze • Alta velocità • Elevata capacità • Bassi costi
Tipi di memoria • Ram (randomaccessmemory) • Casuale (accesso celle non dipende dal contenuto) • Cella individuata dall’indirizzo • Volatile (perde il contenuto una volta manca l’alimentazione elettrica) • Più grande più veloce computer • Statica e dinamica
indirizzo1 dati indirizzo2 dati Indirizzo n dati Indirizzo n+1 istruzioni Indirizzo n+m istruzioni selettore Registro indirizzi temporizzazione Scrittura/Lettura Unità di governo Registro dati Memoria centrale
I Registri • Componenti circuitati (fatti in elettronica) • Accesso casuale o a scorrimento • Consentono accesso molto rapido • Possono memorizzare solo un numero limitato di byte • Memoria di tipo volatile
Bit 1 bit 2 bit 3 bit 4 bit n 0 0 1 0 0 1 0 0 1 0 0 0 1 0 1 clock dato I Registri • Registi in parallelo • Tutti i bit che formano il dato vengono memorizzati contemporaneamente • Prima fase vengono azzerati tutti i bit di registro • Seconda fase vengono commutati tutti i bit che formano il dato che devono assumere il valore 1
0 1 Bit 1 bit 2 bit 3 bit 4 bit n 1 clock I Registri • Registi a scorrimento • Tutti i bit che formano il dato vengono memorizzati in modo sequenziale (ad ogni impulso di clock) • Il contenuto dell’i-esimo bit stabile viene trasferito in quello di posto i+1 • Nel bit stabile di posto 1 viene registrato il valore del nuovo bit da memorizzare 1 0 1 dato
I registri • Registri di uso generale in cui vengono depositati operandi e risultati intermedi dell’elaborazione (dimensione in bit indica l’ampiezza della parola) • Es. registro accumulatore, esso (in una addizione) contiene uno degli operandi e il risultato della operazione Primo operando Accumulatore Unità aritmetica logica secondo operando
Codice operativo Codice operandi I registri • Registro istruzioni contiene l’istruzione di un programma dopo che è stata letta dalla memoria per il tempo necessario alla sua esecuzione • una parte contiene il codice operativo istruzione collegata al decodificatore e direttamente unità di controllo • Indirizzo(indirizzi) dell’ operando (degli operandi) Bus interno dati Bus interno degli indirizzi Unità di controllo decodificatore
I registri • Registro contatore di programma vengono generati gli indirizzi delle istruzioni da eseguire (serve per sapere dove risiede in memoria l’istruzione da prelevare) • Registro dati, registro indirizzi collegano la Cpu con i bus esterni. • Pila di sistema è un registro dove viene conservato lo stato del processore e dei registri in alcuni casi come ad esempio la chiamata ad un sottoprogramma. • Stack pointer registro che tiene conto della posizione del primo elemento della pila. Pila di sistema Stack Pointer Ind X
I registri • Registri di stato sono dei registri dove ogni bit rappresenta logicamente un indicatore (flag) che consente particolari informazioni relative alla condizioni verificatesi nel corso dell’ultima operazione • Flag di carry viene posto ad 1 quando un operazione aritmetica produce un riporto (positivo o negativo) mentre assume il valore 0 negli altri casi • Flag di overflow, che viene posto ad 1 se il risultato di un operazione aritmetica tra due numeri relativi oltrepassa la capacità di elaborazione della ALU (quando il bit più significativo trabocca sul bit di segno ) • Flag di zero 1 se il risultato dell’ultima operazione fatta è zero 0 negli ltri casi • Flag di negatività che riproduce il bit di segno del risultato
I bus • Bus dati • Linee bidirezionali • Bus indirizzi • Line unidirezionali • Tramite i quali il processore seleziona l’unità con la quale deve essere stabilite le comunicazioni • Bus di controllo • bidirezionali • Segnali di controllo
La ALU • Unità aritmetico logica • Rete combinatoria che realizza la principali funzione logiche • Esegue operazioni aritmetiche • Esegue operazioni di confronto • scorrimento a sinistra e a destra dell’operando coinvolto
La ALU Bus esterno dei dati Registro dati Bus interno dati accumulatore Registro Dati Unità Aritmetico logica
Unità di controllo Controlla il funzionamento di tutti gli altri elementi che compongono il sistema di elaborazione • Codificare • Interpretare • Elaborare istruzioni Generando segnali di attivazione di tutti gli organi esecutivi del computer Al ritmo degli impulsi forniti dal temporizzatore (clock)
Codice operativo Indirizzo opernadi Bus indirizzi Unità di controllo Rete di decodifica comandi
Tipo di microprocessore • Logica cablata • L’unità di controllo e conglobata con la ALU • È un insieme di circuiti logici sequenziali • Definiti una volta per tutte dal costruttore • La scomposizione in istruzioni elementari non può essere modificata dall’utente • Non si può essere esteso il repertorio delle istruzioni proposte
Tipi di microprocessore • Logica microprogramma • Logiche di controllo basate sulla microprogrammazione • Le istruzioni macchina (microistruizioni) vengono eseguite come un insieme di “azioni elementari” di complessità inferiore • l’Unità di controllo deve assumere la struttura di un calcolatore a cui viene demandata l’esecuzione di un microprogramma associato all’istruzione da eseguire
Unità di controllo Decodificatore istruzioni Decodificatore microistruzioni Emette l’indirizzo del microprogramma associato al codice operativo Registro micro istruzioni corrente Contatore di Microprogramma (program counter) Memoria di controllo (prom rom, contiene tutti micro programmi) Indirizzi delle microistruzioni Circuiti di temporizzazione
Unità di controllo • Il codice operativo contenuto nel registro istruzioni viene inviato al decodificatore che genera un indirizzo di microprogramma • Questo indirizzo viene caricato nel contatore di microprogramma e punta,nella memoria di controllo, alla prima microistruzione del microprogramma associato all’istruzione da eseguire • Le microistruzioni di questo microprogramma vengono eseguite in sequenza a, ogni passo, i segnali corrispondenti vanno ad abilitare le rispettive unità funzionali, mentre l’indirizzo della microistruzione successiva viene portata nel contatore di microprogramma.
dati dati dati istruzioni istruzioni comandi Bus dati Registro di stato Dati Registro dati indirizzi Registro indirizzi ALU accumulatore Memoria centrale Bus indirizzi Registro istruzioni Program counter rete di decodifica clock u. di controllo Unità centrale di processo