convertitori analogico-digitale - diee.unica.it · convertitori a/d un convertitore a/d prende in...

39
Convertitori Analogico-Digitale Lucidi delle lezioni di Microelettronica Parte 8 Parte 8 Università di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica Laboratorio di Elettronica (EOLAB) Laboratorio di Elettronica (EOLAB)

Upload: trinhcong

Post on 15-Feb-2019

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Convertitori Analogico-Digitale

Lucidi delle lezioni di MicroelettronicaParte 8Parte 8

Università di CagliariDipartimento di Ingegneria Elettrica ed Elettronica

Laboratorio di Elettronica (EOLAB)Laboratorio di Elettronica (EOLAB)

Page 2: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Convertitori A/D

Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero digitale (rappresentato in un opportunotensione) e lo converte in un numero digitale (rappresentato in un opportuno codice, non necessariamente quello binario).

Vref Bo t = Vin + VXVref Bout Vin + VX

Dove VX rappresenta l’errore di quantizzazione.

02 Maggio 2007 UE - ADC Massimo Barbaro 2

Page 3: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

A/D Ideale. CaratteristicaLa caratteristica di uscita di un ADC ideale è mostrata in figura: i valori dell’ingresso percui si ha transizione in uscita distano esattamente VLSB l’uno dall’altro.

Da notare che la quantità LSB=2-N (a cui è associata la tensione VLSB=Vref LSB=Vref 2-N) ècaratteristica di un convertitore con una certa risoluzione (numero di bit in ingresso).

