• Non ci sono risultati.

Il processore -CPU

N/A
N/A
Protected

Academic year: 2021

Condividi "Il processore -CPU"

Copied!
41
0
0

Testo completo

(1)

Il processore - CPU

(CENTRAL PROCESSING UNIT)

(2)

Funzionamento

o Programmi e dati risiedono in file

memorizzati in memoria secondaria.

o Per essere eseguiti (i programmi) e usati (i dati) vengono copiati nella memoria primaria.

o La CPU e’ in grado di eseguire le

istruzioni di cui sono composti i

programmi

(3)

Funzionamento

RAM HARD DISK

programma

programma

copia il programma in RAM

esegui le istruzioni del programma

CPU

(4)

Il processore - CPU

(CENTRAL PROCESSING UNIT)

o Si occupa di eseguire i programmi

o I programmi che la CPU è in grado di eseguire sono scritti in linguaggio macchina

o Istruzioni macchina:

Codice istruzione | argom. 1 | argom. 2

•16 o 32 bit di lunghezza

•gli argomenti possono mancare

(5)

Un programma in linguaggio macchina (ASSEMBLER)

LOAD 3568 R1 LOAD 3574 R2

ADD R1 R2

STORE R1 3568 JUMP 1000

…….

1000

STORE R1 3568

1004

1008

1012

1016

(6)

Il set di istruzioni macchina

o Ogni tipo di processore e’ in grado di eseguire un numero limitato (40/100) di istruzioni

o Combinando in modo diverso sequenze anche molto lunghe di istruzioni (i programmi) si

possono far fare al computer tantissime cose completamente diverse

(7)

Il set di istruzioni macchina

o Istruzioni per l’elaborazione dei dati n aritmetiche

n logiche (AND, OR, NOT)

n relazionali (maggiore, minore, uguale, ...) o Controllo del flusso delle istruzioni

n sequenza n selezione n ciclo

o Trasferimento di informazioni

n dati ed istruzioni fra CPU e memoria

n dati fra CPU e dispositivi di I/O (tramite interfacce)

(8)

Struttura del processore

CU

Memoria centrale

(9)

Le componenti della CPU:

LA CONTROL UNIT (CU)

o L’unità di controllo del processore esegue una istruzione svolgendo le seguenti tre operazioni di base

n Fetch (lettura)

n Decode (decodifica) n Execute (esecuzione)

o Un programma è eseguito reiterando il ciclo

fetch-decode-execute (ciclo macchina)

per eseguire ordinatamente le sue istruzioni

(10)

Frequenza di clock

La frequenza con cui si eseguono i cicli di esecuzione è scandita dal clock (orologio interno)

n ad ogni impulso di clock l’unità di controllo esegue un ciclo di esecuzione

n la velocità di elaborazione di un

microprocessore dipende dalla frequenza del suo clock (300, 400,... MHz) (es.: 300

milioni di cicli al secondo). Attualmente si parla di GHz.

(11)

Le componenti della CPU:

I REGISTRI

o piccole unita’ di memoria (2, 4, 8 byte) con tempi di accesso molto piu’ bassi

delle celle della memoria primaria

o Ospitano le informazioni necessarie per eseguire l’istruzione corrente

o In numero molto limitato (10, 20, 64) si

dividono in registri speciali e generali

(12)

Le componenti della CPU:

I REGISTRI SPECIALI

o Il Program Counter (PC)

n contiene l’indirizzo in memoria centrale della prossima istruzione da eseguire.

n All’inizio dell’esecuzione di un programma viene caricato con l’indirizzo della prima istruzione di quel programma.

n Ad ogni istruzione eseguita il PC viene modificato per contenere l’indirizzo della istruzione successiva

(13)

Le componenti della CPU:

I REGISTRI SPECIALI

o L’Instruction Register (IR)

n contiene l’istruzione correntemente in esecuzione

n la CU legge l’istruzione contenuta nell’instruction register e la esegue

o IL Registro di stato (PSW)

n descrive lo stato corrente della esecuzione n segnala eventuali errori (ad es.: overflow)

(14)

Le componenti della CPU:

I REGISTRI SPECIALI

o Registro Indirizzi Memoria (MAR) n contiene l’indirizzo della cella da cui

leggere o in cui scrivere un dato

o Registro dati Memoria (MDR)

