Root/prod/doc/analysis.hmac

Source at commit c93f6d945ea17e61a74b466ced916ceb9a4e0497 created 12 years 10 months ago.
By Werner Almesberger, prod/doc/: added scope screen shots to analysis; show crystal as alt GND for clk
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<HTML>
3<TITLE>Production and testing: Fault analysis</TITLE>
4<BODY bgcolor="#ffffff" link="#000000" vlink="#404040">
5
6<INCLUDE file="style.inc">
7
8<PAGE_BAR title="Production and testing">
9  <PAGE_ITEM href="setup.html">Software setup</PAGE_ITEM>
10  <PAGE_ITEM href="flash.html">Flashing</PAGE_ITEM>
11  <PAGE_ITEM href="test.html">Functional test</PAGE_ITEM>
12  <PAGE_CURR href="analysis.html">Fault analysis</PAGE_CURR>
13</PAGE_BAR>
14
15<SECTION_BAR>
16  <SECTION_ITEM href="#orientation">Component orientation</SECTION_ITEM>
17  <SECTION_ITEM href="#voltages">Voltages</SECTION_ITEM>
18  <SECTION_ITEM href="#clock">Clock frequency</SECTION_ITEM>
19</SECTION_BAR>
20
21
22<!-- ====================================================================== -->
23
24
25<SECTION ref="orientation" title="Component orientation">
26
27@@@
28
29
30<!-- ====================================================================== -->
31
32
33<SECTION ref="voltages" title="Supply voltages">
34
35The transceiver has three voltage domains:
36<UL>
37  <LI>The supply and I/O voltage, which is nominally 3.3 V in
38    <B>atben</B> and <B>atusb</B>,
39  <LI>the digital (core) supply, which is nominally 1.8 V, and
40  <LI>the analog (RF) supply, which is nominally 1.8 V.
41</UL>
42<BR>
43On <B>atusb</B>, there is also the USB voltage domain at nominally 5.0 V.
44<P>
45Voltages should be tested in the following order: USB, then I/O, then
46digital, and finally analog. The table below gives the permissible
47ranges. Any voltages outside these ranges indicate a problem.
48<P>
49<TABLE frame="border" cellpadding="2">
50  <TR><TH>Domain<TH>Nominal<TH>Minimum<TH>Maximum
51  <TR><TD>USB<TD>5.0 V<TD>4.5 V<TD>5.25 V
52  <TR><TD>I/O<TD>3.3 V<TD>3.0 V<TD>3.6 V
53  <TR><TD>Digital<TD>1.8 V<TD>1.7 V<TD>1.9 V
54  <TR><TD>Analog<TD>1.8 V<TD>1.7 V<TD>1.9 V
55</TABLE>
56
57
58<!-- ---------------------------------------------------------------------- -->
59
60
61<SUBSECTION title="Measurement setup">
62
63The measurements should be performed with a digital multimeter.
64The transceiver's analog and digital supplies (1.8 V) are only
65activated when sending or receiving.
66To enable all voltage domains, put the transceiver in receive mode:
67<PRE>
68atrf-txrx
69</PRE>
70or
71<PRE>
72atrf-txrx -d net:ben
73</PRE>
74Exit with Ctrl-C.
75<P>
76To produce periodic transmissions in addition to enabling all voltage
77domains, use
78<PRE>
79atrf-txrx -p 3 -E 0
80</PRE>
81or
82<PRE>
83atrf-txrx -d net:ben -p 3 -E 0
84</PRE>
85Again, exit with Ctrl-C. Note that the transmissions may disturb nearby
86equipment operating in the 2.4 GHz band, such as 802.11 networks. This
87can be prevented by shorting the antenna to ground.
88<P>
89In case the board does not accept commands, only the USB and I/O voltage
90can be checked. If they are correct, proceed with checking the clock.
91
92
93<!-- ---------------------------------------------------------------------- -->
94
95
96<SUBSECTION title="Measurement points on atben">
97
98The supply voltages on <B>atben</B> can be measured at the terminals of
99components as shown in this table:
100<P>
101<TABLE frame="border" cellpadding="2">
102  <TR><TH>Domain<TH>Voltage<TH>Component
103  <TR><TD>I/O<TD>3.3 V<TD>C3, C6
104  <TR><TD>Digital<TD>1.8 V<TD>C5
105  <TR><TD>Analog<TD>1.8 V<TD>C4
106</TABLE>
107<P>
108Ground can be accessed at the cover of the crystal.
109Note that the fiducials are not connected to ground.
110<P>
111This image shows the location of the measurement points:
112<P>
113<A href="atben-B.png"><IMG src="atben-B-small.png"></A>
114
115
116<!-- ---------------------------------------------------------------------- -->
117
118
119<SUBSECTION title="Measurement points on atusb">
120
121The supply voltages on <B>atusb</B> can be measured at the terminals of
122components as shown in this table:
123<P>
124<TABLE frame="border" cellpadding="2">
125  <TR><TH>Domain<TH>Voltage<TH>Component
126  <TR><TD>USB<TD>5.0 V<TD>C1
127  <TR><TD>I/O<TD>3.3 V<TD>C2, C10, C13
128  <TR><TD>Digital<TD>1.8 V<TD>C12
129  <TR><TD>Analog<TD>1.8 V<TD>C11
130</TABLE>
131<P>
132Ground can be accessed at the cover of the crystal, at the shield of the
133USB connector, or at the test point P11.
134Note that the fiducials are not connected to ground.
135<P>
136This image shows the location of the measurement points:
137<P>
138<A href="atusb-B.png"><IMG src="atusb-B-small.png"></A>
139
140
141<!-- ====================================================================== -->
142
143
144<SECTION ref="clock" title="Clock frequency">
145
146The precision of the crystal oscillator is crucial for
147operation. Anomalies are easy to detect with even a low-cost oscilloscope
148and pinpoint specific problems and help to select further analysis steps.
149<P>
150The crystal used in <B>atben</B> and <B>atusb</B> has a nominal tolerance
151of +/&minus; 15 ppm at 22-28 C. Low-cost oscilloscopes typically have a timing
152accuracy of
153+/&minus; 100 ppm, which means that only major excursions can be detected by
154measuring the clock output with such an instrument. Full-speed USB only
155requires an accuracy of +/&minus; 2500 ppm.
156We can therefore consider all results within a range of +/&minus; 1000 ppm as
157sufficient, and perform more precise measurements by other means. This
158applies to <B>atben</B> as well as to <B>atusb</B>.
159
160
161<!-- ---------------------------------------------------------------------- -->
162
163
164<SUBSECTION title="Measuring the clock on atben">
165
166<B>atben</B> normally does not output a clock signal. A 1 MHz clock
167can be enabled with the following command:
168<PRE>
169atrf-txrx -d net:ben -C 1
170</PRE>
171This configures <B>atben</B> as a promiscuous receiver. The reception
172of any IEEE 802.15.4 frame or pressing Ctrl-C will terminate the command.
173<P>
174The clock signal (CLKM) is available on the test pad shown on the image
175on the left, and it should look roughly as shown in the screen shot on
176the right:
177<P>
178<A href="atben-A.png"><IMG src="atben-A-small.png" align="left"></A>
179&nbsp;
180<IMG src="atben-clkm.png">
181<P>
182<TABLE frame="border" cellpadding="2">
183<TR><TH align="left">Clock<TH align="left">Action
184<TR><TD>0 Hz<TD>Check voltages; check that the clock is enabled;
185  check for shorts around crystal; check connectivity of crystal
186<TR><TD>0.999-1.001 MHz, ~3.3 Vpp<TD>Perform precision measurement with
187  <B>atrf-xtal</B>
188<TR><TD>Other<TD>Check voltages; check for contamination around crystal
189</TABLE>
190<P>
191
192
193<!-- ---------------------------------------------------------------------- -->
194
195
196<SUBSECTION title="Measuring the clock on atusb">
197
198The transceiver provides the clock for the microcontroller in <B>atusb</B>.
199A clock signal is therefore always available. Immediately after reset,
200the transceiver generates a 1 MHz clock. When the microcontrolled comes out
201of reset, it raises the transceiver's clock output to 8 MHz and then
202enables USB.
203<P>
204The clock signal is available at the terminals of several components,
205either as the direct output from the transceiver (CLKM) or after passing
206a low-pass filter (CLK):
207<P>
208<A href="atusb-A.png"><IMG src="atusb-A-small.png"></A>
209&nbsp;
210<IMG src="atusb-clkm.png">
211&nbsp;
212<IMG src="atusb-clk.png">
213<P>
214The left screen shot shows the clock (CLKM) before the low-pass filter
215while the right screen shows the clock (CLK) after the the low-pass
216filter.
217<P>
218<TABLE frame="border" cellpadding="2">
219<TR><TH align="left">Clock<TH align="left">Action
220<TR><TD>0 Hz<TD>Check voltages; check for shorts around crystal; check
221  connectivity of crystal
222<TR><TD>0.999-1.001 MHz, ~3.3 Vpp<TD>Check presence of firmware; check for
223  shorts on SPI signals; check connectivity of SPI signals
224<TR><TD>7.992-8.008 MHz, ~3.3 Vpp<TD>Perform precision measurement with
225  <B>atrf-xtal</B>
226<TR><TD>Other<TD>Check voltages; check for contamination around crystal
227</TABLE>
228<P>
229Note that, if testing a board into which no boot loader has been flashed
230yet, the clock frequency should be 1 MHz. If an unsuccessful attempt has
231been made to flash the boot loader, the frequency may be 1 MHz or 8 MHz,
232depending on how much code was successfully flashed.
233
234
235<!-- ---------------------------------------------------------------------- -->
236
237
238<SUBSECTION title="Precision measurements">
239
240The clock frequency of <B>atben</B> can be measured with an accuracy
241of about +/&minus; 100 ppm using the program <B>atrf-xtal</B>. <B>atrf-xtal</B>
242runs directly on the Ben and measures the duration of packet transmissions.
243The transmission time depends on the bit clock which is in turn derived
244from the oscillator.
245<PRE>
246atrf-xtal 100
247</PRE>
248The number reported is the number of poll loops the CPU counted. This
249value should be compared to a reference count obtained with a known to
250be good <B>atben</B> board on the same Ben at a comparable temperature.
251<P>
252<TABLE frame="border" cellpadding="2">
253<TR><TH align="left">Difference<TH align="left">Action
254<TR><TD>&gt; +/&minus; 50 ppm<TD>Correct operation
255<TR><TD>&lt; &minus;80 ppm<TD>Check soldering of capacitors;
256  check for contamination around crystal
257<TR><TD>&gt; +120 ppm<TD>idem
258<TR><TD>Other<TD>Divergence can be compensated by adjusting trim value
259</TABLE>
260
261<END author="Werner Almesberger" date="<GEN_DATE>">
262</BODY>
263</HTML>
264

Archive Download this file



interactive