Fondamenti di elettronica - INFN Cagliari

Fondamenti di elettronica
Contenuto del corso (sinteticamente):
- Circuiti elettronici digitali (logica combinatoria e sequenziale)
 i circuiti con cui sono fatti i computer
- Memorie (RAM/DRAM)
- Le interfacce fra il mondo digitale e analogico: DAC e ADC
- Amplificatori operazionali
1
Fondamenti di elettronica
Scopo:
Alla fine del corso lo studente dovrebbe essere in grado di
realizzare circuiti digitali non banali.
Esempi di circuiti non banali:
- interfaccia display
- impianto di allarme
- microcontroller di ADC e DAC
- cronometro e orologio digitale
- multimetro digitale
- interfaccia VGA
- microprocessore RISC
2
Fondamenti di elettronica
N.B. Realizzare, non studiare in termini astratti un’arida teoria
Corso predominantemente pratico:
Ogni argomento o concetto verrà accompagnato da dimostrazioni
pratiche
 scheda elettronica, oscilloscopio digitale (uno dei principali
strumenti del mestiere)
3
Fondamenti di elettronica
Il vostro feedback e la vostra cooperazione importante
importante seguire il corso passo passo
 prove durante il corso
 esame: 2 prove durante il corso + 1-2 domande veloci (max)
alla fine del corso
4
Fondamenti di elettronica
Realizzazione e test pratico di tutti i circuiti:
Circuito logico programmabile FPGA
 altro scopo del corso: imparare sul campo con una FPGA, uno
dei dispositivi più avanzati attualmente usati in elettronica digitale
Potete e dovete provare, testare e ideare circuiti (esercizi) voi:
 software di disegno elettronico QUARTUS
 Versione “educational” scaricabile dal sito web www.altera.com
Permette di implementare i vostri circuiti nella scheda e verificarne
il funzionamento!
5
Fondamenti di elettronica
La domanda fondamentale:
Perchè dovreste seguire questo corso?
Posso dare varie risposte:
- L’elettronica domina il nostro mondo in una infinità di applicazioni
- Una conoscenza dell’elettronica, unita alla capacità di risolvere
problemi tipica dei fisici, aiuta a trovare un lavoro
- Un fisico (vedi il mio caso di fisico delle particelle) deve spesso
realizzare i propri strumenti (rivelatori, sistemi di acquisizione, coprocessori, ...)
- L’ultimo punto non è certamente il meno importante: può essere
estremamente divertente (anche se a volte bisogna sudare 7
camicie per ottenere un circuito funzionante)!
6
La rivoluzione digitale
o Computer digitali (dal 1940 fino ad internet)
o Fotocamere digitali (la pellicola è morta!)
o Registrazione video (DVD, MPEG, ...)
o Registrazione audio (CD, disco in vinile morto già da 20 anni)
o Carburatori, elettronica nei veicoli
o Il sistema telefonico
o Sistemi di controllo del traffico (semafori)
o Effetti speciali dei film
o Apparecchiature mediche
o Sicuramente molto altro che non mi viene in mente adesso
PERCHE’ una tale esplosione?
7
I vantaggi dei circuiti digitali
Riproducibilità dati gli stessi input un circuito digitale produce
sempre gli stessi output – l’ouput di un circuito analogico dipende
da temperatura, invecchiamento, alimentazione, ...
Semplicità di progettazione: il disegno digitale è logico. Non è
necessaria una conoscenza dettagliata del comportamento
elettrico di tutti i singoli elementi di circuito.
Flessibilità e funzionalità implementazione di funzioni molto
complesse (e.g. Voice scrambler) impossibili con circuiti analogici
Programabilità i circuiti digitali possono essere modellati e simulati
con linguaggi di programmazione di alto livello.
Velocità
Economia
Tecnologia in continua evoluzione
8
Analogico e digitale a confronto
Dispositivi analogici: processano segnali che possono assumere
qualunque valore in un intervallo continuo di tensioni, correnti, o
qualche altra grandezza.
Circuiti digitali: processano e producono segnali che possono
assumere solo due valori discreti:
0V–5V
0–1
LOW – HIGH
FALSE – TRUE
(una finzione in realtà: anche questi sono segnali analogici che
possono variare entro due range distinti – più o meno ristretti)9
Aspetti elettronici del disegno digitale
I circuiti digitali processano tensioni e correnti analogiche e sono
fatti con componenti analogici
Astrazione digitale: il comportamento analogico può essere
ignorato (quasi sempre)
 circuiti modellati come se processassero davvero zeri e uni.
