Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N...

21
Convertitori Digitale-Analogico Lucidi del Corso di Microelettronica Parte 7 Parte 7 Università di Cagliari Dipartimento di Ingegneria Elettrica ed Elettronica Laboratorio di Elettronica (EOLAB) Laboratorio di Elettronica (EOLAB)

Transcript of Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N...

Page 1: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

Convertitori Digitale-Analogico

Lucidi del Corso di MicroelettronicaParte 7Parte 7

Università di CagliariDipartimento di Ingegneria Elettrica ed Elettronica

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

Page 2: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

Convertitori D/AUn convertitore D/A prende in ingresso un numero digitale (rappresentato dauna stringa di 1 e 0) e lo converte in un valore analogico (tipicamente unatensione) proporzionale tramite una costante di riferimento.

Bin = b1 2-1 + b22-2 + … + bN2-Nin 1 2 N

Vout = Vref Bin

La minima distanza fra due valori di uscita corrispondenti a codici diversi è:

VLSB = Vref / 2NLSB ref

VB DAC VoutBin

VREF

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 2

VREF

Page 3: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

D/A Ideale. Caratteristica

La caratteristica di uscita diDAC id l è t t Vout / VREF

un DAC ideale è mostratain figura: per ogni possibilecodice di ingresso (inquesto caso su 2 bit) si ha

3/4

questo caso su 2 bit) si haun valore di uscita (inquesto caso una tensione).La distanza fra due valori

VLSB=VREF/2N2/4

La distanza fra due valoridi uscita adiacenti è propriopari alla tensione VLSB(LSB sta per Least VLSB VREF/2

1/4(LSB sta per LeastSignificant Bit, ossia bitmeno significativo). I valoridi uscita sono allineati

00 01 10 11lungo una retta che passaper l’origine.

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 3

Page 4: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

D/A: Misura Prestazioni

I parametri rispetto ai quali si misurano le prestazioni di un DACnon ideale sono:

Risoluzione: Numero di bit in ingresso N (un DAC coni l i N bit d i it 2N ibili l i l i i)risoluzione N bit produce in uscita 2N possibili valori analogici)

Offset error: Il valore assunto dall’uscita in corrispondenza deldi i i h t lcodice in ingresso che rappresenta lo zero

Gain Error: Di quanto si discosta la pendenza della retta chepassa per i p nti estremi della caratteristica di scita dallapassa per i punti estremi della caratteristica di uscita dallapendenza ideale (in genere unitaria)

Gli errori di offset e gain sono lineari e quindi non gravi inGli errori di offset e gain sono lineari e quindi non gravi, inquanto non introducono distorsione in uscita

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 4

Page 5: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

D/A: Misura PrestazioniGli errori di offset e gain sono lineari e quindi non gravi, in quanto non introducono distorsione in uscitaq

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 5

Page 6: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

D/A: Misura Prestazioni

DNL (DifferentialNonlinearity):Nonlinearity):

E’ la massimadeviazione degli stepfra due valori di uscitacorrispondenti a codiciadiacenti dal valoreideale (VLSB)

INL (IntegralNonlinearity):Nonlinearity):

E’ la massimadeviazione fra i valoridi uscita e la retta chedi uscita e la retta chepassa per i puntiestremi dellacaratteristica

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 6

caratteristica.

Page 7: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

D/A: Misura PrestazioniSettling Time (Tempo di Assestamento): E’ il tempo necessario perché ilsegnale di uscita subisca una variazione di full-scale (dal valore minimo almassimo) e si assesti intorno al valore finale a meno di un erroremassimo) e si assesti intorno al valore finale a meno di un erroredeterminato.

Glitch Impulse Area: E’ la massima area che compare nel segnale di uscitain corrispondenza di glitch dovuti alle variazioni dell’ingresso, vienechiamata anche “glitch energy” anche se non ha le dimensioni di un’energia.

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 7

Page 8: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

D/A: Misura PrestazioniMonotonicità: Indica il fatto che, correttamente, a duecodici successivi corrispondano sempre valori di uscitacodici successivi corrispondano sempre valori di uscitacrescenti (la monotonicità è garantita quando DNL<1LSB).

