Quello che ti manca è il significato di "decimazione".
A rigor di termini, la "decimazione" è la riduzione a 1/10. Cioè, da 10 riducono a 1.
La "decimazione" utilizzata nel campionamento perde il significato rigoroso. Invece di 1/10, significa "ridurre il numero".
Ciò significa che si calcola la media di un numero di campioni e si riduce il numero di campioni dello stesso numero.
Ad esempio, se campionate a 1000Hz e in media 4 campioni, mantenete solo la media. Alla fine, hai solo 250 campioni al secondo invece di 1000. Hai perso la risoluzione del tempo, ma hai guadagnato un po 'di risoluzione della tensione.
Per ogni fattore 4, guadagni 1 bit. Media e decimale di 4 e passa da 10 bit di risoluzione a 11 bit di risoluzione.
Un altro fattore di 4 (4 * 4 = 16 in totale) ti porta da 10 bit a 12 bit. Un altro fattore di 4 ti porta a 13 bit di risoluzione.
Tuttavia, nota che ora stai sovracampionando di un fattore 64. La tua frequenza di campionamento effettiva diminuisce dello stesso fattore. Utilizzando l'esempio della frequenza di campionamento di 1000Hz, si arriva a circa 15 campioni effettivi al secondo.
Questa è una decimazione, ed è quanti ADC a bit alto ottengono la loro alta risoluzione. Campionano a una velocità elevata, media (o usano un filtro passa basso digitale) e decimano.
All'estremo, si ha un singolo bit ADC (un semplice comparatore) che esegue il supercampionamento di diversi millioni di volte per fornire una profondità di bit effettiva di 16 bit.
Una cosa che devi tenere a mente affinché questo funzioni è che hai bisogno di un rumore nel tuo segnale approssimativamente uguale al valore più piccolo che il tuo ADC può misurare. Per un ADC a 10 bit che utilizza una tensione di riferimento di 5 V, sarebbe un rumore di circa 5 mV da picco a picco.
La media del rumore è da dove provengono effettivamente i guadagni dei bit. Immagina di avere un segnale (DC) che si trova esattamente tra il valore di 512 conteggi ADC e 513 conteggi ADC. Senza rumore, il valore misurato sarà sempre lo stesso - la media ti darà lo stesso valore dei campioni.
Aggiungi rumore quasi al più piccolo valore misurabile e sembra molto diverso. Sebbene il segnale stesso non cambi, i valori misurati "oscillano" attorno al valore reale del segnale. La media ora è diversa dai campioni e più campioni usi più si avvicina al valore reale del segnale
Ho usato questa tecnica con un Arduino (che utilizza un processore Atmel con un ADC a 10 bit) per ottenere una migliore risoluzione per alcune misurazioni che stavo facendo.
Ho ottenuto fino a 13 bit, ma ho scoperto che avevo bisogno di più. Avrei potuto scegliere un altro fattore 4, ma ciò avrebbe richiesto troppo tempo per ogni campione e mi avrebbe procurato solo un altro bit.
Gli esperimenti con il sovracampionamento hanno mostrato che ciò che stavo facendo poteva funzionare (ho ottenuto risultati riconoscibili ma rumorosi) senza dover spendere tempo e denaro per ottenere un ADC migliore. Con la prova del concetto, potrei andare avanti e ottenere un ADC migliore - e ottenere quella prova mi è costato solo poche righe di codice e un po 'di tempo.
Ho scoperto che avevo bisogno di almeno 16 bit. Ciò avrebbe significato una media di 4096 campioni.
Sono circa mezzo secondo usando il campionamento più veloce possibile con il software Arduino.
Dato che avevo bisogno di 14400 misurazioni, la corsa completa avrebbe richiesto 2 ore.
Non sono così paziente e le cose che stavo misurando non sarebbero rimaste costanti per così tanto tempo. Ho dovuto passare all'utilizzo di un ADC che utilizza internamente un tasso di sovracampionamento molto più elevato e che fornisce campioni con risoluzione più elevata a un tasso inferiore.
Come per molte altre cose, la decimazione è un compromesso che può offrirti prestazioni migliori in una direzione (profondità di bit) mentre ti costa prestazioni in un'altra direzione (frequenza di campionamento).