Terza lezione 21 ottobre 2016
Condizione per la conversione A/D
Il teorema di Shannon (o di Nyquist) fornisce la condizione necessaria affinché un segnale
dopo il campionamento possa nuovamente essere ritrasformato in analogico, tramite un
convertitore D/A riottenendo il segnale di partenza.
Teorema: la frequenza di campionamento di un segnale deve essere
f c  2 f max
dove fmax rappresenta la frequenza massima contenuta nel segnale, ed è anche
conosciuta come frequenza di Nyquist, mentre fc è la frequenza di
campionamento.
Analogico: segnale continuo nel tempo
Digitale: segnale discreto nel tempo costituito da 0 e 1
2
Il campionamento è un passo del processo di conversione analogico digitale di un
segnale. Consiste nel prelievo di campioni (samples) da un segnale analogico e
continuo nel tempo ogni Dt secondi.
Dt è l'intervallo di campionamento, mentre Dt= 1/Fs è la frequenza di
campionamento.
Il risultato è un segnale analogico in tempo discreto. Tale segnale sarà in seguito
quantizzato, codificato e quindi reso accessibile a qualsiasi elaboratore digitale.
Segnale Analogico
Segnale Campionato
3
Architettura dei Computer
In un Computer la circuiteria che esegue operazione sui dati è denominata CPU
(Central Process Unit) o più semplicemente processore. L’architettura che si utilizza
ancora oggi come schema è quella di Von Neumann (1945) progettista e inventore
del primo calcolatore ad utilizzare la memoria al posto di cavi elettrici
Unità di Input
CPU
Memoria
Principale
Unità di
Output
Architettura dei Computer
In quest'immagine di una scheda madre si
notano a destra il Socket della CPU, allogio
della RAM e sparsi qua e là alcuni condensatori
elettrolitici, transistor, resistenze, e slot PCI
Memorie RAM. Dall'alto: DIP, SIPP, SIMM
(30 pin), SIMM (72 pin), DIMM (168 pin),
DDR DIMM (184 pin)
Architettura dei Computer
• Una memoria centrale, supporto in grado di registrare le singole
istruzioni di un programma e i dati sui quali operare.
• Una unità centrale di elaborazione, insieme di circuiti elettronici, in grado
di effettuare le operazioni richieste dal programma e di prendere decisioni
sulla base dei risultati ottenuti; l'unità centrale di elaborazione deve,
inoltre,provvedere alle operazioni di trasferimento tra la memoria centrale e le
unità periferiche, governando lo smistamento dei dati di ingresso e uscita dalla
memoria centrale.
• Le unità periferiche, di input e di output, unità in grado di svolgere
funzioni di comunicazione tra l'ambiente esterno e l'elaboratore, come
l'inserimento nel sistema del programma e dei dati e l'uscita dei risultati.
Architettura dei Computer
La CPU è suddivisa in due grandi unità, ALU, CU
ALU: esegue l’elaborazione
dei dati: somma, sottrazione,etc
INPUT
ALU
Unità
aritmetico
logica
OUTPUT
CU: contiene i circuiti
necessari per coordinare le
attività della macchina.
memoria
Unità di
controllo
bus
Architettura dei Computer
Per la memorizzazione temporanea delle informazioni, la CPU contiene delle
cellette di memorie dette registri che svolgono dei compiti particolari
Il trasferimento dei dati avviene tramite dei collegamenti detti bus
Vediamo come una semplice operazione di addizione viene svolta :
1) Prendi dalla memoria uno dei valori e ponilo nel registro 1
2) Prendi dalla memoria il secondo valore e ponilo nel registro 2
3) Attiva la ALU e addiziona i numeri
4) Trasferisci ad un altro registro il risultato
5) Stop
Architettura dei Computer
Unità di
controllo
ALU
Unità aritmetico
logica
Contatore di
Programma
Registro
della
Istruzioni
Un Computer esegue un
programma caricato nella sua
memoria copiando le
istruzioni nella Unità di
controllo
Una volta nell’unità di
controllo, ogni istruzione
è poi decodificata ed
eseguita nell’ordine
esatto con cui sono
prelevate dalla memoria
Architettura dei Computer
Durante la fase di reperimento l’unità di controllo richiede che la memoria
principale fornisca l’istruzione memorizzata all’indirizzo indicato nel contatore
di programma.
L’Unità di controllo pone l’istruzione ricevuta nel registro delle istruzioni, e poi
incrementa il contatore di programma di una unità.
L’Unità di controllo decodifica l’istruzione ed attiva la circuiteria adeguata alla
esecuzione dell’istruzione stessa.
Unità di controllo
A0
Memoria principale
Ind.
A0 156C
PC
A1
156C
IR
An
Architettura dei Computer
Due registri Speciali:
Program Counter: Esso contiene l’indirizzo dell’istruzione successiva che
deve essere eseguita, e quindi serve al computer per tenere traccia della
posizione in cui si trova nel programma
Instruction Register: Esso contiene l’istruzione da eseguire
Fetch:
reperimento
decode:
decodifica
L’Unità di controllo svolge il suo
compito ripetendo continuamente il
ciclo macchina: un processo a tre fasi.
execute:
esegue
Ciclo-Fetch-Decode-Execute
1. Prendi istruzione corrente e mettila nel registro istruzioni IR (fetch)
2. Incrementa il Program Counter (PC) in modo che contenga l’indirizzo
dell’istruzione successiva
3. Determina il tipo di istruzione da eseguire (decode)
4. Se l’istruzione necessita di un dato in memoria, determina dove si
trova e caricalo in un registro della CPU
5. Esegui l’istruzione (execute)
6. Torna al punto 1 e opera sull’istruzione successiva
Architettura dei Computer
Le attività della macchina vengono controllate da un circuito (clock) chiamato
anche oscillatore, che genera impulsi usati per coordinare l’attività della macchina:
Più velocemente il circuito oscillante genera impulsi, più rapidamente il computer
esegue il suo ciclo macchina.
Tale frequenza è misurata in Hz (GHz)
La comunicazione tra un computer principale ed altri dispositivi I/O sono gestiti
tramite il controller. Tali dispositivi sono dei piccoli computer che coordinano
le attività tra CPU centrale e dispositivo hardware esterno.
CPU
Mon.
DVD
Print
Cont
Cont
Cont
Memoria
Architettura dei Computer
L’insieme delle istruzioni che una CPU deve saper eseguire è molto limitato
Esempio di istruzioni macchina della CPU sono STORE, AND, JUMP, POP,
PUSH, SHIFT.
CPU tipo RISC (Reduced Instruction Set Computer G4 e G5 della Apple
CPU tipo CISC (Complex Instruction Set Computer Processori Pentium
Parallelismo
La frequenza di clock, influenza direttamente il tempo di ciclo e quindi
le prestazioni di un computer
Pertanto è limitata alla tecnologia esistente
Il parallelismo permette di migliorare le prestazioni di una macchina
senza modificare la frequenza di clock.
Due tipi di parallelismo:
1.Parallelismo delle istruzioni (nella programmazione)
2.Parallelismo del processore
Start
diagramma di Flusso Eq. 2° Grado
Inserisci a,b,c
ax2+bx+c=0
D=b2-4ac
D >=0
si
no
D=0
x1=(-b+i sqrt(-D))/2a
x2=(-b-i sqrt(-D))/2a
no
x1=(-b+sqrt(D))/2a
x2=(-b-sqrt(D))/2a
Stampa x1,x2
End
si
x1=x2= -b/2a