David Fry, pracownik firmy Maxim, opisuje w krótki sposób jak obliczyć efektywną ilość bitów naszego przetwornika analogowo-cyfrowego, zastosowaną w systemie. Zmniejszenie się liczby użytecznych bitów wynika głównie z faktu nie wykorzystania całego dostępnego zakresu dynamiki.
W systemach analogowych normalną praktyką jest zostawianie sobie pewnego zapasu dynamiki ponad normalną amplitudę pracy sygnału. Pozwala to na kompensowanie i zabezpieczenia przed negatywnymi efektami zjawisk takich jak dryft elementów, błąd wzmocnienia czy inne rzeczy wynikające z pewnej, niezerowej tolerancji zastosowanych elementów lub nieskalibrowanej aparatury. Gdy znajdziemy się na interfejsie pomiędzy światem analogowym a cyfrowym, na przykład przy korzystaniu z konwertera analogowo-cyfrowego pamiętać musimy iż w świecie cyfrowym także musimy zostawić sobie pewien zapas dynamiki dla sygnału który digitalizujemy.
Rozważmy system oparty o przemysłowy zakres napięcia od 0 do 10 V, często spotykany w sensorach automatyki itp. Jeśli założymy iż przetwornik ADC działać będzie w takim właśnie zakresie (np. poprzez ustalenie napięcia odniesienia na 10 V) to ograniczyć musimy wszelkie sygnały analogowe w systemie także do 10 V inaczej ryzykujemy utratę danych. W systemach automatyki przemysłowej zakłada się taki zapas na poziomie od 5% do nawet 20% amplitudy maksymalnej.
Innym przykładem są systemy analogowej transmisji wideo, gdzie amplituda sygnału wynosi zazwyczaj 1 Vp-p, ale zawiera jedynie 700 mV użytecznego sygnału, gdyż kolejne 300 mV to jedynie sygnały synchronizacji. Wyobraźmy sobie zatem że że używamy w takim systemie przetwornika ADC o rozdzielczości 12 bitów, jednakże wykorzystujemy jedynie 70% kego zakresu, czyli spośród 4096 dostępnych kodów korzystamy z 2867. Jeśli do tego dodamy chociażby 5% zapas dynamiki to ilość używanych kodów zmniejsza się jeszcze dalej. Jak przekłada się to na efektywną liczbę bitów?
Załóżmy prosty system automatyki przemysłowej z zakresem 0 V - 10 V i zapasem 20% dynamiki (czyli efektywnie 0 V - 12 V). Jeśli wykorzystamy 16 bitowy przetwornik DAC do wygenerowania tego sygnału jaka będzie jego efektywna rozdzielczość? Wiemy że przetwornik R-bitowy posiada 2^R stanów, więc niech N będzie liczbą stanów:
N=2^R
Jeśli chcemy rozwiązać takie równanie aby wyliczyć R to wtedy:
R = log(N)/log(2)
W systemie opisanym powyżej używamy 10/12 dostępnych kodów, czyli 54613 spośród wszystkich dostępnych. Podstawiając to liczbę jako N obliczamy iż R = 15,7. Okazuje się że zapewniając 20% zapasu dynamiki w naszym układzie tracimi 0,3 bita. Pamiętać należy, myśląc tylko o licznie bitów, że ta strata jest niezależna od rozdzielczości układu konwertera, a wynika jedynie z stosunku wszystkich kodów do wykorzystanych. Utracona liczba bitów - oznaczmy ją Δr - zależeć będzie od tego stosunku, oznaczonego r w następujący sposób:
Δr = Log(r)/Log(2)
Jeżeli zatem nasz system wideo wykorzystuje jedynie 700 mV z sygnału o amplitudzie 1 V używamy 0,7 dostępnych kodów, czyli tracimy aż 0,51 bita. Taka utrata oznacza, np. w systemie 12 bitowej digitalizacji sygnału, iż efektywna liczba bitów wyniesie 11,49.
Pamiętać zatem musimy iż z jednej strony musimy zapewnić limit dynamiki naszym układom, tak aby sekcja cyfrowa mogła w odpowiedni sposób radzić sobie z wszystkimi niedoskonałościami sekcji analogowej, ale z drugiej strony ten zapas dynamiki powoduje zmniejszenie rozdzielczości i w efekcie poprawę parametrów pracy systemu. Rolą projektanta jest pogodzenie obu tych rzeczy. Dobrą strono jest fakt że nawet spory zapas dynamiki zmniejsza rozdzielczość jedynie odrobinę. Wykorzystanie np. tylko 50% dostępnych kodów zmniejsza efektywną liczbę bitów o jeden.
Źródła:
http://www.maximintegrated.com/app-notes/index.mvp/id/5353
W systemach analogowych normalną praktyką jest zostawianie sobie pewnego zapasu dynamiki ponad normalną amplitudę pracy sygnału. Pozwala to na kompensowanie i zabezpieczenia przed negatywnymi efektami zjawisk takich jak dryft elementów, błąd wzmocnienia czy inne rzeczy wynikające z pewnej, niezerowej tolerancji zastosowanych elementów lub nieskalibrowanej aparatury. Gdy znajdziemy się na interfejsie pomiędzy światem analogowym a cyfrowym, na przykład przy korzystaniu z konwertera analogowo-cyfrowego pamiętać musimy iż w świecie cyfrowym także musimy zostawić sobie pewien zapas dynamiki dla sygnału który digitalizujemy.
Rozważmy system oparty o przemysłowy zakres napięcia od 0 do 10 V, często spotykany w sensorach automatyki itp. Jeśli założymy iż przetwornik ADC działać będzie w takim właśnie zakresie (np. poprzez ustalenie napięcia odniesienia na 10 V) to ograniczyć musimy wszelkie sygnały analogowe w systemie także do 10 V inaczej ryzykujemy utratę danych. W systemach automatyki przemysłowej zakłada się taki zapas na poziomie od 5% do nawet 20% amplitudy maksymalnej.
Innym przykładem są systemy analogowej transmisji wideo, gdzie amplituda sygnału wynosi zazwyczaj 1 Vp-p, ale zawiera jedynie 700 mV użytecznego sygnału, gdyż kolejne 300 mV to jedynie sygnały synchronizacji. Wyobraźmy sobie zatem że że używamy w takim systemie przetwornika ADC o rozdzielczości 12 bitów, jednakże wykorzystujemy jedynie 70% kego zakresu, czyli spośród 4096 dostępnych kodów korzystamy z 2867. Jeśli do tego dodamy chociażby 5% zapas dynamiki to ilość używanych kodów zmniejsza się jeszcze dalej. Jak przekłada się to na efektywną liczbę bitów?
Załóżmy prosty system automatyki przemysłowej z zakresem 0 V - 10 V i zapasem 20% dynamiki (czyli efektywnie 0 V - 12 V). Jeśli wykorzystamy 16 bitowy przetwornik DAC do wygenerowania tego sygnału jaka będzie jego efektywna rozdzielczość? Wiemy że przetwornik R-bitowy posiada 2^R stanów, więc niech N będzie liczbą stanów:
N=2^R
Jeśli chcemy rozwiązać takie równanie aby wyliczyć R to wtedy:
R = log(N)/log(2)
W systemie opisanym powyżej używamy 10/12 dostępnych kodów, czyli 54613 spośród wszystkich dostępnych. Podstawiając to liczbę jako N obliczamy iż R = 15,7. Okazuje się że zapewniając 20% zapasu dynamiki w naszym układzie tracimi 0,3 bita. Pamiętać należy, myśląc tylko o licznie bitów, że ta strata jest niezależna od rozdzielczości układu konwertera, a wynika jedynie z stosunku wszystkich kodów do wykorzystanych. Utracona liczba bitów - oznaczmy ją Δr - zależeć będzie od tego stosunku, oznaczonego r w następujący sposób:
Δr = Log(r)/Log(2)
Jeżeli zatem nasz system wideo wykorzystuje jedynie 700 mV z sygnału o amplitudzie 1 V używamy 0,7 dostępnych kodów, czyli tracimy aż 0,51 bita. Taka utrata oznacza, np. w systemie 12 bitowej digitalizacji sygnału, iż efektywna liczba bitów wyniesie 11,49.
Pamiętać zatem musimy iż z jednej strony musimy zapewnić limit dynamiki naszym układom, tak aby sekcja cyfrowa mogła w odpowiedni sposób radzić sobie z wszystkimi niedoskonałościami sekcji analogowej, ale z drugiej strony ten zapas dynamiki powoduje zmniejszenie rozdzielczości i w efekcie poprawę parametrów pracy systemu. Rolą projektanta jest pogodzenie obu tych rzeczy. Dobrą strono jest fakt że nawet spory zapas dynamiki zmniejsza rozdzielczość jedynie odrobinę. Wykorzystanie np. tylko 50% dostępnych kodów zmniejsza efektywną liczbę bitów o jeden.
Źródła:
http://www.maximintegrated.com/app-notes/index.mvp/id/5353
Fajne? Ranking DIY