I valori di ingresso per cui si ha transizione sono indicati con VBi (ad esempio V01g Bi ( 01corrisponde a Vref/8 ossia la tensione per cui il codice di uscita diventa 01). I punti ditransizione si hanno a metà di ogni intervallo in modo che l’errore di quantizzazione nonecceda mai, in valore assoluto, VLSB/2.

-VLSB/2 < VX < VLSB/2

02 Maggio 2007 UE - ADC Massimo Barbaro 3

Page 4: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Errore di QuantizzazioneL’errore di quantizzazione è sempre presente, anche in un convertitore ideale. Peranalizzare le caratteristiche di questo errore si fa riferimento alla figura, dove l’ADC e ilDAC sono entrambi ideali:DAC sono entrambi ideali:

Risulta: V1=Vin+VQ

Se il segnale di ingresso varia in modo sufficientemente rapido l’errore di quantizzazioneò id t l d i di d t d ll’i ( dipuò essere considerato un rumore casuale ed indipendente dall’ingresso (rumore di

quantizzazione). Poiché tale errore varia necessariamente fra –VLSB /2 e +VLSB/2 puòessere visto come una variabile aleatoria con probabilità uniforme:

P( )

+V /2V /2

1/VLSB

P(x)

02 Maggio 2007 UE - ADC Massimo Barbaro 4

+VLSB/2-VLSB/2

Page 5: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Rumore di QuantizzazioneLa media del rumore di quantizzazione è evidentemente nulla:

∫+∞

La potenza quadratica media del rumore di quantizzazione è data da:

∫+∞

∞−== 0)()( dxxxPV avgQ

La potenza quadratica media del rumore di quantizzazione è data da:

)(2

)(LSB

rmsQ

VdxxPxV == ∫∞+

Si può allora calcolare il rapporto segnale/rumore nel caso di ingresso sinusoidale con

12)()( rmsQ ∫ ∞−

p pp g gampiezza picco-picco pari al range di ingresso (Vref) dell’ADC.

Se Vin = Vref/2 sin ((2π/ T) t)

la potenza del segnale di ingresso risulta pari a:la potenza del segnale di ingresso risulta pari a:

22REFV

02 Maggio 2007 UE - ADC Massimo Barbaro 5

22

Page 6: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

SNR dell’ADC IdealeIl rapporto segnale/rumore risulta quindi:

⎞⎛⎟⎟⎠

⎞⎜⎜⎝

⎛=⎟⎟

⎞⎜⎜⎝

⎛=⎟

⎟⎠

⎞⎜⎜⎝

⎛= N

LSB

REF

rmsQ

rmsin

VV

VV

SNR 223log20

12/)22(log20log20

)(

)(

Questo risultato lo si ottiene ricordando che VLSB=VLSB 2-N, da cui:

SNR = (6.02N + 1.76) dB

La relazione precedente mette in relazione lo SNR con la risoluzione del convertitore: perogni aumento di un bit abbiamo un aumento del SNR di circa 6dB. Questo vale nel caso diingresso full-scale, se l’ingresso non ha ampiezza pari al range del convertitore lo SNRdiminuirà di conseguenza.

02 Maggio 2007 UE - ADC Massimo Barbaro 6

Page 7: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

A/D: Misura Prestazioni

I parametri rispetto ai quali si misurano le prestazioni di un ADC non idealesono:sono:

Risoluzione: Numero di bit in uscita N

Offset error: La differenza fra il valore di ingresso per cui in uscita si ha laOffset error: La differenza fra il valore di ingresso per cui in uscita si ha latransizione al codice 00..001 ed il valore ideale pari a VLSB/2 (Vref / 2N+1)

Gain Error: Di quanto si discosta la pendenza della retta che passa per ipunti estremi della caratteristica di uscita dalla pendenza ideale (in generepunti estremi della caratteristica di uscita dalla pendenza ideale (in genereunitaria).

Gli errori di offset e gain sono lineari e quindi non gravi, in quanto nonintroducono distorsione in uscita

02 Maggio 2007 UE - ADC Massimo Barbaro 7

Page 8: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

A/D: Misura Prestazioni

DNL (Differential Nonlinearity): E’ la massima differenza fra la distanza didue punti di transizione adiacenti ed il valore ideale (VLSB)due punti di transizione adiacenti ed il valore ideale (VLSB)

INL (Integral Nonlinearity): E’ la massima deviazione fra i valori di uscita e laretta che passa per i punti estremi della caratteristica.

Missing Codes: E’ l’equivalente della monotonicità nei DAC. Si parla dimissing codes quando non tutti i possibili codici di uscita vengono generati alvariare dell’ingresso in tutto il range disponibile.g g p

Tempo di Conversione: E’ il tempo necessario per effettuare la conversione(che limita la massima frequenza di campionamento). In convertitori conarchitetture pipeline il tempo di conversione per il singolo campione può nonarchitetture pipeline il tempo di conversione per il singolo campione può noncoincidere col periodo minimo tempo di campionamento (la latency aumenta iltempo di conversione per il singolo campione).

SNR SNDR R l / l /( di i )SNR e SNDR: Rapporto segnale/rumore e segnale/(rumore+distorsione)

02 Maggio 2007 UE - ADC Massimo Barbaro 8

Page 9: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

A/D: Misura PrestazioniEffective Number of Bits (ENOB): E’ il numero effettivo di bit delconvertitore. Infatti se il convertitore di risoluzione N ha un certo SNDR(dovuto globalmente alle sue non idealità, fra cui le non linearità cheintroducono distorsione), si può dire che tale convertitore è equivalente adun convertitore ideale ma con un numero inferiore M di bit che avrebbe unSNR 6 02M 1 76SNR=6.02M+1.76.

ENOB = (SNDR 1 76) / 6 02ENOB = (SNDR – 1.76) / 6.02

02 Maggio 2007 UE - ADC Massimo Barbaro 9

Page 10: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

A/D: Misura PrestazioniSampling Time Uncertainty: E’ l’incertezza nel tempo esatto di campionamento,legata all’aperture jitter visto per i campionatori. Tale incertezza causa un errore nelvalore convertito che può essere stimatovalore convertito che può essere stimato.

Se l’ingresso è un’onda sinusoidale con ampiezza pari al full-range del convertitore:

Vin = Vref/2 sin (2πf t)in ref ( )

un errore nell’istante di campionamento porterà ad un errore nel valore campionatopari a:

∆V = V’ ∆t∆V = V ∆t

L’errore massimo si ha in corrispondenza della massima derivata (ossia nei punti diattraversamento dello zero del seno):

∆Vmax = Vref πf ∆t = VLSB2Nπf ∆t

Si vuole ovviamente che tale errore sia inferiore a VLSB quindi:

∆t < 1/(2Nπf)∆t < 1/(2Nπf)

Nel caso di un segnale di 1MHz in ingresso ad un convertitore a 16 bit si ottiene unlimite di 5ps.

02 Maggio 2007 UE - ADC Massimo Barbaro 10

Page 11: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Tipologie di ConvertitoriDual-Slope: veramente molto lenti (tconv=2N/fs), richiedono pochi componenti analogici(nAN = 1-3), elevata risoluzione (N<21bit), richiedono circuiteria digitale nonestremamente complessaestremamente complessa.

Ciclici / SA (ad Approssimazioni Successive): lenti (tconv=N/fs), richiedono pochicomponenti analogici (nAN = 1), media risoluzione (N<15bit), richiedono circuiteriadigitale complessadigitale complessa

Convertitori Flash: molto veloci (tconv=1/fs), richiedono molti componenti analogici(nAN = 2N), poco pratici per convertitori ad alta risoluzione (N<10bit), richiedonocircuiteria digitalecircuiteria digitale

Pipeline: molto veloci (tconv=1/fs) ma con uscita ritardato rispetto all’ingresso(tdelay=N/fs), richiedono un numero medio di componenti analogici (nAN = N), mediarisoluzione (N<15bit) richiedono registri digitali a scorrimentorisoluzione (N<15bit), richiedono registri digitali a scorrimento

Sigma-Delta: molto lenti (tconv=OSR/fs), richiedono pochi componenti analogici (nAN =1-4), risoluzione molto elevata (N<21bit), richiedono circuiteria digitale moltocomplessa (filtro decimatori) proprio perché spostano la complessità dalla partecomplessa (filtro decimatori) proprio perché spostano la complessità dalla parteanalogica a quella digitale

02 Maggio 2007 UE - ADC Massimo Barbaro 11

Page 12: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Dual-SlopeIl convertitore dual-slope è utilizzato per strumenti di misura in quanto molto preciso (fino a20 bit) ma anche molto lento (usato per convertire segnali in continua).) ( p g )Si basa su una doppia integrazione: si fa caricare la capacità C1 con una caricaproporzionale all’ingresso e poi si misura il tempo necessario per scaricare la stessacapacità usando una corrente costante e nota.

02 Maggio 2007 UE - ADC Massimo Barbaro 12

Page 13: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Dual-Slope: FunzionamentoFase I: lo switch S1 è connesso a -Vin e nel tempo fissato (determinato dalla logica dicontrollo) T1=2NTclk la capacità C1 si carica alla tensione Vx=(VinT1 ) / (R1C1)) 1 clk p x ( in 1 ) ( 1 1)Fase II: lo switch S1 è connesso a Vref e la capacità C1 si scarica con correntecostante pari a –Vref / R1, la tensione Vx va a zero nel tempo T2=2NBoutTclk (incorrispondenza del quale scatta il comparatore e la logica di controllo blocca ilconteggio) Eguagliando le cariche si ricava B =V / Vconteggio). Eguagliando le cariche si ricava Bout=Vin / Vref

