8243b3ab688ce2228724bb0beedc1e652282c05d
[dide_16.git] / bsp1 / Protokolle / chapter1.tex
1 \chapter{Logikanalysator}
2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4 \section{Teilaufgabe1: Messen von $f_{hsync}$ und $f_{vsync}$ }
5 Bei dieser Teilaufgabe mussten wir horizontale 
6 Synchronisationsfrequenz $f_{hsync}$ und die 
7 vertikale Synchronisationsfrequenz $f_{vsync}$ 
8 mittels geeignete Modi bestimmem. Dabei war gegeben, 
9 dass $f_{hsync}$ per Timing-Mode und $f_{vsync}$ 
10 per State-Mode gemessen wird.
11
12 \newpage
13 \subsection{$f_{hsync}$}
14 Um die Periode von $f_{hsync}$ zu messen, 
15 triggern wir auf ``Rising Edge'' des HSYNC Signals.
16 %bsp1_hsync_trigger.jpg
17 \begin{center}
18 \includegraphics[width=\textwidth]{pics/bsp1_hsync_trigger.jpg}
19 \end{center}
20
21 \newpage
22 Wir haben eine Periodendauer von $29.458\mu s$ 
23 gemessen (siehe rote Markierung in der n\"achsten 
24 Abbildung), das entspricht einer 
25 Frequenz von $\frac{1}{29.458\mu s} = 33946.64 Hz$.
26 %bsp1_hsync_wave.jpg
27 \begin{center}
28 \includegraphics[width=\textwidth]{pics/bsp1_hsync_wave.jpg}
29 \end{center}
30
31 %%%%%%%%%%%%%%%%%%%55
32 \newpage
33 \subsection{$f_{hsync}$}
34 Hier war VSYNC zu bestimmen, diesmal mit dem State-Mode.
35 In diesem Modus kommt das CLK-Signal vom FPGA, 
36 deswegen kann auf keine Flanken getriggert 
37 werden sondern nur auf High/Low.
38 %bsp1_vsync_trigger.jpg
39 \begin{center}
40 \includegraphics[width=\textwidth]{pics/bsp1_vsync_trigger.jpg}
41 \end{center}
42
43 \newpage
44 Die Periodendauer betr\"agt $15.317626ms$ (siehe rote Markierung 
45 in der n\"achsten Abbildung), was einer Frequenz 
46 von $\frac{1}{15.317626ms} = 65.28 Hz$ entspricht.
47 %bsp1_vsync_wave.jpg
48 \begin{center}
49 \includegraphics[width=\textwidth]{pics/bsp1_vsync_wave.jpg}
50 \end{center}
51
52
53 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
54 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
55 \newpage
56 \section{Teilaufgabe2: Farbe des Pixels (317,148)}
57 Hier war die Farbe des Pixels (317,148) per State-Mode darzustellen. 
58 Dabei benutzten wir einfach die Signale LINCNT und COLCNT 
59 und setzten diese auf entsprechende Werte. Es ist zu 
60 beachten, dass zuerst LINCNT getriggert werden muss, 
61 um in die richtige Zeile zu kommen.
62 %bsp2_trigger.jpg
63 \begin{center}
64 \includegraphics[width=\textwidth]{pics/bsp2_trigger.jpg}
65 \end{center}
66
67 \newpage
68 Der Pixel hat also die Farbe (0,0,1) (siehe Abbildung).
69 %bsp2_wave.jpg
70 \begin{center}
71 \includegraphics[width=\textwidth]{pics/bsp2_wave.jpg}
72 \end{center}
73
74
75 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
76 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
77 \newpage
78 \section{Teilaufgabe3: Hintergrund und Objektkante}
79 Zuerst war die Hintergrundsfarbe zu bestimmen. 
80 Da wir bei der vorigen Aufgabe den x und y Teil der Koordinaten vertauschten, 
81 hatten wir diese Farbe schon bestimmt, weil sich dieser Punkt 
82 offensichtlich in keiner der Objekte befindet und es sich 
83 somit um den ``Hintergrund'' handeln muss.
84
85 F\"ur beide Aufgaben benutzten wir den State-Mode, 
86 da wir an einem bestimmten Zustand interessiert sind.
87 \footnote{vgl. ``Faustregel'' auf Seite 39 im Skriptum}
88
89 %bsp3a_trigger.jpg
90 \begin{center}
91 \includegraphics[width=\textwidth]{pics/bsp3a_trigger.jpg}
92 \end{center}
93
94 \newpage
95 Wie aus den Screenshots ersichtlich ist, handelt es sich um die Farbe (1,0,1) (``rosa'').
96 %bsp3a_wave.jpg
97 \begin{center}
98 \includegraphics[width=\textwidth]{pics/bsp3a_wave.jpg}
99 \end{center}
100
101 \newpage
102 Um nun die x-Koordinate der linken Kante des 
103 linken Objektes zu bestimmen, beginnen wir 
104 ab der Koordinate (0,0) zu ``suchen'' und 
105 triggern auf die die Farbe (1,0,0), da 
106 dieses Objekt offensichtlich Rot ist.
107 %bsp3b_trigger.jpg
108 \begin{center}
109 \includegraphics[width=\textwidth]{pics/bsp3b_trigger.jpg}
110 \end{center}
111
112 \newpage
113 Nun k\"onnen wir die x-Koordinate aus COLCNT ablesen: 144.
114 %bsp3b_wave.jpg
115 \begin{center}
116 \includegraphics[width=\textwidth]{pics/bsp3b_wave.jpg}
117 \end{center}
118
119
120 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
121 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
122 \section{Teilaufgabe4: Hsync-FSM}
123 Hier verwendeten wir die selben Triggerbedingungen 
124 wie in Teilaufgabe1 f\"ur $f_{hsync}$, jedoch im State-Mode da
125 wir an der Abfolge der Zust\"ande interessiert sind.
126 \footnote{vgl. ``Faustregel'' auf Seite 39 im Skriptum}
127 Die FSM ist in den folgenden Abbildungen ersichtlich.
128
129 \textbf{STIMMT DAS SO? leider kein screenshot des triggers vorhanden! :(}
130
131 Die States PRE\_B und PRE\_D sind aufgrund 
132 ihrer kurzen Dauer nicht (deutlich) in den 
133 Abbildungen ersichtlich (vgl. Tabelle 1.4 im Skriptum).
134
135 %bsp4_fsm1.jpg
136 \begin{center}
137 \includegraphics[width=\textwidth]{pics/bsp4_fsm1.jpg}
138 \end{center}
139
140 %bsp4_fsm2.jpg
141 \begin{center}
142 \includegraphics[width=\textwidth]{pics/bsp4_fsm2.jpg}
143 \end{center}
144
145
146 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
147 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
148 \newpage
149 \section{Ergebnisse}
150 \begin{itemize}
151 \item Frequenz HSYNC = 29.458$\mu$s = 33946.64 Hz
152 \item Frequenz VSYNC = 15.317626ms = 65.28 Hz
153 \item Farbe Pixel = (0,0,1)
154 \item Farbe Hintergrund = (1,0,1)
155 \item x-Koordinate = 144
156 \end{itemize}
157
158 Abschliessend noch ein Bild von unserem Arbeitsplatz 
159 (mit einer besonders motivierten Gruppe im Hintergrund).
160 \begin{center}
161 \includegraphics[width=\textwidth]{pics/fertig.jpg}
162 \end{center}
163