La struttura di questo ADC è illustrata nella figura 8.
Fig. 8 Struttura dell'ADC a doppia rampa
Il suo funzionamento è il seguente:
La logica di controllo inizializza il dispositivo scaricando il condensatore (mediante la chiusura di S2) mantenendo aperto S1 e resettando il contatore.
Nell'istante t1 la logica di controllo apre S2 e mediante S1 collega il campione Vin, all'ingresso dell'integratore invertente. A partire da questo istante, quindi, l'integratore elabora il campione Vin, che come sappiamo è una tensione costante e che, per la struttura in esame, deve essere anche positiva. Pertanto, come mostrato in figura 9, l'uscita Vout è una rampa decrescente in quanto risultato di una integrazione invertente di un segnale costante positivo. Poiché Vout è negativa, l'uscita del comparatore è a livello .ALTO. Questo livello abilita la porta AND e quindi il segnale di CLOCK può giungere al contatore che procede nel conteggio. Il conteggio si protrae fino al valore massimo consentito dal numero il di bit del contatore.
Nell'istante t2 il contatore raggiunge il conteggio massimo e si resetta. La commutazione da ALTO a BASSO del bit MSB del contatore si verifica solo in corrispondenza del Reset del contatore. Tale commutazione, pertanto, viene sfruttata dalla logica di controllo per far commutare S1, deviandolo sulla tensione di riferimento VREF, che è una tensione costante e negativa. In t2, quindi, l'integratore, avendo in ingresso la tensione VREF, origina una rampa crescente. Poiché la tensione sul condensatore, cioè Vout nell'istante t2, ha raggiunto il valore V2, ne deriva che la suddetta rampa crescente inizia esattamente da V2. Poiché la rampa crescente si mantiene negativa, l'uscita del comparatore è ALTA e il CLOCK abilita un nuovo conteggio del contatore.
Tale conteggio si protrae tino all'istante t3 in corrispondenza del quale la tensione Vout raggiunge il valore 0. Nell'istante t3, quindi, l'uscita del comparatore diventa BASSA e ciò provoca la commutazione a livello BASSO anche dell'uscita della porta AND. Il CLOCK, pertanto, non giunge più al contatore, il quale blocca il proprio conteggio.
Il conteggio raggiunto dal contatore nell'istante t è il codice digitale corrispondente al valore del campione Vin. La commutazione da ALTO a BASSO di Vout può essere utilizzata come segnalazione di EOC in corrispondenza della quale la logica di controllo attiva LE memorizzando nei latch il conteggio raggiunto dal contatore nell'istante t3.
Fig. 9 Temporizzazione di VOUT relativa ad un campione
Verifichiamo ora che il valore del campione Vin è proporzionale al conteggio raggiunto dal contatore nell'istante t3 e quindi che tale conteggio corrisponde al valore del suddetto campione.
Poiché Vout (t3) = 0, è possibile esplicitare tale condizione ottenendo:
PoichéT1=t2-t1 e T2=t3-t2, dalla precedente equazione si ricava:
Vout= -1/RC òt1t2Vin dt + 1/RC òt2t1VREF dt = 0
Poiché T1=t2-t1 e T2=t3-t2 dalla precedente equazione si ricava
-1/RC Vin T1 + 1/RC VREF T2=0
da cui:
VinT1 = VREFT2
(9)
Gli intervalli T1 e T2 possono essere espressi in funzione del periodo TCK del CLOCK, del numero n di bit del contatore e del conteggio raggiunto in t3 ottenendo:
T1 = 2nTck.
T2 = NTck
Pertanto, dalla 9 si ricava:
Vin = NVREF/2n N = 2n Vin /VREF
(10)
Poiché VREF e 2n sono costanti ne deriva che N e Vin sono proporzionali tra loro e quindi che il conteggio N può essere considerato il codice digitale equivalente all'ampiezza del campione Vin.
Fig. 10 Temporizzazione di VOUT relativa a due campioni
Il processo descritto si ripete in corrispondenza di ogni nuovo campione Vin. La figura 10 confronta l'andamento della doppia rampa in corrispondenza di due diversi campioni Vin1 e Vin2 con Vin1 > Vin2
In base a quanto stabilito si comprende che:
Durante T1 la pendenza della rampa corrispondente a Vin1 è maggiore di quella della rampa corrispondente a Vin2 in quanto Vin1 > Vin2.
Nell'istante t2 la rampa di Vin1 raggiunge il valore V1 mentre quella di Vin2 raggiunge il valore V2 essendo Vin1 > Vin2
Durante T2 le rampe hanno sempre la stessa pendenza poiché in questo intervallo viene sempre integrata la tensione -VREF. Per questo motivo l'istante t3 dipende dal valore del campione e, come dimostrato in precedenza, il conteggio raggiunto dal contatore in questo istante è proporzionale al valore del suddetto campione.
Il corretto funzionamento di questo ADC prevede che il valore di ogni campione rispetti la condizione:
Vin <VREF
(11)
Come stabilito dalla 10, il risultato fornito da questo ADC non dipende né dal periodo TCK del CLOCK né dai valori di R e di C. Questo convertitore, però, non risulta molto veloce in quanto, per aumentare la pendenza delle rampe durante T1 in modo che questo intervallo sia più breve, il condensatore C non può assumere valori troppo bassi, cioè dello stesso ordine di grandezza delle capacità parassite. Il tempo. di conversione, infatti, è nell'ordine dei millisecondi. Il convertitore a doppia rampa, inoltre, risulta fortemente immune al rumore soprattutto alle armoniche di frequenza pari a multipli interi di 1/T1. Per tali ragioni questo ADC viene utilizzato nei processi di conversione in cui la velocità non costituisce un problema. L'ADC a doppia rampa trova largo impiego nei multimetri digitali.