02 Maggio 2007 UE - ADC Massimo Barbaro 13

Page 14: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Approssimazioni Successive (1)Il principio di funzionamento delconvertitore SA si basa sull’algoritmo diricerca “binary search”ricerca binary search .In pratica si suddivide, via via, l’intervallodi ricerca in due e si va a vedere in qualeintervallo cade il segnale di ingresso finointervallo cade il segnale di ingresso finoa trovare l’approssimazione che megliolo rappresenta.Il numero di passi di ricerca è pari alnumero di bit di risoluzione delconvertitore.

02 Maggio 2007 UE - ADC Massimo Barbaro 14

Page 15: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Approssimazioni Successive (2)

Il diagramma a blocchi è mostrato in figura. E’ necessario un S&H, un comparatore,un convertitore digitale/analogico ed una cicuiteria digitale di controllo eg g gmemorizzazione per conservare i bit individuati in ogni fase.

02 Maggio 2007 UE - ADC Massimo Barbaro 15

Page 16: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Approssimazioni Successive (3)L’implementazione pratica piùcomune si basa sull’uso di unconvertitore a redistribuzione dicarica ed una versioneleggermente modificatadell’algoritmo: piuttosto chedell algoritmo: piuttosto chemodificare ad ogni passo l’uscitadel convertitore D/A si modifical’ingresso e si confronta sempreg pcon lo zero.