Perchè ciò è possibile?
10
In ogni circuito logico c’è un intervallo di tensioni che è interpretato come uno 0
logico e un altro intervallo, disgiunto, che è interpretato come un uno logico.
Esempio: un circuito CMOS funzionante con un’alimentazione di 5V:
Tensione di input nel range 0-1.5 V  0 logico
Tensione di input nel range 3.5-5 V  1 logico
Astrazione digitale: i dispositivi devono generare tensioni di ouput entro gli
intervalli sopra in modo che vengano riconosciute correttamente
VOHmin
VIHmin
VILma
VOLmax
x
11
quarzo
Microchip programmabile FPGA
connettore a pettine
12
16 linee di
input/output della
FPGA sono
collegate a questo
connettore
Possiamo vedere
segnali prodotti
dalla FPGA
Possiamo
inviare segnali
alla FPGA
quarzo
Genera un
segnale onda
quadra a 60
MHz che
viene
mandato in
ingresso alla
FPGA
connettore a pettine
13
Disegno “schematico”: rappresentazione
dell’oscillatore
Pin 1 segnale di
abilitazione del chip
Pin 4 alimentazione: VCC=5V
+5 V chip abilitato
Pin 3 segnale di clock
Pin 2 massa
dell’alimentazione a
5V
14
Disegno “schematico”: FPGA
Collegamento FPGA-pettine: linee SPEAR15, ..., SPEAR0
Clock
dall’oscillatore
SPEAR0:
collegato al pin0
15
del connettore
a
pettine
Visualizzazione del segnale di clock o altri segnali
Poggiamo la
sonda
dell’oscilloscopio
al pin 3
dell’oscillatore
Relativamente facile perchè il
chip è grande e i pin ben
separati
Per altri chip può risultare molto
difficile
Poggiamo la
massa al pin 2
Provate a poggiare la sonda su
un pin di uno di questi chip e a
tenerla ferma per più di qualche
secondo ...
16
Soluzione per visualizzare un segnale:
Facciamolo uscire su una delle linee che vanno al pettine e colleghiamo la
sonda al pin del pettine
quarzo
terminale di massa
dell’oscilloscopio
sonda
dell’oscilloscopio
17
Problema: dobbiamo collegare internamente alla FPGA il pin CLK (pin 79) al
pin SPEAR0 (pin 104)
Segnale di clock dall’oscillatore
 circuito da implementare nella FPGA
Segnale di clock inviato al pin 0
del pettine
18
Progettazione con software CAD
design entry
sintesi
simulazione funz.
no
Il circuito è sintetizzato in termini di elementi
logici contenuti nel chip  netlist
Il circuito è simulato per verificarne la
correttezza funzionale
disegno corretto?
si
fitting
analisi temporale/
simulazione temp.
no
Il circuito è specificato in termini di un
diagramma schematico o di un linguaggio di
programmazione
prestazioni temporali
soddisfatte?
Il CAD dispone gli LE definiti nella netlist in LE
del chip reale – sceglie anche i fili di
connessione fra i vari LE
Vengono analizzati i ritardi di propagazione
lungo i vari percorsi indicando le prestazioni
del circuito
19
Dispositivi digitali
INVERTER
X
X’
C=A·B
B
0
1
0
1
C
0
0
0
1
se A=1 E B=1 allora C=1
altrimenti C=0
C=A+B
A
0
0
1
1
B
0
1
0
1
C
0
1
1
1
se A=1 O B=1 allora C=1
altrimenti C=0
OR
A
B
se X=0 allora X’=1
se X=1 allora X’=0
A
0
0
1
1
AND
A
B
X’
1
0
X
0
1
20