ESECUZIONE DEI PROGRAMMI
Il programma e’ formato da una sequenza
di istruzioni
 Il programma viene scritto utilizzando un
LINGUAGGIO DI ALTO LIVELLO (cioe’
vicino al linguaggio naturale dell’uomo)
 Per essere eseguito dal computer in
programma deve essere TRADOTTO in
programma scritto in LINGUAGGIO DI
BASSO LIVELLO (cioe’ vicino alla
macchina)

PROGRAMMI espressi con LINGUAGGI
Dal programma in Linguaggio di alto livello :
es: BASIC, C, FORTRAN, C ++, JAVA
Input A,B
C= A*B
TRADUTTORI
Al programma eseguibile se TRADOTTO in
Linguaggio macchina
ESPRESSO CON ISTRUZIONI ELEMENTARI e
IN CODIFICA BINARIA (0 e 1) (istruzione
Istruzioni macchina

Istruzioni si dividono in 2 parti:
CODICE OPERATIVO specifica l’operazione da compiere
OPERANDO: le locazioni delle celle di memoria cui
l’operazione si riferisce

Ciascuna istruzione e’ in linguaggio macchina
a) se è ELEMENTARE
0 read 8
1
2
3
4
5
6
7
8
9
read 9
loadA 8
loadB 9
MUL
storeA 8
write 8
halt
3.300
450
Istruz: MOLT. 3.300*450
celle 0/7 =istruzioni
celle 8/9 = dati
RAM
...... B) se espressa in BIT: 0 e 1
cosi’ codificate:
0100000000001000
0100000000001001
0000000000001001
0001000000001001
1000000000000000
0010000000001000
0101000000001000
1101000000000000
0000000000000000
Cap.II - Architettura del calcolatore - pag.
4
SET DI ISTRUZIONI

Il programma è eseguibile se composto da istruzioni
macchina (ognuna formata da codice operativo e
operando espressi in binario)
01001001
00110011

2 aspetti della CPU: struttura e prestazioni

Ogni CPU si caratterizza per il suo linguaggio macchina,
ovvero per l’insieme di istruzioni che e’ in grado di
eseguire, ovvero per il SET dei codici operativi,
decodificabili ed eseguibili da una CPU.

Il SET DI ISTRUZIONI in grado di decodificare ed

eseguire definisce la sua ARCHITETTURA o STRUTTURA
(ovvero come è fatta)
Da CPU semplici a CPU molto complesse
SET DI ISTRUZIONI e STRUTTURA CPU




Microprocessori sul mercato: INTEL, AMD,
MOTOROLA, CYRIX, ALPHA, POWER PC,
NEXGEN, SPARC (SUN+TEXAS), MIPS, HP8000
CPU appartenenti alla stessa FAMIGLIA (es:
INTEL) hanno una architettura “similare” e
riconoscono lo stesso set di istruzioni macchina,
sono “COMPATIBILI”
CPU diverse, con architettura e set di istruzioni
diverse, NON SONO COMPATIBILI
L’esecuzione di ogni singola istruzione
MACCHINA avviene attraverso lo svolgimento, a
sua volta, di una serie di operazioni elementari
che coinvolgono i componenti elementari della
CPU e la MEMORIA PRINCIPALE (RAM)
MEMORIA CENTRALE
Puo’ essere vista come una grossa
“tabella” che ha per righe le varie celle e
un numero di colonne pari al n.ro di bit
che compongono le celle (o locazioni).
 STRUTTURA A MATRICE in cui il byte e’
l’unita’ minima

bit 1
1^ cella
N^ cella
bit n
INDIRIZZAMENTO RAM
CIASCUNA CELLA o locazione ha un
contenuto ed un indirizzo
PUO’ ESSERE INDIRIZZATA (selezionata
tramite indirizzo relativo)
contenuto
0
!!!!!!!!!!!!!!!
indirizzo1
2
3
4
CPU - STRUTTURA: 3 sottosistemi