02 Maggio 2007 UE - ADC Massimo Barbaro 16

Page 17: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

SA: ImplementazioneLa parte analogica (escluso il controllo digitale) che implementa l’algoritmo precedente(nel caso unipolare, ossia con ingresso solo positivo) è mostrata in figura. Il( p , g p ) gfunzionamento è diviso in 3 fasi (sample mode, hold mode, bit cycling) in cui vengonoopportunamente modificate le connessioni degli switch S1, S2, S3 e bi

Sample Mode: la configurazione degli switch è quella della figura, con S1 connessoSample Mode: la configurazione degli switch è quella della figura, con S1 connessoall’ingresso e l’amplificatore connesso ad inseguitore. Tutte le capacità sono connessefra l’ingresso e la massa virtuale. La carica Q1 immagazzinata nel morsetto invertenteè dunque pari a Q1=-VinCTOT. Questa fase serve appunto a campionare il valore dii l b tt l t d ll itàingresso sul bottom plate delle capacità.

02 Maggio 2007 UE - ADC Massimo Barbaro 17

Page 18: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

SA: Hold ModeHold Mode: l’amplificatore è connesso ad anello aperto (funziona da comparatore), ilbottom plate di tutte le capacità è connesso a massa in modo che (per lap p (pconservazione della carica) sul morsetto invertente compaia la tensione –Vin. Lo switchS1 si connette a Vref.

02 Maggio 2007 UE - ADC Massimo Barbaro 18

Page 19: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

SA: Bit CyclingBit Cycling: a questo punto inizia la fase di approssimazioni successive vera epropria. Uno dopo l’altro i bottom plate di ogni capacità vengono connessi a Vref.Quando, ad esempio, b1 commuta, per la conservazione della carica deve risultareVx=-Vin+Vref/2 (questo perché la capacità che sta commutando è pari a 16C ossia lametà della capacità totale). Questo valore viene confrontato con lo zero, se èmaggiore di zero significa che Vin<Vref/2, quindi b1=0, se invece è minore di zero alloraV >V /2 quindi b1=1 Il valore di b1 viene memorizzato nella parte digitale se b1=0Vin>Vref/2, quindi b1=1. Il valore di b1 viene memorizzato nella parte digitale, se b1=0lo switch è riportato a massa (Vx=-Vin) altrimenti viene lasciato dov’è e si procede atrovare il bit successivo. Quando commuta b2 infatti la ∆V è pari a Vref / 4 e così via.

02 Maggio 2007 UE - ADC Massimo Barbaro 19

Page 20: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

SA: Implementazione bipolarePer implementare il convertitore precedente in modo da convertire segnali positivi enegativi (bipolari) si può ricorrere ad una verione leggermente modificata del circuito.g ( p ) p gg

Sample Mode: la configurazione degli switch è quella della figura, con S1 connessoall’ingresso e l’amplificatore connesso ad inseguitore. B1 è connesso a Vref/2 mentrele altre capacità a Vinle altre capacità a Vin.

02 Maggio 2007 UE - ADC Massimo Barbaro 20

Page 21: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

SA bipolare: Hold Mode

Hold Mode: Tutte le capacità tranne b1 sono connesse a massa e l’opamp è connesso d ll t S l tt i t t l t i è V V /2 ( diff d lad anello aperto. Sul morsetto invertente la tensione è Vx= –Vin/2 (a differenza del caso

unipolare in cui Vx=-Vin).

02 Maggio 2007 UE - ADC Massimo Barbaro 21

Page 22: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

SA bipolare: Bit CyclingBit Cycling: a questo punto inizia la fase di approssimazioni successive. Si

distinguono due casi:1) Se Vx< 0 (ossia Vin>0) 16C viene lasciata com’è, b1=1 e la conversione procede

come nel caso unipolare per b2, b3,…, bN.2) Se Vx> 0 (ossia Vin<0) allora b1=0 e 16C viene connessa a massa. In questo

modo Vx diventa Vx=-Vin/2-Vref/4 (per la conservazione della carica). Tale valore èdiventato necesariamente positivo e da adesso in poi si può procedere come neldiventato necesariamente positivo e da adesso in poi si può procedere come nelcaso unipolare.

