La struttura di questo ADC (Successive Approximation A/D Converter) è riportata in figura 7
Fig. 7 Struttura dell'ADC ad approssimazione successive
Tale struttura è sostanzialmente identica a quella dei due precedenti ADC. Il contatore, però, è sostituito da un controllore, il cui compito è quello di implementare lalgoritmo di funzionamento dell'ADC. A questo scopo il codice digitale generato dal controllore viene depositato in un particolare registro chiamato SAR (Successive Approximation Register). Il contenuto di tale registro costituisce l'ingresso del DAC, la cui uscita, a sua volta, viene confrontata con il campione Vin mediante un comparatore. La comprensione del funzionamento di questo ADC, quindi, viene ricondotta a quella dell'algoritmo implementato dal controllore, in quanto il processo di generazione della tensione di uscita VD del DAC e del relativo confronto con il campione Vin coincide con quello degli ADC già studiati.
L'inizio della conversione viene attivato inviando al controllore il segnale SOC. In questo modo il controllore carica nel SAR a n bit una parola nella quale il solo MSB è posto a 1 (tutti gli altri bit sono a zero). L'uscita del DAC, pertanto, assume il valore corrispondente al suddetto codice.
Se Vin > VD il controllore mantiene MSB (cioè Pn) a 1 e carica un altro 1 nel bit immediatamente successivo (cioè pone un i anche nel bit Pn-1).
Se, invece Vin > VD il controllore pone MSB (cioè Pn) a 0 e carica un 1 nel bit immediatamente successivo (cioè nel bit Pn-1).
La nuova parola così generata dal controllore viene caricata nel SAR. Di conseguenza, l'uscita del DAC viene aggiornata e assume un nuovo valore corrispondente alla suddetta parola.
A questo punto lalgoritmo descritto per il bit MSB viene ripetuto in modo identico per il bit Pn-1. Così facendo si ottiene una nuova parola che, depositata nel SAR, produce un nuovo livello della tensione di uscita del DAC.
L'algoritmo viene ora ripetuto per il bit bit Pn-2 e quindi per ciascuno dei rimanenti bit.
Dopo aver elaborato nel modo descritto tutti i bit a disposizione, la parola presente nel SAR rappresenta il codice corrispondente al campione Il controllore, quindi, genera il segnale LE, che abilita i latch di uscita alla memorizzazione del codice presente nel SAR, e il segnale di fine conversione EOC. L'algoritmo di funzionamento dell'ADC nell'ipotesi di un convertitore a 8 bit e di un campione pari a Q è espressa in funzione del quanto Q in modo da poter generalizzare il risultato per qualunque valore di VFS. Accanto al contenuto del SAR viene indicato anche il corrispondente valore in decimale. L'algoritmo dell'ADC genera dopo n impulsi di CLOCK, nell'esempio dopo otto impulsi di CLOCK, il codice corrispondente all'ampiezza del campione Vin. Questo risultato ha validità generale. Infatti:
Il tempo di conversione dellADC ad approssimazioni successive è costante qualunque sia il valore del campione bit Vin.
Indicando con TCK il periodo del CLOCK e con n bit il numero di Bit del convertitore, il tempo di conversione Tconv è:
Tconv = nTCK
(8)
Il tempo di conversione non dipende dal valore del campione Vin.
Si tenga presente che il tempo di conversione degli ADC ad approssimazioni successive, pur rimanendo sempre costante, spesso risulta superiore al valore indicato, poiché occorre considerare il numero di impulsi di CLOCK necessari per le operazioni di latch, di inizializzazione del dispositivo al termine di ogni conversione e le soluzioni circuitali adottate dai costruttori.
Al crescere della risoluzione dell'ADC il tempo di conversione aumenta. Tale incremento, però, può essere compensato dalla diminuzione di TCK, cioè dall'aumento della frequenza del CLOCK. Ciò consente di ottenere tempi di conversione costanti e ragionevolmente contenuti. Per queste ragioni gli ADC ad approssimazioni successive costituiscono una delle soluzioni circuitali più adottate dai costruttori e impiegate in svariati settori applicativi.