A L U - Unita’ logico-aritmetica - esegue le
operazioni aritmetiche e logiche
CONTROL UNIT - Unita’ di controllo:
decodifica le istruzioni ed invia gli opportuni
segnali alle altre unita’, coordina il
funzionamento dell’intera CPU
REGISTRI: locazioni di memoria di pochi byte
all’interno della CPU, veloci,specializzate per
particolari funzioni- ruolo di “cuscinetto”.
C
P
U
CONTROL
UNIT
ALU
REGISTRI
CPU semplice e generica – (pag.11CNR)
R. STATO
R. PC
R. Istruz.
Corrente)
ACCUM
ALU
A
B
CLOCK
R. DATI
R. INDIRIZZI
UNITA’ DI
UNITA’
CONTROLLO
CONTROLLO
RAM
Registri e CLOCK di sistema


Registri servono per mantenere dati e istruzioni
quando CPU opera e per trasferimento sul bus
TIMER O OROLOGIO INTERNO CHE
SCANDISCE la SINGOLA OPERAZIONE
ELEMENTARE CHE LA CPU COMPIE NELLA
ESECUZIONE DI UNA ISTRUZIONE.

L’ESECUZIONE DI UNA ISTRUZIONE E’ UN PROCESSO
NON CONTINUO MA DISCRETIZZATO IN UN NUMERO
BEN DEFINITO di PASSI ELEMENTARI (a seconda della
CPU) ciascuno scandito dal clock.

Tale intervallo temporale e’ detto anche CICLO
MACCHINA
Svolgimento di una istruzione
macchina (3 fasi):



1^ FASE DI FETCHING (RICERCA):
indirizzamento della memoria, prelevamento
della istruzione dalla memoria (indirizzo indicato
nel registro PC) e caricamento nel registro IC
2^ FASE DI DECODING (DECODIFICA):
decodifica del tipo di istruzione contenuta nel
registro IC tramite l’UC e predisposizione della
sequenza delle operazioni necessarie per la
esecuzione
3^ FASE DI EXECUTING (ESECUZIONE):
l’istruzione viene eseguita, se necessario si
attiva l’ALU per calcoli e si accede alla RAM per i
dati, con l’uso del registro di lavoro
ACCUMULATORE
PARAMETRI PER VALUTARE LA POTENZA
DELLA CPU
1) SET di ISTRUZIONI
2) PARALLELISMO INTERNO ed
ESTERNO
3) CLOCK DI SISTEMA (frequenza)
4) Capacità ALU e F.P.U.
5) CACHE INTERNA ED ESTERNA:
esistenza e dimensioni
6) N.ro di processori (oggi)
1. SET DI ISTRUZIONI:
ARCHITETTURE CPU: CISC/RISC
OGGI ......????






80486 - PENTIUM 4- Pentium
E.E. – AMD 64 FX - POWER PC
SEMPRE PIU’ NUMEROSE E
PIU’ COMPLESSE !!!!
CNR pag. 24 – PC MAG 2005
All’inizio CISC e RISC
CISC – Complex Istruction – Set
Computer
RISC – Reduced Instruction Set
Computer
Oggi “CRISP” – distinzione
venuta meno – elementi di
entrambe le architetture
2° elemento di potenza: . PARALLELISMO
INTERNO ed ESTERNO

PARALLELISMO INTERNO: da 8-16-32-64
bit. – indica il n.ro di bit che possono essere trattati
in parallelo internamente. Una CPU a 16 bit
significa che i registri dove vengono caricate le
istruzioni e i dati sono ampi 16 bit, che i percorsi
interni ed esterni alla CPU sono ampi 16 bit
(dimensioni dei registri interni, dell’ALU, del
bus interno)



A parita’, la CPU a 16 bit e’ 4 volte meno rapida di
quella a 64 bit (4 cicli macchina): piu’ bit ha, più è
elevato il parallelismo, maggiore e’ la velocita’
Dal 2004: nuove CPU con parall. Interno a 64 bit
PARALLELISMO ESTERNO: dimensioni bus dei dati +
registro dati
Il clock: 3° parametro
Ciascuna istruzione macchina
Es: READ 8 = 0100000000001000
si svolge in 3 fasi


