User Tools

Site Tools


hw:lab:e2_adc_pipeline:start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
hw:lab:e2_adc_pipeline:start [2011/03/01 08:04]
szymon.kulis [Implementacja modelu analogowo-cyfrowego przetwornika potokowego]
hw:lab:e2_adc_pipeline:start [2019/03/08 14:08] (current)
Line 25: Line 25:
       - do wartości analogowej dodawane jest (Vrefp - Vrefm)/2, wynik jest mnożony przez dwa i przekazywany do następnego stopnia       - do wartości analogowej dodawane jest (Vrefp - Vrefm)/2, wynik jest mnożony przez dwa i przekazywany do następnego stopnia
  
-==== Zadanie ====+==== Zadanie ​====
  
 Zaimplementować procedurę(klasę) realizującą funkcje przetwarzania sygnału w taki sposób jak to robi przetwornik potokowy. Zaimplementowany model powinien mieć możliwość ​ Zaimplementować procedurę(klasę) realizującą funkcje przetwarzania sygnału w taki sposób jak to robi przetwornik potokowy. Zaimplementowany model powinien mieć możliwość ​
-  ​zmiany ilości bitów +  ​zmiany ilości bitów 
-  ​zmiany wzmocnienia we wzmacniaczu MDAC (domyślnie 2) +  ​zmiany wzmocnienia we wzmacniaczu MDAC (domyślnie 2) 
-  ​zmiany offsetu komparatora (domyślnie 0)+  ​zmiany offsetu komparatora (domyślnie 0) 
 + 
 +==== Zadanie 2 ====
  
 Dla tak przygotowanego modelu proszę wyznaczyć funkcje przejścia (tzn. zależność kodu wyjściowego od wartości analogowej podawanej na wejście) dla przetwornika 4 bitowego w przypadku domyślnych wartości wzmocnienia oraz offsety oraz dla wzmocnienia wynoszącego 1,9 i offsetcie 0,1.  Dla tak przygotowanego modelu proszę wyznaczyć funkcje przejścia (tzn. zależność kodu wyjściowego od wartości analogowej podawanej na wejście) dla przetwornika 4 bitowego w przypadku domyślnych wartości wzmocnienia oraz offsety oraz dla wzmocnienia wynoszącego 1,9 i offsetcie 0,1. 
  
 +=====  Badanie parametrów statycznych przetwornika metodą histogramową =====
 +
 +W idealnym przetworniku analogowo-cyfrowym każdy ze schodków funkcji przenoszenia ma taką samą szerokość (porównaj poprzedni punktu). Różnice pomiędzy idealną szerokością schodków
 +a ich rzeczywistą szerokością nazywamy nieliniowością różniczkową (ang. Differen-
 +tial Non-Linearity - DNL) i obliczamy ją dla każdego z N schodków przy pomocy
 +następującego równania:
 +
 +<​latex>​
 +DNL(N) = \frac{V (N + 1) − V (N) − V_{LSB} }{ V_{LSB}} ​
 +</​latex>​
 +
 +gdzie V (N + 1) i V (N ) są progami przełączania kolejnych schodków, natomiast VLSB
 +oblicza się z :
 +
 +<​latex>​
 +V_{LSB} = \frac{V_{REF}}{2^N} ​
 +</​latex>​
 +
 +Nieliniowość całkowa (ang. Integral Non-Linearity - INL) natomiast jest to odległość każdego ze schodków od prostej łączącej początek pierwszego i ostatniego schodka idealnej funkcji przenoszenia (rys. 1.5(b)). Istnieje zależność pomiędzy nieliniowością różniczkową
 +a całkową, a mianowicie nieliniowość całkową możemy wyznaczyć z równania:
 +
 +<​latex>​
 +INL(N) = \sum{DNL(N)} ​
 +</​latex> ​              
 +
 +Najpopularniejszą metodą wyznaczania obu wyżej wymienionych nieliniowości jest
 +tak zwana metoda histogramowa. W metodzie tej na wejście badanego układu poda-
 +wany jest sygnał narastający liniowo (rys. 4.1a), a wyniki konwersji umieszczane są
 +w zbiorczym histogramie. ​
 +
 +{{  :​hw:​lab:​e2_adc_pipeline:​hist.png?​650 ​ |}}
 +
 +Przy zadanej częstotliwości próbkowania i zboczu sygnału
 +narastającego na każdy poziom przetwornika przypada stała liczba próbek, a co za
 +tym idzie ilość danych kodów wyjściowych w histogramie 4.1b. Jeśli długości po-
 +szczególnych poziomów są różne, ma to odzwierciedlenie w histogramie wyjściowym
 +4.1c. Wysokości poszczególnych przedziałów Ni wykorzystywane są do wyznaczenia
 +nieliniowości różniczkowej jako:
 +
 +<​latex>​
 +DNL(N) = \frac{Ni}{N_{avr}}
 +</​latex> ​    
 +
 +gdzie <​latex>​ N_{avr}</​latex>​ jest średnią ze wszystkich schodków. Ze względów praktycznych schodki skrajne najczęściej są odrzucane, jako że zawierają one znacznie większą liczbę przypadków. Jest to związane z tym, iż przetwornik dla napięć z poza zakresu pełnej skaliwskazuje kody brzegowe. Mając wyznaczone nieliniowości różniczkowe,​ nieliniowości całkowe wyznacza się przy pomocy zależności 4.2.
 +
 +==== Zadanie 3 ====
 +
 +Zaimplementować procedurę realizującą wyżej opisaną metodę histogramową.
 +
 +==== Zadanie 4 ====
 +Wyznaczyć zależności DNL/DNL od numeru kodu dla przetwornika 10 bitowego (model z zadania 1) w przypadku domyślnych wartości wzmocnienia oraz offsetu oraz dla wzmocnienia wynoszącego 1,9 i offsetcie 0,1. 
 +
 +===== Oczekiwane wyniki =====
 +
 +==== zadanie 1/2 ====
 +
 +{{  :​hw:​lab:​e2_adc_pipeline:​transfer.png?​300 ​ |}}
 +
 +==== zadanie 3/4 ====
 +{{  :​hw:​lab:​e2_adc_pipeline:​inldnl.png?​300 ​ |}}
  
 +===== Do przemyslenia =====
 +  * wprowadzac brakujace kody ?
 +  * mowic cos o bledzie wzmocnienia i offsetu ?
 +  * robic cwiczenia z niesymetrycznymi referencjami ?
  
-===== Plan ćwiczenia ​=====+===== Dla ambitnych ​===== 
 +  * ENOB w funkcji gain 
 +  * ENOB w funkcji offsett 
 +  * implementacja 2bit/stage
  
-    - implementacja parametryzowalnego modelu przetwornika potokowego (wzmocnienie,​ napięcie komparatorów) 
-    - badanie funkcji przejścia przetwornika 
-    - badanie parametrów statycznych przetwornika metodą histogramową 
-    - badanie wpływu parametrów modelu (np. wzmocnienie) na parametry statyczne 
/services/www/http/wiki/data/attic/hw/lab/e2_adc_pipeline/start.1298963077.txt.gz · Last modified: 2019/03/08 14:06 (external edit)