Lo svantaggio rispetto al caso unipolare è che l’ingresso viene diviso per 2 rendendopiù critico il funzionamento del comparatore.

02 Maggio 2007 UE - ADC Massimo Barbaro 22

Page 23: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Stima dei RitardiIl limite maggiore nella velocità di questa tipologia di convertitori è legato al ritardodovuto alle capacità. Col metodo delle costanti di tempo a circuito aperto si puòp p p pstimare questo ritardo come somma dei ritardi associati a ciascuna capacità, peresempio nella fase di sample. RS1 e RS2 sono le resistenze degli switch S1 e S2mentre R sono le resistenze degli switch corrispondenti ai bit. Ogni capacità “vede” lastessa resistenza (R +R +R):stessa resistenza (RS1+RS2+R):

Tdelay=(RS1+RS2+R)2NC

02 Maggio 2007 UE - ADC Massimo Barbaro 23

Page 24: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Convertitore Algoritmico (Ciclico)Il convertitore ciclico è simile aquello ad approssimazioniq ppsuccessive ma piuttosto checontinuare a dividere per due ilriferimento (Vref), calcolal’errore ad ogni ciclo e lol errore ad ogni ciclo e lomoltiplica sempre per 2 perpoterlo confrontare con lastessa soglia.g

02 Maggio 2007 UE - ADC Massimo Barbaro 24

Page 25: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Convertitore Algoritmico (2)Lo schema blocchi è mostrato in figura. Servono un S&H, un comparatore, un circuitoper il calcolo della differenza (residuo) e un circuito per moltiplicare il residuo per 2. Lap ( ) p p pmoltiplicazione (più differenza) è l’operazione più critica.

02 Maggio 2007 UE - ADC Massimo Barbaro 25

Page 26: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Algoritmico: ImplementazioneLa moltiplicazione per 2 può essere implementata con capacità commutate. Con loschema in figura e suddividendo il funzionamento in 4 fasi è possibile ottenere unag pmoltiplicazione molto precisa che non dipede dai valori relativi delle capacità. In praticasi ottiene la moltiplicazione sommando due volte la stessa quantità sulla stessacapacità.

Fase 1: L’opamp è resettato, QC1=C1Verr = Q1QC2 = 0

02 Maggio 2007 UE - ADC Massimo Barbaro 26

Page 27: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Algoritmico: Implementazione (2)Fase 2: L’opamp è controreazionato con C2, ,C1 è cortocircuitata (massa e massa virtuale) quindi la carica precedente si trasferisce su C2trasferisce su C2

QC1=0QC2=C1Verr = Q1C2 1 err 1

Fase 3: L’opamp è resettato, p p ,C1 è connessa all’ingresso.

QC1 = C1Verr = Q2Q C V QQC2 = C1Verr = Q1

02 Maggio 2007 UE - ADC Massimo Barbaro 27

Page 28: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Algoritmico: Implementazione (3)Fase 4: L’opamp è connesso ad anello aperto p(da comparatore) e le due cariche precedenti (uguali) si sommano su C1

QC1= Q1 + Q2 = 2 C1Verr

Questo fa sì che:

Vout= QC1 / C1= 2 Verr

L’errore viene moltiplicato per 2 utilizzando sempre la stessa capacità (C1) quindi, a parte errori dovuti ad iniezioni di carica, ogni imprecisione nel rapporto fra C1 e C2 è cancellata.cancellata.

02 Maggio 2007 UE - ADC Massimo Barbaro 28

Page 29: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Convertitore FlashIl convertitore flash usa ilmassimo grado di parallelismoper raggiungere la massimaper raggiungere la massimavelocità di conversione (tutti gliN bit ottenuti in un colpo solo)al prezzo di un enormeaumento dei componentinecessari.Con un partitore resistivovengono generati i 2N valorivengono generati i 2N valorianalogici di riferimentoassociati ad ogni codice diingresso e la tensione diingresso viene confrontata conogni valore per mezzo di 2N

comparatori.Il codice in uscita daiIl codice in uscita daicomparatori è termometrico enecessita di un’ulteriorecodifica (digitale) per diventare

02 Maggio 2007 UE - ADC Massimo Barbaro 29

