cosa è un dac?

59

Upload: ganit

Post on 11-Jan-2016

61 views

Category:

Documents


0 download

DESCRIPTION

Vcc. Vref. output analogico (Vout). D[n-1]. Convertitore D/A. D[n-2]. D[0]. gnd. Cosa è un DAC?. Digital-to-Analog converter dispositivo “mixed signal”: Input digitale (parola a n bit) Output analogico: tensione o corrente. Vcc. Vref. output analogico (Vout). D[n-1]. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Cosa è un DAC?
Page 2: Cosa è un DAC?
Page 3: Cosa è un DAC?
Page 4: Cosa è un DAC?
Page 5: Cosa è un DAC?
Page 6: Cosa è un DAC?
Page 7: Cosa è un DAC?

Cosa è un DAC?

Digital-to-Analog converter dispositivo “mixed signal”:

o Input digitale (parola a n bit)

o Output analogico: tensione o corrente

output analogico (Vout)D[n-1]

VrefVcc

...D[n-2]

D[0]

gnd

Convertitore D/A

Page 8: Cosa è un DAC?

La tensione di output è

refnout VnD

V2

]0..1[

output analogico (Vout)D[n-1]

VrefVcc

...D[n-2]

D[0]

gnd

Convertitore D/A

Page 9: Cosa è un DAC?

Cosa fa esattamente un DAC?

Per un DAC a 3 bit ci sono 8 possibili codici di input

D[2..0] Vout

000 0V 001 1V 010 2V 011 3V 100 4V 101 5V 110 6V 111 7V

output analogico (Vout)D[2]

Vref (8V)Vcc

D[1]

D[0]

gnd

Convertitore D/A

Page 10: Cosa è un DAC?

Il DAC sulla scheda di laboratorio

REFA, REFB, REFC, REFDTensioni di riferimento fissate a 2.5 V

DACA, DACB, DACC, DACDTensioni di output

VDDLDACDACADACBDACCDACDLOAD

4 DAC in un singolo chip:

1234567

1413121110 9 8

GNDREFAREFBREFCREFDDATADCLK

Page 11: Cosa è un DAC?
Page 12: Cosa è un DAC?

VDDLDACDACADACBDACCDACDLOAD

1234567

1413121110 9 8

GNDREFAREFBREFCREFDDATADCLK

DATA, LDAC, LOAD, DCLKSegnali di Input per programmare il DAC

configurazione

FPGA

Sono controllati dalla FPGA

Page 13: Cosa è un DAC?
Page 14: Cosa è un DAC?
Page 15: Cosa è un DAC?
Page 16: Cosa è un DAC?
Page 17: Cosa è un DAC?
Page 18: Cosa è un DAC?
Page 19: Cosa è un DAC?

DCLK

DATA A1 A0 RNG D7 D6 D5 D4 D3 D2 D1 D0

Il codice digitale a 8 bit viene trasmesso dalla FPGA al DAC in modo seriale tramite la linea DATA assieme a un treno di impulsi di sincronizzazione lungo la linea DCLK

Protocollo di configurazione (circuito da implementare nella FPGA)

Identificatore del DAC:A1A0 = 00 DAC0A1A0 = 01 DAC1A1A0 = 10 DAC2A1A0 = 11 DAC3

Codice digitale (è trasmesso prima il MSB)

RNGVD

V refnout 12

]0..7[La tensione di output è

11 impulsi

Page 20: Cosa è un DAC?

DCLK

DATA A1 A0 RNG D7 D6 D5 D4 D3 D2 D1 D0

Il codice digitale a 8 bit viene trasmesso dalla FPGA al DAC in modo seriale tramite la linea DATA assieme a un treno di impulsi di sincronizzazione lungo la linea DCLK

Le linee LDAC e LOAD sono usate dal DAC per caricare i bit ricevuti lungo la linea DATA in un registro interno e per aggiornare la tensione di output

LDAC

LOAD

Sempre basso

La tensione di output viene aggiornata con questo impulso

Page 21: Cosa è un DAC?

DAC_interface

DCLKDATA

LDAC

LOAD

clk

res

SW0

Una macchina a stati parte quanto SW0 viene premuto (segnale di inizio configurazione)

oGenera un treno di 11 impulsi DCLKoSuccessivamente genera un impulso LOAD

La linea LDAC è tenuta sempre bassa

La parola in ingresso D[7..0] deve essere serializzata: su ogni fronte di salita di DCLK viene messo un nuovo bit (il primo trasmesso è il MSB)

D[7..0]DAC_interface

A[1..0]

Page 22: Cosa è un DAC?
Page 23: Cosa è un DAC?
Page 24: Cosa è un DAC?

Cosa è un ADC?

Analog-to-Digital Converter dispositivo “mixed signal”:

o Input analogico (tensione o corrente)

o Output digitale: parola a n bit

Input analogico (Vin)

Out[n-1]

VrefVcc

...Out[n-2]

Out[0]

gnd

Convertitore A/D

Page 25: Cosa è un DAC?

Può essere considerato un partitore

o L’output ci dice: che frazione di Vref è l’input Vin?

o Output:

Vref

VinnOut n2]0..1[

Input analogico (Vin)

Out[n-1]

VrefVcc

...Out[n-2]

Out[0]

gnd

Convertitore A/D

Page 26: Cosa è un DAC?

Cosa fa esattamente un ADC?

Per un ADC a 3 bit ci sono 8 possibili codici di output

Input analogico (Vin)

Out[2]

Vref(8V)Vcc

Out[1]

Out[0]

gnd

Convertitore A/D

Vin Out[2..0]

0-1 000 1-2 001 2-3 010 3-4 011 4-5 100 5-6 101 6-7 110 7-8 111

Esempio: se Vin=5.5 V e Vref=8 V Out[2..0] = 101

Page 27: Cosa è un DAC?

Risoluzione

L’ADC risolve due tensioni diverse se differiscono per più di 1 V producendo due codici diversi

La risoluzione dell’ADC è 1 V (Vref/23)

Input analogico (Vin)

Out[2]

Vref(8V)Vcc

Out[1]

Out[0]

gnd

Convertitore A/D

Vin Out[2..0]

0-1 000 1-2 001 2-3 010 3-4 011 4-5 100 5-6 101 6-7 110 7-8 111

Il bit meno significatico (LSB) rappresenta 1 V

Page 28: Cosa è un DAC?

La risoluzione di un ADC dipende dal numero di bit e da Vref:

Fissata Vref, maggiore è il numero di bit, migliore è la risoluzione. Se n=8 (anzichè n=3) la risoluzione sarebbe 8/28~31 mV

n

Vref

2

La tensione Vref determina il range dinamico dell’ADC

A parità di bit, minore è la tensione Vref, più fine è la suddivisione dell’intervallo Vref(=Vin max)-0 per cui la risoluzione migliora.

Ad esempio, se Vref=0.8 (anzichè 8 V) la risoluzione sarebbe 100 mV. Il miglioramento va però a scapito del range dinamico.

formulazione alternativa: (fissata Vref) la risoluzione di un ADC è il numero di bit.

Risoluzione e range dinamico

Page 29: Cosa è un DAC?

ADC trackingDescrizione a grandi linee: il codice a 8 bit di un contatore viene convertito da un DAC in una tensione analogica che viene quindi confrontata con la tensione di input. Il contatore viene incrementato fino a quando la tensione del DAC raggiunge quella in input. A questo punto il conteggio raggiunto dal contatore è il codice richiesto.

Page 30: Cosa è un DAC?

Contatore a 8 bit

FPGA

DAC interface

count[7..0]

DCLKDATA

LDAC

LOAD

Vanno ai DAC

DACVanalog

Vanalog

Vincomp

sm_ADC

CNT_EN

CNT_EN

Start_conv

comparatore

ADC tracking: implementazione

comp

Tensione in ingresso da convertire

Page 31: Cosa è un DAC?

Il comparatore (analogico) confronta due tensioni e produce in output un segnale logico:

Se Vin > Vanalog comp = 0Se Vin < Vanalog comp = 1

Collegamento comparatore-ADC

Page 32: Cosa è un DAC?
Page 33: Cosa è un DAC?

Soluzione alternativa: aspetta che l’interfaccia del DAC asserisca il segnale LOAD che va al DAC

Page 34: Cosa è un DAC?

si ripete il ciclo

Page 35: Cosa è un DAC?

ADC[7..0] è collegato a due cifre del display

Page 36: Cosa è un DAC?

Per un’eventuale nuova conversione

Le macchine a stati vanno disegnate usando verilog

Page 37: Cosa è un DAC?

Altri dettagli

Si deve impiegare il terzo DAC (CMREF) corrispondente ad A[1..0]=10

Vref dei DAC fissa Vref dell’ADC.Nella scheda Vref = 2.5 V

Il comparatore è un amplificatore operazionale (più dettagli in seguito)

Vin (COM_IN) può provenire da un generatore di tensione tramite un connettore LEMO

Page 38: Cosa è un DAC?

Limitazioni dell’ADC tracking

La limitazione principale è che è lento:Poichè il contatore parte sempre da zero, Il tempo di conversione è variabile

Maggiore è Vin maggiore è il tempo di conversione: se Vin = Vref è necessario ripetere il ciclo di incremento del contatore 256 volte!

Page 39: Cosa è un DAC?

START_CONV: inizio conversione.

Nel SAR viene caricata la parola 10000000 (solo il MSB = 1)

Se Vin >VD il controllore mantiene MSB a 1 e carica un altro 1 nel bit immediatamente successivo.

Se, invece Vin < VD il controllore pone MSB a 0 e carica un 1 nel bit immediatamente successivo.

La nuova parola viene caricata nel SAR e l'uscita del DAC viene aggiornata.

L’algoritmo descritto per il bit MSB viene ripetuto in modo identico per tutti gli altri bit.

ADC ad approssimazioni successive

Page 40: Cosa è un DAC?

Visualizzazione della conversione sul display

Page 41: Cosa è un DAC?
Page 42: Cosa è un DAC?

Visualizzazione della tensione in decimale

Page 43: Cosa è un DAC?

Può essere implementata con una ROM:Input a 8 bit (256 righe di memoria)Output a 12 bit

Page 44: Cosa è un DAC?
Page 45: Cosa è un DAC?

La variabile temporale

In generale i segnali del mondo reale hanno una qualche dipendenza dal tempo

Nel processo di conversione A/D ci interessa ricostruire questa dipendenza dal tempo

Campionamento del segnale

Page 46: Cosa è un DAC?

Input analogico

Sample and Hold

L’input analogico non va direttamente all’ADC. Entra prima in un circuito che campiona il segnale a un certo istante e quindi lo tiene congelato per tutto il tempo richiesto dalla conversione

Il campionamento trasforma il tempo da continuo a discreto

ADC

Output digitale

L’ADC trasforma il segnale analogico quantizzato nel tempo in un codice digitale (segnale quantizzato)

Page 47: Cosa è un DAC?

Nei sistemi più semplici l’input analogico è collegato direttamente all’ADC

ADC

Output digitale

Questo va bene se il segnale varia nel tempo molto più lentamente del tempo richiesto dall’ADC per effettuare la conversione

Input analogico

In ogni caso, è il tempo di conversione che quantizza il tempo

Page 48: Cosa è un DAC?

Rumore del segnale di input

Il segnale di input può essere affetto da un certo rumore:Consideriamo ad esempio un sensore a pixel (diodo a semiconduttore p-n)

Una fotone che attraversa il semiconduttore cede parte della sua energia a degli elettroni che vengono eccitati in banda di conduzione.

Il moto delle coppie elettrone-buca nel campo elettrico presente all’interno del semiconduttore produce un segnale elettrico.

In generale il numero di coppie prodotto da fotoni aventi la stessa energia e attraversanti lo stesso spessore di silicio fluttua

I vari elementi di circuito attraverso cui il segnale passa possono introdurre altro rumore.

Page 49: Cosa è un DAC?

Errore di quantizzazione della tensione

Al crescere della tensione di input cresce anche l’errore fino a quando cambia il codice

Page 50: Cosa è un DAC?

Aggiungiamo un offset pari a 1/2LSB all’input

Abbiamo un errore pari a ±1/2LSB

Page 51: Cosa è un DAC?

_

Segnale dopo il S/H

Errore di quantizzazione in un segnale variabile

Output digitale

Errore di quantizzatione

Page 52: Cosa è un DAC?

L’errore di quantizzazione appare come un rumore casuale.

La quantizzazione aumenta l’errore casuale del segnale

Il rumore associato alla quantizzazione è la deviazione standard di questa distribuzione

Consideriamo un gran numero di segnali di input variabili nel tempo in modo diverso.

La differenza fra il valore del segnale di input e il valore corrispondente al codice a n bit (trasformato in valore analogico da un DAC ad esempo) segue una distribuzione uniforme fra zero e la tensione corrispondente a un LSB (Vref/2n) .

Page 53: Cosa è un DAC?

Dobbiamo considerare una distribuzione con densità di probabilità

0

)(c

xp nrefVLSBx

2 10

altrove

La condizione di normalizzazione fissa c:

ref

nV

VLSBcdxxp

nref 2

1

11)(

2/

0

Il valor medio è

LSBV

xdxV

dxxxpx

nref

V

ref

nV nref

nref

2

1

22

1

2)(

2/

0

2/

0

Page 54: Cosa è un DAC?

La varianza è

2

22

22/

0

2222

12

1

24

1

23

1

22

1)(

LSBVV

Vdxxpxxx

nref

nref

nref

V nref

La deviazione standard è

LSB12

1

Page 55: Cosa è un DAC?

Riassunto delle caratteristiche di questo rumore:oDistribuito uniformemente nell’intervallo 0-LSB (o ±1/2LSB)oDeviazione standard 1/sqrt(12)LSB=0.29LSB

Esempio:

Segnale analogico di ampiezza massima 1 V con rumore casuale di 1.0 mV

Conversione A/D a 8 bit 1mV = 0.255 LSB

Rumore di quantizzazione = 0.29 LSB

Rumore totale dell’output digitale LSB386.029.0255.0 22

Aumento del 50% del rumore già presente nel segnale

Page 56: Cosa è un DAC?

L’errore di quantizzazione diminuisce aumentando il numero di bit

La conversione di un segnale anaogico con un ADC a

o8 bit aggiunge un errore rms 0.29/256 ~ 1/900 del valore di fondo scala

o12 bit aggiunge un errore rms 0.29/4096 ~ 1/14000 del valore di fondo scala

o16 bit aggiunge un errore rms 0.29/65536 ~ 1/227000 del valore di fondo scala

Il numero di bit determina la precisione dei dati. La decisione sul numero di bit necessari dipende da:

oQuanto rumore è già presente nei dati

oQuanto rumore può essere tollerato nel segnale digitale

Page 57: Cosa è un DAC?

Quando l’errore di quantizzazione non può essere trattato statisticamente:

Segnale che in diversi campionamenti dà sempre lo stesso output digitale la differenza non fluttua ma appare come un effetto sistematico

Page 58: Cosa è un DAC?

Il teorema di campionamento

Criterio di Nyquist o Shannon: per avere una corretta ricostruzione del segnale, la frequenza di campionamento deve essere almeno due volte la frequenza massima del segnale

Page 59: Cosa è un DAC?

Un criterio simile vale per il campionamento nello spazio:Consideriamo un sensore che ricostruisce un’immagine