ANALOGICO-DIGITALI (ADC) DIGITALE-ANALOGICI (DAC) CONVERTITORI ANALOGICO-DIGITALI (ADC) e DIGITALE-ANALOGICI (DAC)
Segnali analogici : variano in modo continuo nel tempo e possono assumere tutti i valori compresi in un certo intervallo Segnali digitali: possono assumere valori discreti in istanti di tempo discreti. La discretizzazione del tempo può essere asincrona o sincrona con un clock X(t) t X[n] t +1 +2 -1 -2 definizione di segnale analogico e segnale digitale. contatti tra mondo digitale e mondo analogico. quindi necessita’ di passare da un linguaggio ad un altro. qualunque segnale elaborato da un processore viaggia in digitale, ma deve spesso essere convertita in analogico. esempio: il segnale estratto da un CD viene trasformato in un segnale analogico di corrente in grado di far funzionare un altoparlante.Viceversa, spesso si deve trasformare un segnale analogico come l’andamento della corrente di collettore in un transistor al variare della corrente di base in un segnale digitale, cioe’ una stringa di bit per poterlo elaborare. I circuiti che effettuanoi queste conversioni sono detti ADC o DAC. In campo digitale le informazioni sono organizzate secondo una struttura “binaria” cioè si utilizzano due soli valori logici “0” e “1”. I due valori logici vengono associati a intervalli di tensione che variano a seconda della tecnologia utilizzata per la costruzione del circuito
segnali analogici – segnali digitali grandezza fisica segnale elettrico trasduttore trattamento del segnale si può definire segnale una qualunque grandezza fisica variabile a cui è associata una informazione segnale elettrico analogico andamento analogo all’andamento della grandezza fisica di partenza T andamento della temperatura in funzione del tempo andamento della tensione in funzione del tempo
in molti casi si lavora con piccoli segnali che devono essere trasmessi a distanza diversi stadi di amplificazione introduzione del rumore degradazione del segnale. conversione analogico – digitale riduce la distorsione del segnale. segnale digitale: sequenza di 1 e 0 per quanto sia distorto il segnale, la sequenza si ricostruisce in modo fedele. Applicazione tipica : Waveform digitizers (digitizzatori di forme d’onda) rappresentazione numerica di forme d’onda: la forma del segnale viene “campionata” a intervalli di tempo equispaziati e molto ravvicinati (fino a qualche picosecondo) - clock l’ampiezza del segnale in questi intervalli di tempo viene convertita in un numero binario.
Convertitori Digitale - Analogico immaginiamo di voler convertire un’informazione binaria (uscita di un circuito digitale, per es. N Flip-Flop) in una tensione (segnale analogico) Vout V è un coefficiente di proporzionalità legato al range di tensioni che vogliamo in uscita e i coefficienti ai valgono 0 o 1 (uscita bassa o alta del FF) circuito sommatore Ro = R e R1 =R/2 Vout = -(Vo+2V1) se Vo e V1 sono le uscite di un registro a 2 bit Vi = 0 livello basso numero binario 0 Vi = 1 livello alto numero binario 1 abbiamo costruito un convertitore D/A a 2 bit Vo = 1, V1 = 0 Vout =-1; Vo = 0, V1 = 1 Vout = -2 ecc.
Convertitore D/A a resistenze pesate Si può estendere il discorso ad un numero maggiore di bit quando il coefficiente ai = 0, l’interruttore Si è collegato a massa vedi cap su dac di flaminio in cui spiega come realizzare il collegamento a terra di ogni resistenza con un mosfet e un FF. Convertitore D/A a resistenze pesate
AO Supponiamo di lavorare in logica negativa, cioè il valore alto (1) è associato ad una tensione pari a 0V e il valore basso (0) è associato ad una tesnsione pari a -10 V AO INPUT ai MOSFET da un registro che immagazzina l’informazione digitalizzata, es. un FLIP FLOP, se in ingresso ho 1 avrò Q=1 e così il MOSFET Q1 sarà abilitato e il Q2 interdetto e la resistenza R1 sarà collegata a VR, il contrario avverrà se in ingresso al FF ho 0, cioè avremo la resistenza R1 collegata a terra
DIFETTI: stabilità ed accuratezza dipendono dalle resistenze e alla dipendenza dei componenti dalla temperatura ampio range di resistenze: per es. DAC a 10 bit con R = 10 kW 2N-1 R = 29 R = 5.12 MW. Difficile gestire accuratezza. R ha un peso 29 volte più importante della resistenza più grande (29 R) quindi, se la tolleranza su quest’ultima è il 10%, la tolleranza su quella da 10 kW dovrà essere 29 volte più piccola, cioè 0.02% !!!
si usano solo resistenze R e 2R DAC a ladder si usano solo resistenze R e 2R ciascun nodo vede una resistenza 2R in qualunque direzione nodo 3: destra 2R complessivamente la basso 2R resistenza vista da 3 in basso e a destra è R nodo 2: destra R in serie con la resistenza vista da 3 2R si può estendere a tutti i nodi
Immaginiamo tutti gli interruttori a terra a parte uno solo, collegato a VR. La tensione nel nodo corrispondente sarà data da VR meno la caduta di potenziale ai capi di 2R Vi =VR – 2R I = VR – 2R VR/3R = VR/3 in conclusione, qualunque nodo il cui interruttore sia chiuso su VR si troverà ad un potenziale VR/3. I=VR/3R
Immaginiamo una configurazione in cui tutti i nodi sono a terra a parte il nodo 3. Vi =V3 = VR/3 = V+ = V- (sfruttiamo il principio del corto circuito virtuale all’ingresso dell’operazionale). poiché in R1 ed R2 scorre la stessa corrente avremo: (Vo – VR/3) 1/R2 = VR/3R1 Vo = VR/3 (R1+R2)/R1 = Se l’unico nodo non a terra fosse il 2, la tensione al terminale non invertente sarebbe la metà di quella calcolata precedentemente: Vo = ½ VR/3 (R1+R2)/R1 = ½ e così via, muovendosi verso sinistra, avremmo una tensione pari a metà di quella precedente. Per il principio di sovrapposizione possiamo scrivere, nel caso generale:
A meno di un fattore moltiplicativo, questa è la rappresentazione analogica del numero binario a3 a2 a1 a0 DIFETTO : ritardo nella propagazione del segnale associato alla chiusura degli interruttori per un breve intervallo di tempo variabilità di valori per ovviare a questo inconveniente si può usare una configurazione diversa in cui gli interruttori sono tutti collegati direttamente all’ingresso dell’operazionale il funzionamento è analogo a quello descritto prima, ma non esiste più il problema dei ritardi.
CONVERTITORI ANALOGICO-DIGITALI (ADC) ADC a contatore convertitore semplice ed economico, ma lento si usano : un contatore, un DAC ed un comparatore il contatore genera una sequenza di numeri binari partendo da zero fino al max valore che il numero di bit consente. ciascun numero viene convertito dal DAC in segnale analogico che viene inviato al comparatore e confrontato con il segnale. l’uscita dal comparatore è positiva fin quando il segnale da convertire è maggiore del segnale in uscita dal DAC. quando il comparatore dà un segnale negativo, il contatore viene bloccato e il numero letto all’uscita del contatore è una stima approx per eccesso del segnale in esame. sono necessari fino a 2N confronti errore di quantizzazione: metà del bit meno significativo es.: ADC a 4 bit, con una risoluzione di 1 bit/100 mV, errore = ± 50 mV
ADC ad approssimazioni successive consente di ridurre drasticamente il numero di confronti e quindi di velocizzare l’operazione procedura generale per trasformare un numero decimale compreso tra 0 e 15, in binario, per esempio k = 8.5. dividiamo in due l’intervallo tra 0 e 15. A quale intervallo appartiene il numero? Se 0 ≤ k < 8 bit 3 = 0; se 8 ≤ k <16 bit 3 = 1 nel nostro caso dividiamo ancora in due l’intervallo 8-16. Se 8 ≤ k <12 bit 2 = 0; se 12 ≤ k <16 bit 2 = 1. dividiamo in due l’intervallo 8 -12 Se 8 ≤ k <10 bit 1 = 0; se 10 ≤ k <12 bit 1 = 1. dividiamo in due l’intervallo 8 -10 Se 8 ≤ k <9 bit 0 = 0; se 9 ≤ k <10 bit 0 = 0. Sono stati necessari solamente 4 confronti
Lo stesso procedimento viene usato per la conversione di un segnale di tensione si fa il controllo bit per bit. si pone A3 = 1 (MSB) Vb = output da DAC = 810 = 10002 si confronta Vb con Va (=8.5 V). Se Va ≥ Vb la logica di controllo lascia il bit A3 a 1, altrimenti lo pone =0 Impulso successivo del contatore ad anello pone A2 =1 Vb= 12V Poiché Va ≤ Vb la logica di controllo pone A2 = 0 e A1 =1 Vb= 10V Va ≤ Vb la logica di controllo pone A1 = 0 e A0 =1 Vb= 9V A questo punto Vb > Va A0 =0 la conversione è finita con appena 4 confronti (precisione di 1/2 bit) Va ≥ Vb uscita del comparatore alta bit successivo =1
ADC flash si confronta la tensione in esame con un numero finito di livelli di tensione predeterminati. confronto contemporaneo ADC molto veloce si determina quale sia l’intervallo, delimitato da due tensioni di soglia adiacenti che contiene il valore della tensione di ingresso. le uscite dei comparatori hanno un livello basso ( 0) se la soglia è superiore alla tensione di ingresso, hanno un livello alto (1) se la soglia è inferiore hardware complesso: 2N-1 comparatori, per N bit logica di controllo e codificatore
Caratteristiche dei convertitori 1 risoluzione: dipende dal numero di bits del convertitore. 8 bit 256 livelli risoluzione = 1/256 ≈ 4% 12 bit 4096 livelli risoluzione ≈ 0.24 % linearità : caratteristica ideale di un Convertitore A/D (o D/A, basta scambiare ascissa ed ordinata) fit con una retta – scostamento dalla linearità < variazione di tensione corrispondente a metà del bit meno significativo Per esempio per 12 bit : 1/2 * 1/4096 ≈ 1.2 10-4 monotonicità : aumentando la tensione di ingresso deve aumentare l’uscita digitale (e viceversa) – se questo non avviene si ha un errore di monotonicità 111 110 101 100 011 010 001 000 0 1/8 2/8 3/8 4/8 5/8 6/8 7/8 ingresso analogico uscita digitale straight line 111 110 101 100 011 010 001 000 0 1/8 2/8 3/8 4/8 5/8 6/8 7/8 ADC non monotono
Caratteristiche dei convertitori 2 111 110 101 100 011 010 001 000 offset error +1½ LSB caratteristica ideale 0 1/8 2/8 3/8 4/8 5/8 6/8 7/8 Errori di OFF SET : la tensione di OFFSET è quella misurata quando tutti gli ingressi digitali sono 0 Si misura generalmente in mV, mV o frazione del bit meno significativo. Errori di non linearità: è la differenza tra la variazione di tensione letta in uscita e quella ideale (cioè quella corrispondente alla variazione di 1 LSB (bit meno significativo) Ad es.: un DAC per il quale, al variare di 1 LSB si ottiene una variazione di tensione corrispondente ad 1.5 LSB ha un errore di non linearità pari a mezzo LSB. 111 110 101 100 011 010 001 000 0 1/8 2/8 3/8 4/8 5/8 6/8 7/8 caratteristica ideale a b b - a differential error