n contiene il dato letto dalla memoria o da

scrivere in memoria

(15)

Le componenti della CPU:

I REGISTRI GENERALI

o I registri generali

n in numero di 8, 16, 64

n sono usati come memorie

temporanee per contenere gli

operandi delle istruzioni e i risultati

parziali durante l’esecuzione delle

istruzioni.

(16)

Le componenti della CPU:

ARITHMETIC-LOGIC UNIT (ALU)

o Si occupa di eseguire le operazioni di tipo aritmetico/logico: somme,

confronti…

o preleva gli operandi dai / deposita il risultato delle operazioni nei: registri generali

o A volte e’ affiancata da un

co-processore matematico

(17)

Le componenti della CPU:

ARITHMETIC-LOGIC UNIT (ALU)

(18)

Ciclo fetch-decode-execute

1) FETCH:

•si accede alla prossima istruzione, riferita dal registro contatore dell’istruzione (PC)

•si porta tale istruzione dalla memoria centrale al Registro Istruzioni (IR)

(19)

Ciclo fetch-decode-execute

o 2) DECODE: decodifica dell’istruzione

n si individua il tipo dell’operazione e gli operandi (dati) usati

n si trasferiscono i dati nei registri opportuni

(20)

Ciclo fetch-decode-execute

o 3) EXECUTE: esecuzione dell’istruzione

n si incrementa il registro contatore dell’istruzione (PC)

n ciascuna azione viene richiesta al componente opportuno

(21)

MEMORIA CACHE

o Livello di memoria intermedio tra i registri e la ram.

o Per memorizzare i dati usati piu’ spesso senza doverli recuperare in memoria

o 64, 128, 256, 512KB, 1MB, 2MB o Interna o esterna alla CPU

o Influisce moltissimo sulle prestazioni e il costo della CPU (e quindi del computer)

o I computer attuali hanno spesso più livelli di cache

(22)

HARD DISK RAM

programma

programma

copia il programma in RAM per l'esecuzione

esegui le istruzioni del programma

CPU

CACHE

gram

copia un pezzettino di programma e dei dati in cache

registri

MEMORIA CACHE

(23)

Memorie di un computer

Registri < 1 KByte 100 * picosecondi Cache < 1 MByte nanosecondi

RAM < 4 Gbyte 10 * nanosec Hard disk > 40 GByte 10 * microsec.

Dischi ottici 650MB-17GB micro/millisecondi Nastri > 10 GByte 10 * millisecondi

(24)

Gerarchia delle memorie

(25)

Bus di sistema

o Interconnette CPU, memorie ed interfacce verso dispositivi periferici (I/O, memoria di massa, ...)

o Collega due unità funzionali alla volta

n una trasmette e l’altra riceve

o Il trasferimento dei dati avviene sotto il controllo della CPU

(26)

Bus di sistema

o Il bus trasporta dati, indirizzi e comandi o Componenti del bus (sottogruppi di linee):

n Bus dati (data bus)

n Bus indirizzi (address bus) n Bus comandi (command bus)

o Bus dati (data bus)

n Serve per trasferire dati

o tra la memoria centrale ed il registro dati (MDR) della CPU

o tra periferiche e CPU (o memoria centrale) n Bidirezionale

(27)

Bus di sistema

o Bus indirizzi (address bus)

n Serve per trasmettere il contenuto del registro indirizzi (MAR) alla memoria (o ad una periferica)

o si seleziona una cella per successive operazioni di lettura o scrittura

n Unidirezionale

o Bus comandi (command bus) n Serve per inviare comandi

o verso la memoria (es: lettura o scrittura) o o verso una periferica (es. stampa verso la

stampante / interfaccia) n Unidirezionale

(28)

Caratteristiche dei microprocessori

o repertorio di istruzioni

n L’insieme delle istruzioni che costituiscono il linguaggio macchina del processore

o frequenza di clock

n l’esecuzione di una istruzione può richiedere più cicli macchina o ampiezza del bus

n numero di bit nel bus interno del processore o co-processori

n processori specializzati per operazioni complesse (es: co-processore matematico)

o memoria cache

n una memoria veloce locale al processore, che consente di accedere più velocemente ai dati da elaborare

(29)

Dispositivi di input/output (I/O, PERIFERICHE)

o Terminali. Tastiera + Video:

n risoluzione, dimensione in pollici,…