binario.

Page 30: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Convertitore Flash: ProblematicheElevata capacità di ingresso: essendoci 2N comparatori in ingresso il ritardo introdottodal nodo di ingresso può essere consistente, ed aumenta con la risoluzione.g p ,

“Resistor String Bowing”: in comparatori ad elevata velocità può essere necessarioimplementare i comparatori con stadio di ingresso a BJT. In tale caso il comparatoreassorbe corrente che per quanto piccola può generare degli errori nei valori diassorbe corrente che, per quanto piccola, può generare degli errori nei valori diriferimento soprattutto per i valori centrali (bowing=inarcamento).

Ritardo dell’ingresso: i 2N percorsi che portano l’ingresso ai comparatori possonog p p g p pavere ritardi associati differenti

Clock skew: ritardi nel clock che pilota i diversi comparatori possono introdurre unerrore (jitter) nel tempo di campionamento per i vari comparatorierrore (jitter) nel tempo di campionamento per i vari comparatori

Generazione di “bolle”: nel codice termometrico, per le cause precedenti, possonocomparire bolle, ossia il segnale in uscita non è perfettamente termometrico ma sonogpresenti dei “buchi”. Tali bolle possono fare fallire la logica di decodifica.

02 Maggio 2007 UE - ADC Massimo Barbaro 30

