Ogólna zasada działania ADC
Digitalizacja lub kwantyzacja to konwersja napięcia analogowego na kod cyfrowy. Wydawać by się mogło, że proces ten jest bezproblemowy: podajemy napięcie analogowe na wejście przetwornika ADC, a na wyjściach tworzone są kody cyfrowe, które reprezentują chwilową wielkość napięcia analogowego. W rzeczywistości jest to dużo bardziej skomplikowane! Podczas kwantyzacji sygnałów analogowych należy wziąć pod uwagę pewne prawa, które omówiono w kolejnych sekcjach.
Próbkowanie. Po pierwsze: większość przetworników ADC nie działa w sposób ciągły. Rzeczywiście, gdyby kod cyfrowy na wyjściu stale dostosowywał się do zmian amplitudy analogowego sygnału wejściowego, na wyjściu konwertera panowałby prawdziwy chaos kodowy. W rzeczywistości konwersja napięcia analogowego na kod cyfrowy nie jest procesem ciągłym. Czas konwersji jest rzędu ns nawet dla najszybszych konwerterów. Nowoczesny szybki przetwornik ADC ma częstotliwość próbkowania 50 MSa/s (megapróbek na sekundę). Oznacza to, że taki układ pobiera 50 000 000 próbek sygnału wejściowego na sekundę. Jeden bit wyjściowy będzie reagował nieco szybciej niż drugi. W przypadku ciągłej konwersji, kod cyfrowy zostałby nieumyślnie odczytany w momencie, gdy jeden lub więcej bitów jest w trakcie dostosowywania się do nowej sytuacji na wejściu analogowym. W tym momencie kod cyfrowy może zawierać całkowicie błędne informacje.
Przetworniki ADC bez problemu osiągają częstotliwość próbkowania liczoną w Gsa/s (miliardów próbek na sekundę), przykładem może być układ HMCAD1511 stosowany w wielu oscyloskopach cyfrowych, na przykład w SDS1104X-U firmy Siglent. W przeszłości szybkie przetworniki ADC miały zwyczajnie bardzo wysokie ceny, a ich stosowanie wymaga równie szybkich (i drogich) układów cyfrowych i mikrokontrolerów. Przyp. tłum.
Sample and hold. Aby uniknąć tego problemu, należy próbkować sygnał analogowy w stałych odstępach czasu. Oznacza to, że należy pobierać próbkę chwilowej wartości sygnału wejściowego w regularnych odstępach czasu, przechowywać tę próbkę przez krótki czas w pamięci analogowej, a następnie konwertować tę próbkę na odpowiedni kod cyfrowy. Po upływie czasu konwersji przetwornika ADC i upewnieniu się, że kod cyfrowy dostosował się do nowej wartości próbki, można odczytać kod cyfrowy i dalej go przetwarzać. Następnie można pobrać kolejną próbkę i powtórzyć proces.
Pamięć analogowa, w której próbka analogowego sygnału wejściowego jest krótko przechowywana, jest zawsze wykonywana w formie „sample and hold”, w skrócie S&H. Zasadniczo, chwilowa wielkość sygnału wejściowego jest przechowywana w bardzo małym kondensatorze zintegrowanym z układem ADC w większości przypadków.
Na poniższym rysunku przedstawiono schemat blokowy takiego układu próbkująco-pamiętającego.
Częstotliwość próbkowania. Tak więc digitalizacja napięcia analogowego nie jest procesem ciągłym, ale procesem kontrolowanym przez zewnętrzny impuls zegarowy. Częstotliwość tego sygnału zegarowego nazywana jest częstotliwością próbkowania. Częstotliwość ta określa zatem liczbę próbek pobieranych z analogowego napięcia wejściowego na sekundę. Wielkość ta w języku polskim również jest nazywana częstotliwością próbkowania i wyrażana jest w Sa/s, próbkach na sekundę. Gdy mowa o przetwarzaniu dźwięku, zwykle podaje się tę częstotliwość próbkowania, wyrażaną w kHz. W innych zastosowaniach podaje się częstotliwość w Sa/s. Obecnie nie ma problemów z dostępem do przetworników ADC próbklujących z częstotliwością liczoną w MSa/s (milionach próbek na sekundę), a i układy osiągające wartości w GSa/s są dość łatwo dostępne.
Minimalna wymagana częstotliwość próbkowania. Ważną kwestią jest to, ile próbek należy pobierać na sekundę, aby prawidłowo próbkować analogowy sygnał wejściowy. Należy pamiętać, że te cyfrowe próbki prawdopodobnie zostaną pewnego dnia przekonwertowane z powrotem na sygnał analogowy. W końcu, w wyniku powolnej ewolucji, my, niedoskonali ludzie, wciąż mamy zmysły działające wyłącznie analogowo. Należy zatem upewnić się, że odzyskany sygnał analogowy jest jak najbardziej zbliżony do oryginalnego sygnału.
Oczywiście im więcej próbek, tym lepsza jakość reprodukcji. W związku z tym interesuje nas tylko pytanie, jak mało próbek należy pobrać, aby zapewnić, że kody cyfrowe mogą być później przekształcone w przetworniku cyfrowo-analogowym na sygnał analogowy podobny do sygnału analogowego na wejściu przetwornika ADC. Poniższy rysunek ponownie graficznie podsumowuje proces ADC+DAC.
Dziesięć próbek jest pobieranych z jednego okresu sygnału sinusoidalnego.
W tym przykładzie można więc powiedzieć, że częstotliwość próbkowania jest dziesięć razy większa niż częstotliwość sygnału. Na dolnym wykresie te dziesięć próbek cyfrowych jest reprezentowanych przez ich odzyskane wartości analogowe na wyjściu przetwornika cyfrowo-analogowego. Oryginalny okres fali sinusoidalnej jest przybliżony przez dziesięć kolejnych napięć krokowych.
W narysowanym przykładzie można rozpoznać kształt oryginalnego sygnału z tej krokowej aproksymacji bez wysilania wyobraźni. Nie można jednak bezgranicznie ograniczać częstotliwości próbkowania.
Twierdzenie o próbkowaniu. Matematycznie można wykazać, że częstotliwość próbkowania musi być co najmniej dwa razy większa niż najwyższa częstotliwość sygnału analogowego. To ogólne prawo znane jest jako „twierdzenie o próbkowaniu”. W przypadku próbkowania z niższą częstotliwością, absolutnie niemożliwe jest odzyskanie kształtu oryginalnego sygnału analogowego z kolejnych próbek cyfrowych.