o Stampanti:

n ad aghi, a getto, d’inchiostro, laser,…

o Modem: per collegarsi in rete

o Scanner: per digitalizzare le immagini

(30)

Dispositivi di Input

Tastiera Mouse

Joystick trackball Touch pad

Penna ottica

Scanner

Webcam

Fotocam. Dig.

Microfono

Schermi touch screen Tavoletta grafica

(31)

Dispositivi di Output

Monitor

Cuffie

Plotter

Stampante

Casse acustiche Videoproiettore

(32)

Piastra madre

(33)

I programmi (il software!!!)

o Qualcosa di assolutamente

immateriale, memorizzato mediante supporti magnetici ed elettronici che dice al computer cosa fare

o Il computer e’ programmabile.

Usando programmi (sequenze di

istruzioni) diversi, gli facciamo fare

cose diverse

(34)

Il software di base

o Dobbiamo impartire ordini al computer usando solo il codice binario???

o Ovviamente no: il computer è dotato di alcuni programmi (il software di base) che rendono il computer facile da usare

o Questi programmi trasformano il computer in una macchina virtuale, più vicina alle

esigenze dell’utente che può così ignorare i dettagli implementativi.

(35)

Il software di base

o Il sistema operativo: permette di

n sfruttare le risorse del computer in modo semplice e (si spera) intuitivo (si pensi ad esempio alle interfacce grafiche)

n usare i programmi che ci interessano (di scrittura, di studio, i videogames) senza preoccuparci di come questo avvenga

all’interno del computer

(36)

Il software di base

o I Linguaggi di programmazione ad alto livello, permettono di:

n scrivere i propri programmi, cioè di usare il computer come vogliamo noi n di poter usare questi programmi su

qualsiasi (beh, quasi) computer

(questa si chiama portabilità)

(37)

Il sistema operativo

o E’ di gran lunga il programma più

importante che gira su un qualsiasi computer

o Senza il Sistema Operativo (SO) il

computer sarebbe scomodissimo e

complicatissimo da usare.

(38)

Cosa fa il sistema operativo?

o Gestisce in modo efficiente le risorse del computer: cpu, memoria,

periferiche.

o Interpreta i comandi dell’utente:

mouse e clicks, esecuzione di programmi,…

o Nasconde la macchina fisica all’utente

(39)

La cipolla del sistema operativo

INTERFACCIA COMANDI

GESTIONE MEMORIA/RISORSE

KERNEL(machine dependent)

(40)

Tipi si sistemi operativi

o Mono-utente o Multi-utente (Mono/multi-user)

o Mono o Multi-programmati (Mono/multi-tasking)

o Distribuiti (o di rete)

(41)

Le funzioni principali dei sistemi operativi

o Gestione del processore e dei processi o gestione della memoria principale

o gestione della memoria virtuale

o gestione della memoria secondaria (il file system)

Riferimenti

Documenti correlati

Per garantire un sistema scolastico inclusivo sarà necessario coinvolgere tutto il personale scolastico nelle attività di formazione in servizio del personale della

avvisare direttamente, nei casi ritenuti più gravi (per assenze, ritardi, rendimento scolastico carente) telefonicamente o per iscritto la famiglia dei ragazzi;

Esiste un programma chiamato interprete che è in grado di prendere in ingresso le istruzioni scritte in linguaggio ad alto livello (una alla volta) e fornire in uscita le

non sia stato assunto in violazione del diritto di precedenza, stabilito dalla legge o dal contratto collettivo, alla riassunzione di un altro lavoratore

▪ La MM contiene i programmi in esecuzione: ogni dato e ogni istruzione, prima di essere elaborato, viene copiato in memoria centrale. ▪ Diversi tipi

16.1 Linkem supporta il Cliente nel caso in cui dovesse riscontrare difficoltà/problemi nell’accedere/ utilizzare Servizi attraverso il numero di Assistenza Clienti indicato nella

Reshkin, da svolgersi presso il Dipartimento di Bioscienze, Biotecnologie e Biofarmaceutica dell’Università degli Studi di Bari “Aldo Moro”.. Agosto 2016-Novembre 2016

Resta confermato l’attuale assetto delle fonti, delineato da ultimo con il decreto legislativo 25 maggio 2017, n. Si conferma, quindi, che anche in sede di contrattazione