Page 31: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Flash: Eliminazione BollePer ridurre il problema delle “bolle” è possibile complicare leggermente la partedigitale, nel circuito in figura gli zeri spurii possono essere eliminati (solo se c’è ung , g g p p (solo zero, il circuito non corregge bolle di più di uno zero).

02 Maggio 2007 UE - ADC Massimo Barbaro 31

Page 32: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Flash: Two-StepPer ridurre il numero di componenti si può adottare uno schema di conversione adue passi come quello mostrato in figura. Un primo convertitore flash a N/2 bit trovagli N/2 bit più significativi con una conversione grossolana (coarse). Viene poicalcolato l’errore fra il valore in ingresso e l’uscita di un DAC pilotato da tali bit el’errore viene amplificato di 2N/2 per poter essere di nuovo convertito con un flash aN/2 per ottenere i bit meno significativi. Come secondo flash può anche essereriutilizzato il primo con un funzionamento a due fasiriutilizzato il primo con un funzionamento a due fasi.Se si utilizzano due flash il numero di resistenze e comparatori è pari a 2N/2+1 anziché2N (es. N=10, 33 anziché 1024)Conversion D/A, differenza e moltiplicazione possono essere realizzatecontemporaneamente con un circuito a switched capacitors (chiamato MDAC,Multiplier and Digital Analog Converter) ricavato dal DAC a redistribuzione di carica.

02 Maggio 2007 UE - ADC Massimo Barbaro 32

Page 33: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Interpolating ConvertersPer ridurre il numero dipreamplificatori e ridurre dip pconseguenza la capacità diingresso e l’occupazione di areasi può adottare un’architetturaad interpolazionead interpolazione.Con la prima stringa diresistenze si generano 4tensioni di riferimento. Ipreamplificatori (con guadagnopiccolo) suddividono l’intervallofra due riferimenti adiacenti inmodo lineare per aumentare ilmodo lineare per aumentare ilnumero di riferimenti fino alnumero richiesto dalla

risoluzione.Da notare che con questoschema NON si riduce il numerototale di latch.

02 Maggio 2007 UE - ADC Massimo Barbaro 33

Page 34: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Interpolating Converters (2)Ogni preamplificatore genera un’uscita proporzionale alla differenza fra l’ingresso e latensione riferimento che gli è applicata (quando questa differenza diventa grandeg pp (q q gl’amplificatore satura). Il partitore resistivo fra due uscite di preamplificatori suddividepoi la differenza di potenziale fra le due uscite di amplificatore (centrate in posizionidifferenti dell’asse Vin) in un numero opportuno di sottointervalli. Nel caso in figura daogni intervallo se ne ottengono 4 quindi il convertitore ha una risoluzione di 4 bit (16ogni intervallo se ne ottengono 4 quindi il convertitore ha una risoluzione di 4 bit (16valori) con solo 4 preamplificatori anziché 16 ma con 16 latch (e resistenze).

02 Maggio 2007 UE - ADC Massimo Barbaro 34

Page 35: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Folding ConvertersI convertitori foldinglavorano in modo simile aitwo-step (trovanotwo step (trovanoseparatamente bit più emeno significativi) maeffettuano una pre-l b i i héelaborazione anziché usare

un DAC, inoltre i due gruppidi bit sono generaticontemporaneamente e nonco te po a ea e te e oin sequenza.Il segnale di ingresso passaattraverso i folding blocksh itche generano uscite come

quelle in figura, centrate inintervalli diversi.Spesso i bit più significativip p gvengono identificati propriodai folding blocks.

02 Maggio 2007 UE - ADC Massimo Barbaro 35

Page 36: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Folding Converters (2)Il principio di funzionamento è il seguente:i folding blocks “ripiegano” il segnale di ingresso in un numero M di volte (nel caso ing p g g g (figura 4 volte, una per ogni transizione della caratteristica ingresso/uscita del foldingblock). In questo caso si ottengono i 4 segnali V1, V2, V3 e V4.I 2 bit più significativi determinano in quale dei 4 sottointervalli ci si trova. All’interno ditale sottointervallo le uscite dei folding block rappresentano un codice termometricotale sottointervallo le uscite dei folding block rappresentano un codice termometricoparticolare.Se Vin è compreso nel primo o terzo sottointervallo il codice termometrico di V1, V2,V3 e V4 è normale (al crescere dell’ingresso aumenta il numero di 1), mentre negli( g ) galtri due intervalli il codice termometrico è rovesciato (all’aumentare del segnale ilnumero di 1 diminuisce).In particolare con Vin fra 0 e ¼ V1,V2,V3,V4=0000,0001,0011,0111,1111 poi con Vintra ¼ e ½ V1 V2 V3 V4=1110 1100 1000 0000 e così viatra ¼ e ½ V1,V2,V3,V4=1110,1100,1000,0000 e così via.

Vantaggi: si riduce il numero di latch (4 anziché 16) ma non si riduce di molto lacapacità di ingresso (a causa del modo in cui è realizzato il folding block, si veda ilg ( glucido successivo).

02 Maggio 2007 UE - ADC Massimo Barbaro 36

Page 37: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Folding Converters (3)Il blocco di folding puòessere realizzato in questomodo.modo.L’output Vout è in qualchemodo l’OR di Va e Vb(Vout è bassa solo se lo

i V h Vb)sono sia Va che Vb).Va va alto con Vin fra Vr1e Vr2 (quando non scorrecorrente su R1) mentre Vbco e te su ) e t e bva basso quandoVr3<Vin<Vr4.

C i d Vi iCome si vede Vin va iningresso a 4 coppiedifferenziali per ogni bloccofolding per un totale di 16g pcoppie differenziali,esattamente quanto siavrebbe nel caso di unfl h l i (f ll fl h)

02 Maggio 2007 UE - ADC Massimo Barbaro 37

flash classico (full-flash).

Page 38: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Folding e InterpolazioneVisto che conl’interpolazione si riducecapacità di ingresso macapacità di ingresso maNON il numero di latch eche con l’approcciofolding si riduce il

di l t h NONnumero di latch ma NONla capacità di ingresso ingenere le due cosevengono applicatee go o app catecontemporaneamentecome nel circuito infigura.

02 Maggio 2007 UE - ADC Massimo Barbaro 38

Page 39: Convertitori Analogico-Digitale - diee.unica.it · Convertitori A/D Un convertitore A/D prende in ingresso un valore analogico (tipicamente una tensione) e lo converte in un numero

Pipeline ConvertersL’architettura two-steppuò esseregeneralizzata in modogeneralizzata in modoche ad ogni step vengaconvertito un solo bit. Ivari step possonoessere poi organizzatiin pipeline in modo daavere un uscita ad ognicolpo di clockcolpo di clock.I blocchi DAPRXcontengono il S&H, ilconfronto, il calcolo delresiduo e lamoltiplicazione per due.L’errore così ottenutoviene dato in pasto alviene dato in pasto alDAPRX successivo pergenerare il bitseguente.

02 Maggio 2007 UE - ADC Massimo Barbaro 39