Ciascuna fase si svolge eseguendo una serie di
microistruz. o operaz.elementari (o cicli macchina),
diversi fra CPU: esempio CISC
fetch
esecuzione
O - RI
MEM(RI) - RD
RD - RIC
PC + 1 - PC


RDP - RD
OP(RIC) - RI
RD - MEM(RI)
Ciascuna microistruzione o ciclo macchina o microciclo
dura un periodo di clock
Il clock di sistema scandisce con impulsi ogni ciclo: più
sono gli impulsi, maggiori sono le operazioni eseguite a
parità di tempo, più è VELOCE la CPU.
Velocita’ operativa della CPU=
FREQUENZA del CLOCK




La frequenza degli IMPULSI del clock è misurata in Mhz
(33,50,66,133,166,200,500,800,1000,1200,... 4.000 Mhz)
La frequenza indica quanti cicli (operazioni elementari o
microistruzioni) la macchina compie in un secondo (o
quanti impulsi il clock scandisce)
Es: (i 8086) 4,7 Mhz
4.700.000 cicli
1/4.700.000 = 0,00000021 = 210 ns
50 Mhz (486dx) = 50.000.000 cicli
= 1/50.000.000 = 0,000000020 = 20 ns
 500

Mhz (Pentium II) = 2 ns
2.000 – 3.700 Mhz (2,0- 3,7 GHZ) (Pentium 4
– AMD) = da 0,5 ns a 0,3 ns
Il clock: parametro di velocità


1)
2)
3)

Il Pentium 4 (1° versione) a 1.600 Mhz ha una
velocità doppia di un Pentium 4 a 800 Mhz: solo
se CPU è identica
In funzione della architettura, possiamo avere 3
tipi di CPU
CPU non scalari: (fino al i386) più cicli per
eseguire una istruzione
CPU scalari: (i486) 1 istruzione in 1 ciclo
CPU superscalari: più di una istruzione in 1 ciclo
di clock (il Pentium)
Non ha senso confrontare il clock di CPU diverse
(es: Pentium 400 è più veloce del Celeron 500)
CLOCK
velocità CPU
Il CLOCK di SISTEMA e’ un parametro
VALIDO per mettere a CONFRONTO la
POTENZA di CPU solo se:
 Il set delle istruzioni e’ uguale
 Il n.ro di microistruzioni o cicli macchina
per istruzione e’ uguale
E’ UN PARAMETRO DI CONFRONTO e di
VALUTAZIONE SOLO TRA CPU
IDENTICHE

Clock come parametro di potenza




Non ha senso oggi confrontare sigle di Pentium 4
diverse o CPU Pentium e AMD sulla base del solo clock
sia perché il n.ro di operazioni per istruzioni è diverso
sia perché sono state introdotte all’interno delle CPU
funzioni e componenti complesse che fanno la
differenza
La “rincorsa/identificazione delle CPU” sulla base del
SOLO clock è finita: fino al Pentium 4 di 1° generazione
la potenza si qualificava già dalla sigla della CPU con il
solo clock: era un elemento immediato di misura della
velocità
Spesso la frequenza del clock non compare più nel
nome della CPU e bisogna guardare tutte le altre
funzioni nella CPU
OFFERTA CPU = offerta piani tariffari telefonia MOBILE
4° elemento: l’ALU e la FPU
Capacità di calcolo dell’ALU
 1° ALU – solo addizioni – resto con
programmi ad hoc
 Differenza le CPU con COPROCESSORE
MATEMATICO o F.P.U. (i386 – i387) (486
dx – 486sx)
 Oggi tutte CPU con F.P.U. –Floating Point
Unit
 Importante nelle applicazioni matematiche,
ingegneristiche, CAD, grafica, videogiochi,
multimediali

Scarica

ARCHITETTURE CPU