Subversion Repositories svnkaklik

Rev

Rev 1121 | Rev 1123 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log

Rev 1121 Rev 1122
Line 152... Line 152...
152
A KiCAD design suite had been chosen for PCB layout. However, the version is, despite having integrated CERN Push \& Shove routing capability, slightly unstable as it sometimes crushes due to an exception during routing. On the basis of these stability issues, the design had to be saved quite often. On the other hand, compared to commercially available solutions, such as MentorGraphics PADS or Cadence Orcad,  the Open-source KiCAD provides an acceptable option and it easily surpasses a widely used Eagle software.
152
A KiCAD design suite had been chosen for PCB layout. However, the version is, despite having integrated CERN Push \& Shove routing capability, slightly unstable as it sometimes crushes due to an exception during routing. On the basis of these stability issues, the design had to be saved quite often. On the other hand, compared to commercially available solutions, such as MentorGraphics PADS or Cadence Orcad,  the Open-source KiCAD provides an acceptable option and it easily surpasses a widely used Eagle software.
153
 
153
 
154
As a part of work on the thesis, new PCB footprints for FMC, SATA a and miniSAS connectors have been designed and were committed to KiCAD github library repository. They are now publicly available on the official KiCAD repository at GitHub.  
154
As a part of work on the thesis, new PCB footprints for FMC, SATA a and miniSAS connectors have been designed and were committed to KiCAD github library repository. They are now publicly available on the official KiCAD repository at GitHub.  
155
 
155
 
156
 
156
 
157
ADCdual01A module has several digital data output formats. Distinction between these  modes are in number of differential pairs use
157
ADCdual01A module has several digital data output formats. Difference between these modes lays in the number of differential pairs used
158
 
158
 
159
\begitems
159
\begitems
160
    * 1-lane mode
160
    * 1-lane mode
161
    * 2-lane mode
161
    * 2-lane mode
162
    * 4-lane mode
162
    * 4-lane mode
163
\enditems
163
\enditems
164
 
164
 
165
All of these modes are supported by module design. For discussed data acquisition system the 1-lane mode was selected. 1-lane mode allows minimal number of differential pairs between ADCdual01A and FPGA. Digital signaling scheme used in 1-lane mode is shown in image \ref[1-line-out]. 
165
All of the above-mentioned modes are supported by the module design. For the discussed data acquisition system, the 1-lane mode was selected. 1-lane mode allows a minimal number of differential pairs between ADCdual01A and FPGA. Digital signalling scheme used in 1-lane mode is shown in the following image \ref[1-line-out]. 
166
 
166
 
167
\midinsert
167
\midinsert
168
\clabel[1-line-out]{Single line ADC output signals}
168
\clabel[1-line-out]{Single line ADC output signals}
169
\picw=15cm \cinspic ./img/ADC_single_line_output.png
169
\picw=15cm \cinspic ./img/ADC_single_line_output.png
170
\caption/f Digital signaling schema for 1-line ADC digital output mode.
170
\caption/f Digital signalling schema for 1-line ADC digital output mode.
171
\endinsert
171
\endinsert
172
 
172
 
173
ADCdual01A parameters can be set either by jumper setup (referred as parallel programming  in device's data sheet) or by SPI interface. SPI interface has been selected for our system, because parallel programming lacks of options (test pattern output setup for example). 
173
ADCdual01A parameters can be set either by jumper setup (referred to as a parallel programming  in the device's data sheet) or by SPI interface. SPI interface has been selected for our system, because of the parallel programming lack of options (test pattern output setup for example). 
174
 
174
 
175
Complete schematic diagram of ADCdual01A module board is included in the appendix. 
175
Complete schematic diagram of ADCdual01A module board is included in the appendix. 
176
 
176
 
177
 
177
 
178
\secc ADC modules interface
178
\secc ADC modules interface
Line 205... Line 205...
205
\endinsert
205
\endinsert
206
 
206
 
207
 
207
 
208
Several SATA connectors and two miniSAS connectors are populated on this board.  This set of connectors allows a connection of any number of ADC modules within the range of 1 to 8. ADC data outputs should be connected to the miniSAS connectors, while other supporting signals should be routed directly to SATA connectors on adapter. 
208
Several SATA connectors and two miniSAS connectors are populated on this board.  This set of connectors allows a connection of any number of ADC modules within the range of 1 to 8. ADC data outputs should be connected to the miniSAS connectors, while other supporting signals should be routed directly to SATA connectors on adapter. 
209
 
209
 
210
Lengths of differential pairs routed on PCB of module are not matched between pairs. Length variation of differential pairs is not critical in our design according to facts discussed in paragraph \ref[diff-signaling]. Nevertheless signals within differential pairs itself are matched for length. Internal signal traces length mating of differential pairs is mandatory in order to avoid dynamic logic hazard conditions on digital signals. Thus clocks signals are routed most precisely on all designed boards.
210
Lengths of differential pairs routed on PCB of the module are not matched between the pairs. Length variation of differential pairs is not critical in our design according to facts discussed in paragraph \ref[diff-signaling]. Nevertheless, signals within differential pairs themselves are matched for length. Internal signal tracing of the length matchting of differential pairs is mandatory in order to avoid a dynamic logic hazard conditions on digital signals. Thus clocks' signals are routed in the most precise way on all designed boards.
211
 
211
 
212
 
212
 
213
Signal configuration used in our trial design is described in the following tables. 
213
Signal configuration used in our trial design is described in the following tables. 
214
 
214
 
215
%% zapojeni SPI, FPGA zpatky necte konfiguraci, ale je tam na slepo nahravana.
215
%% zapojeni SPI, FPGA zpatky necte konfiguraci, ale je tam na slepo nahravana.
Line 230... Line 230...
230
P3	&	2	&	LA15	&	ADC2 CH2 (LTC2271)	\cr
230
P3	&	2	&	LA15	&	ADC2 CH2 (LTC2271)	\cr
231
}
231
}
232
\caption/t miniSAS (FMC2DIFF01A J7) signal connections between modules. 
232
\caption/t miniSAS (FMC2DIFF01A J7) signal connections between modules. 
233
\endinsert
233
\endinsert
234
 