Latency: E’ il tempo che intercorre fra un cambiamentodell’ingresso e l’assestamento dell’uscita (oltre al settlingg ( gtime può comprendere un certo numero di colpi di clocknel caso di convertitori con struttura pipeline).

SNR: E’ il rapporto fra la potenza del segnale in ingresso(tipicamente una sinusoide) è la potenza del rumore inuscita.

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 8

Page 9: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

D/A Decoder BasedL’approccio più semplice per realizzare un convertitoreD/A è basato sulla decodificaD/A è basato sulla decodifica.

Vengono generati 2N segnali (analogici) di riferimento esi sceglie quale mettere in uscita attraverso una logica disi sceglie quale mettere in uscita attraverso una logica didecodifica del codice binario in ingresso.

I ti i i l t lti l i i i it iIn pratica si implementa un multiplexer in cui in uscita siportano valori analogici piuttosto che digitali.

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 9

Page 10: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

Partitore ResistivoSi ottengono i 2N

segnali analogici inuscita per mezzo diun partitore resistivo(richiede 2N resistori“matched”).Il tempo di rispostadipende dal numerodi bit I f tti il it ddi bit. Infatti, il ritardoè dato dal tempo disettling del buffer piùil ritardo dovuto allail ritardo dovuto allaserie di resistenze diinterruttore fra ilnodo del partitore e ilnodo del partitore e ilmorsetto noninvertente del buffer.

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 10

Page 11: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

Partitore Resistivo

Con questa soluzione ilnumero di resistori è lonumero di resistori è lostesso ma il numero diswitch fra un nodo delpartitore e il buffer èpdiminuito.Le controindicazioni sonodovute alla presenza dipuna logica di decodifica piùcomplessa (ma digitale) edall’aumento della capacitàparassite sul morsetto noninvertente del buffer (visono attaccate 2N capacitàdi source).In generale è comunqueuno schema più veloce del

d t

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 11

precedente.

Page 12: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

Partitore Resistivo FoldedPer ridurre la capacità parassita al morsetto non invertente del buffer simodifica il circuito in questo modo.Si divide il decoder in due parti (come nel caso di una memoria, in cui ibit sono organizzati a matrice). In tale modo sul morsetto non invertentesono attaccati solo 2N/2 switch.Si consideri che in questa figura il decoder deve lavorare nel modoopportuno in modo da passare, all’incremento del codice, da un nodo delpartitore al successivopartitore al successivo.

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 12

Page 13: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

Partitore Resistivo Folded

b1b r 2

x4

b2

ecod

erD

e

b3b Decoder 2x4

Vout

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 13

b4Decoder 2x4

Page 14: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

Multiple ConvertersIl partitore resistivo vienediviso in due parti.p

In questo esempio con 6bit, i 3 bit più significativi

l li t i iscelgono quali tensionidare come riferimento alsecondo partitoreresisitivo. Tale intervallodi tensione vieneulteriormente suddiviso esi sceglie quale valoredare in uscita con gli altri3 bit Si è ottenuta una3 bit. Si è ottenuta unariduzione del numero diresistori (2N/2 contro 2N).

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 14

Page 15: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

D/A: Binary ScaledI convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra(pesati quindi con potenze di due) in modo da ottenere l’uscita come somma degliopportuni riferimenti scelti in base al codice di ingresso (sommo se il corrispondente bit èoppo u e e sce base a cod ce d g esso (so o se co spo de e b è1 altrimenti non sommo).La implementazione più semplice è mostrata in figura:la resistenza 2iR è connessa a massa o al morsetto invertente a seconda che bi sia zeroo uno.

Itot = Σ (b i Vref ) / (2 i R)Vout = Rf Itot = (Rf / R) Σ b i 2 - i Vref = (Rf / R) Vref Bin

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 15

Page 16: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

D/A Binary Scaled: Rete R-2R

Il principale difetto dell’implementazione precedente è legato al fatto che sihanno rapporti di resistenza che possono diventare molto grandihanno rapporti di resistenza che possono diventare molto grandiall’aumentare del numero di bit. Ciò è poco pratico e poco preciso (le correntisono molto diverse le une dalle altre). Questa soluzione alternativa prevedel’uso di resistenze molto simili (R o 2R).( )

N4N3N2N1

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 16

Page 17: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

D/A Binary Scaled: Rete R-2R

Nel circuito della pagina precedente si può facilmente verificare che lecorrenti nelle resistenze associate ai bit b1 b2 b3 etc sono via via una lacorrenti nelle resistenze associate ai bit b1, b2, b3, etc. sono via via una lametà dell’altra.Infatti:partendo dal nodo N4 si vede verso massa il parallelo di due resistenze parip p pa 2R quindi la corrente che scorre sulla resistenza R che arriva in N4 sarà ildoppio della corrente che scorre nella resistenza associata a b4.Nella resistenza R che arriva in N4 scorre la stessa corrente che scorre nellaresistenza associata a b3 (infatti da N3 verso sinistra si vede la serie di Rcon una resistenza equivalente pari ancora a R quindi un totale di 2R che èesattamente la resistenza associata a b3).Lo stesso ragionamento si può ripetere andando a ritroso verso il nodo N1verificando quindi che le correnti che scorrono nelle resistenze verticali sonocorrettamente scalate di un fattore 2 l’una dall’altra.Tali correnti vengono poi sommate o meno nella resistenza Rf di feedbackdando luogo al potenziale Vout.

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 17

Page 18: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

Redistribuzione di Carica

Il convertitore binary-scaled può essere realizzato anche utilizzando rapporti di capacità con una tecnica mutuata dalle capacità commutatedi capacità con una tecnica mutuata dalle capacità commutate.

N1

N2

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 18

Page 19: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

D/A Binary Scaled: Current-Mode

I valori di riferimento scalati di potenze di due possono anche essere dellecorrenti come nel caso seguente. In questo modo si ottengono convertitori piùveloci.

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 19

Page 20: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

D/A Binary Scaled: GlitchQuando in un convertitore di questo genere (binary scaled) il codice cambiain ingresso in modo tale da fare variare la posizione di tutti gli switch (adesempio dal codice 0111 al 1000) in uscita posson comparire dei glitch dovutial fatto che non tutti i percorsi hanno lo stesso ritardo ed alcuni switchpossono aprirsi (o chiudersi) prima di altri.N l i i ò it i di tNel caso peggiore si può avere una situazione di questo genere:

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 20

Page 21: Convertitori Digitale-Analogico · I convertitori binary-scaled si basano sull’uso di N riferimenti ognuno la metà dell’altra (pesati quindi con potenze di due) in modo da ottenere

D/A: Codice TermometricoUtilizzando un codice termometrico al posto dl normale codice binario sipossono avere alcuni vantaggi.Il codice termometrico rappresenta un numero binario con una sequenza di 1Il codice termometrico rappresenta un numero binario con una sequenza di 1pari al numero da rappresentare:

Ovviamente questo richiede più bit che nel classico codicebi i (2N 1 i h N)

0 000

binario (2N-1 anzi che N).L’uso di codici termometrici garantisce la monotonicità delconvertitore (per passare da un codice al successivo siaggiunge sempre qualcosa) e riduce enormemente il0 000

1 0012 011

aggiunge sempre qualcosa) e riduce enormemente ilproblema dei glitch (da un codice al suo adiacente cambiaun solo switch e mai tutti quanti insieme).L’uso di un codice termometrico non fa aumentare l’area2 011

3 111

L uso di un codice termometrico non fa aumentare l areadella parte analogica perché pur richiedendo piùcomponenti questi sono più piccoli. Ad esempio nelconvertitore a redistribuzione di carica sono necessarieconvertitore a redistribuzione di carica sono necessarie(se N=4) 4 capacità pari a 8C, 4C, 2C e C (totale 15C) colcodice binario mentre nel caso termometrico ne servono2N-1=15 pari tutte a C.

02 Maggio 2007 UE - Convertitori Digitale-Analogico Massimo Barbaro 21

p