234
 
235
SPI interface is used by unusual way in this design. SPI Data outputs from ADCs are not connected anywhere and read back are not possible, thus configuration written to registers in ADC module cannot be validated. We do not observe any problem with this system, but it may be possible source of failures. 
235
SPI interface is used in an unusual way in this design. SPI Data outputs from ADCs are not connected anywhere and read back is not possible, thus the configuration written to registers in ADC module cannot be validated. We have not observed any problems with this system, but it may be a possible source of failures. 
236
 
236
 
237
\midinsert \clabel[SPI-system]{Grabber binary output format}
237
\midinsert \clabel[SPI-system]{Grabber binary output format}
238
\ctable {ccc}
238
\ctable {ccc}
239
{
239
{
240
SPI connection J7	&	FMC signal	&	Connected to	\cr
240
SPI connection J7	&	FMC signal	&	Connected to	\cr
Line 265... Line 265...
265
 
265
 
266
 
266
 
267
 
267
 
268
\secc FPGA function 
268
\secc FPGA function 
269
 
269
 
270
Several tasks are performed by FPGA. Firstly FPGA prepares sampling clock for ADCdual01A modules this task is separate block in FPGA and runs asynchronously to other logic. Second block is SPI configuration module, which sends configuration words to ADC modules after opening of Xillybus interface file. Third block is main module, which resolve ADC - PC communication itself. Last block is activated after ADC configuration. 
270
Several tasks in our design are performed by FPGA. Firstly, FPGA prepares a sampling clock for ADCdual01A modules this task is separate block in FPGA and runs asynchronously compared to other logical circuits. The second block is a SPI configuration module, which sends the content of configuration registers to the ADC modules after opening of Xillybus interface file. The third block represents the main module which resolves ADC - PC communication itself. The last block is activated after ADC configuration. 
271
 
271
 
272
Communication over PCIe is managed by proprietary IP Core and Xillybus driver, which tranfers data from FPGA registers to host PC. Data appears in system device file  "/dev/xillybus_data2_r" on host computer. Binary data which appears in this file after opening are described in table \ref[xillybus-interface].
272
Communication over PCIe is managed by proprietary IP Core and Xillybus driver, which transfers data from FPGA registers to host PC. Data appear in system device file named  "/dev/xillybus_data2_r" on the host computer. Binary data which appear in this file after its opening are described in the table below \ref[xillybus-interface].
273
 
273
 
274
\midinsert \clabel[xillybus-interface]{Grabber binary output format}
274
\midinsert \clabel[xillybus-interface]{Grabber binary output format}
275
\ctable {clllllllll}{
275
\ctable {clllllllll}{
276
\hfil
276
\hfil
277
 & \multispan9 \hfil 160bit packet \hfil \crl \tskip4pt
277
 & \multispan9 \hfil 160bit packet \hfil \crl \tskip4pt
Line 285... Line 285...
285
Detailed description of FPGA function can be found in \cite[fpga-middleware]
285
Detailed description of FPGA function can be found in \cite[fpga-middleware]
286
 
286
 
287
 
287
 
288
\secc Data reading and recording 
288
\secc Data reading and recording 
289
 
289
 
290
We use Gnuradio software to read the data stream from the ADC drive. Gnuradio suite consist of gnuradio-companion which is a graphical tool for creating signal-flow graphs and generating flow-graph source code. This tool was used to create a basic RAW data grabber to record and interactively view the data stream output from ADC modules. 
290
In order to read the data stream from the ADC drive, we use Gnuradio software. Gnuradio suite consists of gnuradio-companion which is a graphical tool for creating signal-flow graphs and generating flow-graph source code. This tool was used to create a basic RAW data grabber to record and interactively view the data stream output from ADC modules. 
291
 
291
 
292
\midinsert
292
\midinsert
293
\picw=15cm \cinspic ./img/screenshots/Grabber.grc.png
293
\picw=15cm \cinspic ./img/screenshots/Grabber.grc.png
294
\caption/f An ADC recorder flow graph created in gnuradio-companion.
294
\caption/f An ADC recorder flow graph created in gnuradio-companion.
295
\endinsert
295
\endinsert
Line 297... Line 297...
297
\midinsert
297
\midinsert
298
\picw=15cm \cinspic ./img/screenshots/Grabber_running.png
298
\picw=15cm \cinspic ./img/screenshots/Grabber_running.png
299
\caption/f User interface window of a running ADC grabber.
299
\caption/f User interface window of a running ADC grabber.
300
\endinsert
300
\endinsert
301
 
301
 
302
Interactive grabber viewer user interface shows live oscilloscope-like time-value display for all data channels and live time-frequency scrolling display (a waterfall view) for displaying the frequency components of the grabbed signal. 
302
The interactive grabber-viewer user interface shows live oscilloscope-like time-value display for all data channels and live time-frequency scrolling display (a waterfall view) for displaying the frequency components of the grabbed signal. 
303
 
303
 
304
 
304
 
305
\sec Achieved parameters
305
\sec Achieved parameters
306
 
306
 
307
\secc ADC module parameters
307
\secc ADC module parameters
308
 
308
 
309
Two pieces of ADC modules were completed and tested. The first piece, labeled ADC1, has LTC2190
-
 
310
ADC chip populated with LT6600-5 front-end operational amplifier. It also has a 1kOhm resistors populated on inputs which gives it an ability of an internal attenuation of input signal. The value of this attenuation $A$ is described by the following formula \ref[ADC1-gain]
309
Two prototypes of ADC modules were assembled and tested. The first prototype, labeled ADC1, has LTC2190 ADC chip populated with LT6600-5 front-end operational amplifier. It also has a 1kOhm resistors populated on inputs which give it an ability of an internal attenuation of the input signal. The value of this attenuation $A$ is described by the following formula \ref[ADC1-gain]
311
 
310
 
312
 
311
 
313
\label[ADC1-gain]
312
\label[ADC1-gain]
314
$$
313
$$
315
A = {806 \cdot R_1 \over R_1 + R_2}
314
A = {806 \cdot R_1 \over R_1 + R_2}
316
$$
315
$$
317
 
316
 
318
Where is 
317
Where the letters stand for: 
319
\begitems
318
\begitems
320
  * $A$ -  Gain of input amplifier.
319
  * $A$ -  Gain of an input amplifier.
321
  * $R_1$ - Output impedance of signal source (usually 50 Ohm).
320
  * $R_1$ - Output impedance of signal source (usually 50 Ohm).
322
  * $R_2$ - Value of serial resistors at operational amplifier inputs.
321
  * $R_2$ - Value of serial resistors at operational amplifier inputs.
323
\enditems
322
\enditems
324
 
323
 
325
We have $R_2 = 1000 \Omega$ and $R_1 = 50 \Omega$ which imply $A = 0.815$. That value of A is confirmed by measurement. 
324
We have $R_2 = 1000 \Omega$ and $R_1 = 50 \Omega$ which imply that $A = 0.815$. That value of A is further confirmed by the measurement. 
326
In our measurement setup we have H1012 Ethernet transformer connected at inputs of ADC. Transformer has 10\% tolerance in impedance and amplification. We measured ADC saturation voltage 705.7 mV (generator output) in this setup due to impedance mismatch and uncalibrated transformer gain. 
325
In our measurement setup we have H1012 Ethernet transformer connected to inputs of ADC. The transformer has a 10\% tolerance in impedance and amplification. We measured ADC saturation voltage of 705.7 mV (generator output) in this setup due to impedance mismatch and uncalibrated transformer gain. 
327
 
326
 
328
 
327
 
329
\midinsert
328
\midinsert
330
\clabel[ADC1-FFT]{ADC1 sine test FFT}
329
\clabel[ADC1-FFT]{ADC1 sine test FFT}
331
\picw=15cm \cinspic ./img/screenshots/ADC1_CH2_FFT.png
330
\picw=15cm \cinspic ./img/screenshots/ADC1_CH2_FFT.png
332
\caption/f Sine signal sampled by ADC1 module with LTC2190 and LT6600-5 devices.
331
\caption/f Sine signal sampled by ADC1 module with LTC2190 and LT6600-5 devices.
333
\endinsert
332
\endinsert
334
 
333
 
335
 
334
 
336
For ADC2 we must use formula with different constant \ref[ADC1-gain]. ADC2 module has LT6600-2.5 populated and gain is $A = 2.457$ with same $R_2$ resistors. We measured saturation voltage of 380 mV (generator output) at channel 1 on this ADC. It is well in parameter tolerances  of used setup.   
335
For ADC2 we have to use formula with a different constant \ref[ADC1-gain]. The ADC2 module has LT6600-2.5 amplifiers populated on it with gain equal to $A = 2.457$ and uses the same $R_2$ resistors. We measured saturation voltage of 380 mV (generator output) at channel 1 on this ADC. It is well in parameter tolerances  of used setup.   
337
 
336
 
338
\label[ADC2-gain]
337
\label[ADC2-gain]
339
$$
338
$$
340
A = {1580 \cdot R_1 \over R_1 + R_2}
339
A = {1580 \cdot R_1 \over R_1 + R_2}
341
$$
340
$$
342
 
341
 
343
Where is 
342
Where the letters stand for:
344
\begitems
343
\begitems
345
  * $A$ -  Gain of input amplifier.
344
  * $A$ -  Gain of an input amplifier.
346
  * $R_1$ - Output impedance of signal source (usually 50 Ohm).
345
  * $R_1$ - Output impedance of signal source (usually 50 Ohm).
347
  * $R_2$ - Value of serial resistors at operational amplifier inputs.
346
  * $R_2$ - Value of serial resistors at operational amplifier inputs.
348
\enditems
347
\enditems
349
 
348
 
350
\midinsert
349
\midinsert
351
\clabel[ADC2-FFT]{ADC2 sine test FFT}
350
\clabel[ADC2-FFT]{ADC2 sine test FFT}
352
\picw=15cm \cinspic ./img/screenshots/ADC2_CH1_FFT.png
351
\picw=15cm \cinspic ./img/screenshots/ADC2_CH1_FFT.png
353
\caption/f Sine signal sampled by ADC2 module with LTC2271 and LT6600-2.5 devices.
352
\caption/f Sine signal sampled by ADC2 module with LTC2271 and LT6600-2.5 devices.
354
\endinsert
353
\endinsert
355
 
354
 
356
Computed FFT spectra for measured signal are shown in images \ref[ADC2-FFT] and \ref[ADC1-FFT].  Both images confirms that ADCdual01A modules have input dynamical range 80 dB at least. 
355
Computed FFT spectra for measured signal are shown in the images \ref[ADC2-FFT] and \ref[ADC1-FFT].  Both images confirm that ADCdual01A modules have input dynamical range of 80 dB at least. 
357
 
356
 
358
\chap Example of usage
357
\chap Example of usage
359
 
358
 
360
For additional validation of system design a receiver setup was constructed. 
359
For additional validation of system characteristics a receiver setup has been constructed. 
361
    
360
    
362
\sec Basic interferometric station
361
\sec Basic interferometric station
363
 
362
 
364
Interferometry station was selected as most basic setup. We connected the new data acquisition system to two SDRX01B receivers. Block schematic of used setup is shown in image \ref[block-schematic]. Two ground-plane antennas were used and mounted outside of balcony at CTU building at location 50$^\circ$ 4\' 36.102\" N,  14$^\circ$ 25\' 4.170\" E. 
363
Interferometry station was chosen to serve as the most basic experimental setup. We connected the new data acquisition system to two SDRX01B receivers. Block schematics of the setup used is shown in image \ref[block-schematic]. Two ground-plane antennae were used and mounted outside the balcony at CTU building at location 50$^\circ$ 4\' 36.102\" N,  14$^\circ$ 25\' 4.170\" E. 
365
Antennas were equipped  by LNA01A amplifiers. Coaxial cable length are matched for 5 meters. And antennas were isolated by common mode ferrite bead mounted on cable for minimize signal coupling between antennas. Evaluation system consists SDGPSDO local oscillator subsystem used for tuning local oscillator frequency. 
364
Antennae were equipped  by LNA01A amplifiers. All coaxial cables have the same length of 5 meters. Antennae were isolated by common mode ferrite bead mounted on cable to minimise the signal coupling between antennas. Evaluation system consists of SDGPSDO local oscillator subsystem used to tune the local oscillator frequency. 
366
 
365
 
367
\midinsert
366
\midinsert
368
\clabel[block-schematic]{Receiver block schematic}
367
\clabel[block-schematic]{Receiver block schematic}
369
\picw=10cm \cinspic ./img/Coherent_UHF_SDR_receiver.png
368
\picw=10cm \cinspic ./img/Coherent_UHF_SDR_receiver.png
370
\caption/f Complete receiver block schematic of dual antenna interferometric station.
369
\caption/f Complete receiver block schematic of dual antenna interferometric station.