Subversion Repositories svnkaklik

Rev

Rev 1137 | Rev 1142 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log

Rev 1137 Rev 1138
1
\chap Trial version of the receiver, design and implementation
1
\chap Trial version of the receiver, design and implementation
2
 
2
 
3
The whole design of radioastronomy receiver digitalization unit is constructed to be used in a wide range of applications and tasks related to digitalization of signal from radioastronomy receivers. A good illustrating problem for its use is a signal digitalisation from multiple antenna arrays.
3
The whole design of radioastronomy receiver digitalization unit is constructed to be used in a wide range of applications and tasks related to digitalization of signal from radioastronomy receivers. A good illustrating problem for its use is a signal digitalisation from multiple antenna arrays.
4
 
4
 
5
 
5
 
6
\midinsert
6
\midinsert
7
\clabel[expected-block-schematic]{Expected system block schematic}
7
\clabel[expected-block-schematic]{Expected system block schematic}
8
\picw=\pdfpagewidth \setbox0=\hbox{\inspic ./img/Coherent_UHF_SDR_receiver.png }
8
\picw=\pdfpagewidth \setbox0=\hbox{\inspic ./img/Coherent_UHF_SDR_receiver.png }
9
\par\nobreak \vskip\wd0 \vskip-\ht0
9
\par\nobreak \vskip\wd0 \vskip-\ht0
10
\centerline {\kern\ht0 \pdfsave\pdfrotate{90}\rlap{\box0}\pdfrestore}
10
\centerline {\kern\ht0 \pdfsave\pdfrotate{90}\rlap{\box0}\pdfrestore}
11
\caption/f Expected realisation of signal digitalisation unit.
11
\caption/f Expected realisation of signal digitalisation unit.
12
\endinsert
12
\endinsert
13
 
13
 
14
\sec Required parameters
14
\sec Required parameters
15
 
15
 
16
We require the following technical parameters, to supersede existing digitalization units solutions.
16
We require the following technical parameters, to supersede existing digitalization units solutions.
17
Primarily, we need wide a dynamical range and high IP3. \glos{IP3}{Third-order intercept point} The receiver must accept wide dynamic signals because a typical radioastronomical signal has a form of a weak signal covered by a strong man-made noise or other undesired noises as lighting, Sun emissions etc.
17
Primarily, we need wide a dynamical range and high IP3. \glos{IP3}{Third-order intercept point} The receiver must accept wide dynamic signals because a typical radioastronomical signal has a form of a weak signal covered by a strong man-made noise or other undesired noises as lighting, Sun emissions etc.
18
 
18
 
19
Summary of other additional required parameters follows
19
Summary of other additional required parameters follows
20
 
20
 
21
\begitems
21
\begitems
22
  * Dynamical range better than 80 dB, see section \ref[dynamic-range-theory] for explanation
22
  * Dynamical range better than 80 dB, see section \ref[dynamic-range-theory] for explanation
23
  * Phase stability between channels
23
  * Phase stability between channels
24
  * Low noise (all types)
24
  * Low noise (all types)
25
  * Sampling jitter better than 100 metres
25
  * Sampling jitter better than 100 metres
26
  * Support for any number of receivers in the range of 1 to 8
26
  * Support for any number of receivers in the range of 1 to 8
27
\enditems
27
\enditems
28
 
28
 
29
Now we analyze several of the parameters in detail.
29
Now we analyze several of the parameters in detail.
30
 
30
 
31
\sec Sampling frequency
31
\sec Sampling frequency
32
 
32
 
33
Sampling frequency is not limited by the technical constrains in the trial version. This parameter is especially limited by the sampling frequencies of analog-to-digital conversion chips available on the market and interface bandwidth. Combination of the required parameters -- dynamic range requiring at least 16bit and a minimum sampling frequency of 1$\ $MSPS \glos{MSPS}{Mega-Samples Per Second} leads to the need of high end ADC chips which does not support such low sampling frequencies at all. Their minimum sampling frequency is 5$\ $MSPS.
33
Sampling frequency is not limited by the technical constrains in the trial version. This parameter is especially limited by the sampling frequencies of analog-to-digital conversion chips available on the market and interface bandwidth. Combination of the required parameters -- dynamic range requiring at least 16bit and a minimum sampling frequency of 1$\ $MSPS \glos{MSPS}{Mega-Samples Per Second} leads to the need of high end ADC chips which does not support such low sampling frequencies at all. Their minimum sampling frequency is 5$\ $MSPS.
34
 
34
 
35
We calculated a minimum data bandwidth data rate for eight receivers, 2 bytes per sample and 5$\ $MSPS as $8 \cdot 2 \cdot 5\cdot 10^6 = 80\ $MB/s. Such data rate is at the limit of the actual writing speed of classical HDD \glos{HDD}{Hard disk drive} and it is almost double the real bandwidth of USB 2.0 \glos{USB 2.0}{Universal Serial Bus version 2.0}  interface. As a result of these facts we must use faster interface. Faster interface is especially needed in cases where we require faster sampling rates than ADC's minimal 5$\ $MSPS sample rate.
35
We calculated a minimum data bandwidth data rate for eight receivers, 2 bytes per sample and 5$\ $MSPS as $8 \cdot 2 \cdot 5\cdot 10^6 = 80\ $MB/s. Such data rate is at the limit of the actual writing speed of classical HDD \glos{HDD}{Hard disk drive} and it is almost double the real bandwidth of USB 2.0 \glos{USB 2.0}{Universal Serial Bus version 2.0}  interface. As a result of these facts we must use faster interface. Faster interface is especially needed in cases where we require faster sampling rates than ADC's minimal 5$\ $MSPS sample rate.
36
The most perspective interface for use in our type of application is USB 3.0 or PCI Express interface. However, USB 3.0 is a relatively new technology without good development tools currently available. We have used PCI Express \glos{PCI Express}{Peripheral Component Interconnect Express}  interface as the simplest and the most reliable solution.
36
The most perspective interface for use in our type of application is USB 3.0 or PCI Express interface. However, USB 3.0 is a relatively new technology without good development tools currently available. We have used PCI Express \glos{PCI Express}{Peripheral Component Interconnect Express}  interface as the simplest and the most reliable solution.
37
 
37
 
38
\sec System scalability
38
\sec System scalability
39
 
39
 
40
For analogue channels' scalability, special parameters of ADC modules are required. Ideally, there should be a separate output for each analogue channel in ADC module. ADC module must also have separate outputs for frames and data output clocks. These parameters allow for conduction at relatively low digital data rates. As a result, the digital signal can be conducted even through long wires. Modular concept allows a separation from central logical unit which supports optimization of number analogue channels.
40
For analogue channels' scalability, special parameters of ADC modules are required. Ideally, there should be a separate output for each analogue channel in ADC module. ADC module must also have separate outputs for frames and data output clocks. These parameters allow for conduction at relatively low digital data rates. As a result, the digital signal can be conducted even through long wires. Modular concept allows a separation from central logical unit which supports optimization of number analogue channels.
41
 
41
 
42
Clock and data signals will be then handled distinctively in our modular scalable design. Selected ADC chips are guaranteed to have defined clock skew between the sampling and data output clocks. This allows taking data and frame clocks from the first ADC module only. The rest of the data and frame clocks from other ADC modules can be measured for diagnostic purposes (failure detection, jitter measurement etc.), but these redundant signals are not used for data sampling. If more robustness is required in the final application, DCO \glos{DCO}{Data Clock Output} and FR signals may be collected from other modules and routed through an voting logic which will correct possible signal defects.
42
Clock and data signals will be then handled distinctively in our modular scalable design. Selected ADC chips are guaranteed to have defined clock skew between the sampling and data output clocks. This allows taking data and frame clocks from the first ADC module only. The rest of the data and frame clocks from other ADC modules can be measured for diagnostic purposes (failure detection, jitter measurement etc.), but these redundant signals are not used for data sampling. If more robustness is required in the final application, DCO \glos{DCO}{Data Clock Output} and FR signals may be collected from other modules and routed through an voting logic which will correct possible signal defects.
43
 
43
 
44
This system concept allows for scalability, that is technically limited by a number of differential signals on host side and its computational power.  There is another advantage of scalable data acquisition system -- an economic one. Observatories or end users can make a choice of how much money are they willing to spent on radioastronomy receiver system. This freedom of choice is especially useful for science sites without previous experience in radioastronomy observations.
44
This system concept allows for scalability, that is technically limited by a number of differential signals on host side and its computational power.  There is another advantage of scalable data acquisition system -- an economic one. Observatories or end users can make a choice of how much money are they willing to spent on radioastronomy receiver system. This freedom of choice is especially useful for science sites without previous experience in radioastronomy observations.
45
 
45
 
46
\secc Differential signalling
46
\secc Differential signalling
47
 
47
 
48
The above mentioned concept of scalable design requires relatively long circuit traces between ADC and digital unit which captures the data and performs the computations. The long distance between the digital processing unit and the analog-to-digital conversion unit has an advantage in noise retention typically produced by digital circuits. Those digital circuits, such as FPGA \glos{FPGA}{Field-programmable gate array}, Ethernet or other flip-flops blocks and circuit traces, usually work at high frequencies and emit wide-band noise with relatively low power. In such cases any increase in a distance between the noise source and analog signal source increase S/N significantly. However, at the same time, a long distance brings problems with the digital signal transmission between ADC and computational unit. But this obstacle should be resolved more easily in free-space than on board routing. The high-quality differential signalling shielded cables should be used, such as massively produced and cheap SATA \glos{SATA}{Serial ATA} \glos{ATA}{AT Attachment} cables. This technology has two advantages over PCB \glos{PCB}{printed circuit board} signal routing. First, it can use twisted pair of wires for leak inductance suppression in signal path and second, the twisted pair may additionally be shielded by uninterrupted metal foil.
48
The above mentioned concept of scalable design requires relatively long circuit traces between ADC and digital unit which captures the data and performs the computations. The long distance between the digital processing unit and the analog-to-digital conversion unit has an advantage in noise retention typically produced by digital circuits. Those digital circuits, such as FPGA \glos{FPGA}{Field-programmable gate array}, Ethernet or other flip-flops blocks and circuit traces, usually work at high frequencies and emit wide-band noise with relatively low power. In such cases any increase in a distance between the noise source and analog signal source increase S/N significantly. However, at the same time, a long distance brings problems with the digital signal transmission between ADC and computational unit. But this obstacle should be resolved more easily in free-space than on board routing. The high-quality differential signalling shielded cables should be used, such as massively produced and cheap SATA \glos{SATA}{Serial ATA} \glos{ATA}{AT Attachment} cables. This technology has two advantages over PCB \glos{PCB}{printed circuit board} signal routing. First, it can use twisted pair of wires for leak inductance suppression in signal path and second, the twisted pair may additionally be shielded by uninterrupted metal foil.
49
 
49
 
50
\secc Phase matching
50
\secc Phase matching
51
 
51
 
52
For multiple antenna radioastronomy projects, system phase stability is a mandatory condition. It allows a precise, high resolution imaging of objects, increases signal to noise ratios in several observation methods and allows the use of advanced algorithms for signal processing.
52
For multiple antenna radioastronomy projects, system phase stability is a mandatory condition. It allows a precise, high resolution imaging of objects, increases signal to noise ratios in several observation methods and allows the use of advanced algorithms for signal processing.
53
 
53
 
54
High phase stability in our scalable design is achieved through centralized frequency generation  and distribution with multi-output LVPECL \glos{LVPECL}{Low Voltage Emitter-coupled logic} hubs (CLKHUB02A), that have equiphased outputs for multiple devices. LVPECL logic is used on every system critical clock signal distribution hub. LVPECL logic has an advantage over LVDS \glos{LVDS}{Low-voltage differential signaling} in signal integrity robustness. LVPECL uses higher logical levels and higher signalling currents. Power consumption of LVPECL logic is nearly constant over the operating frequency range due to the use of bipolar transistors. This minimizes voltage glitches which are typical for CMOS \glos{CMOS}{Complementary metal–oxide–semiconductor } logic. One drawback of its parameters is a high power consumption of LVPECL logic which easily reaches tens of milliamperes per device.
54
High phase stability in our scalable design is achieved through centralized frequency generation  and distribution with multi-output LVPECL \glos{LVPECL}{Low Voltage Emitter-coupled logic} hubs (CLKHUB02A), that have equiphased outputs for multiple devices. LVPECL logic is used on every system critical clock signal distribution hub. LVPECL logic has an advantage over LVDS \glos{LVDS}{Low-voltage differential signaling} in signal integrity robustness. LVPECL uses higher logical levels and higher signalling currents. Power consumption of LVPECL logic is nearly constant over the operating frequency range due to the use of bipolar transistors. This minimizes voltage glitches which are typical for CMOS \glos{CMOS}{Complementary metal–oxide–semiconductor } logic. One drawback of its parameters is a high power consumption of LVPECL logic which easily reaches tens of milliamperes per device.
55
 
55
 
56
This design ensures that all system devices have access to the defined phase and known frequency.
56
This design ensures that all system devices have access to the defined phase and known frequency.
57
 
57
 
58
\sec System description
58
\sec System description
59
 
59
 
60
This section deals with the description of the trial version based on Xilinx ML605 development board \ref[ML605-development-board]. The board had been used in a previous project and has not been used since then, but the FPGA parameters are more than sufficient of what we need for fast data acquisition system.
60
This section deals with the description of the trial version based on Xilinx ML605 development board \ref[ML605-development-board]. The board had been used in a previous project and has not been used since then, but the FPGA parameters are more than sufficient of what we need for fast data acquisition system.
61
 
61
 
62
\secc Frequency synthesis
62
\secc Frequency synthesis
63
 
63
 
64
We have used a centralized topology as a basis for frequency synthesis. One precise high-frequency and low-jitter digital oscillator has been used \cite[MLAB-GPSDO], while other working frequencies have been derived from it by the division of its signal. This central oscillator has a software defined GPS \glos{GPS}{Global Positioning System}  disciplined control loop for frequency stabilization.\fnote{SDGPSDO design has been developed in parallel to this diploma thesis as a related project, but it is not explicitly required by the thesis itself and thus it is described in a separate document}
64
We have used a centralized topology as a basis for frequency synthesis. One precise high-frequency and low-jitter digital oscillator has been used \cite[MLAB-GPSDO], while other working frequencies have been derived from it by the division of its signal. This central oscillator has a software defined GPS \glos{GPS}{Global Positioning System}  disciplined control loop for frequency stabilization.\fnote{SDGPSDO design has been developed in parallel to this diploma thesis as a related project, but it is not explicitly required by the thesis itself and thus it is described in a separate document}
65
We have used new methods of software frequency monitoring and compensation in order to meet modern requirements on radioastronomy equipment which need precise frequency and phase stability over a wide baseline scales for effective radioastronomy imaging.
65
We have used new methods of software frequency monitoring and compensation in order to meet modern requirements on radioastronomy equipment which need precise frequency and phase stability over a wide baseline scales for effective radioastronomy imaging.
66
 
66
 
67
The GPSDO device consists of Si570 chip with LVPECL output. Phase jitter of GPSDO \glos{GPSDO}{GPS disciplined oscillator} is determined mainly by Si570 phase noise. Parameters of the Si570 are summarized in the following table \ref[LO-noise] (source \cite[si570-chip] ).
67
The GPSDO device consists of Si570 chip with LVPECL output. Phase jitter of GPSDO \glos{GPSDO}{GPS disciplined oscillator} is determined mainly by Si570 phase noise. Parameters of the Si570 are summarized in the following table \ref[LO-noise] (source \cite[si570-chip] ).
68
 
68
 
69
The GPSDO design, that is included in data acquisition system, has special feature -- it generates time marks for a precise time-stamping of the received signal. Timestamps are created by disabling the local oscillator's outputs, connected to SDRX01B receivers, for 100 us.  As result, a rectangular click in the ADC input signal is created which appears as a horizontal line in spectrogram.
69
The GPSDO design, that is included in data acquisition system, has special feature -- it generates time marks for a precise time-stamping of the received signal. Timestamps are created by disabling the local oscillator's outputs, connected to SDRX01B receivers, for 100 us.  As result, a rectangular click in the ADC input signal is created which appears as a horizontal line in spectrogram.
70
Timestamps should be seen in image \ref[meteor-reflection] (above and below the meteor reflection).
70
Timestamps should be seen in image \ref[meteor-reflection] (above and below the meteor reflection).
71
 
71
 
72
Time-marking should be improved in future by digitalization of GPS signal received by antenna on observational station. Following that, the GPS signal can be directly sampled by a dedicated receiver and one separate ADC module. Datafile then consists of samples from channels of radio-astronomy receivers along with the GPS signal containing precise time information.
72
Time-marking should be improved in future by digitalization of GPS signal received by antenna on observational station. Following that, the GPS signal can be directly sampled by a dedicated receiver and one separate ADC module. Datafile then consists of samples from channels of radio-astronomy receivers along with the GPS signal containing precise time information.
73
 
73
 
74
 
74
 
75
\midinsert \clabel[LO-noise]{Phase noise of the local oscillator}
75
\midinsert \clabel[LO-noise]{Phase noise of the local oscillator}
76
\ctable{lcc}{
76
\ctable{lcc}{
77
	&	 \multispan2 \hfil Phase Noise [dBc/Hz] \hfil 		\cr
77
	&	 \multispan2 \hfil Phase Noise [dBc/Hz] \hfil 		\cr
78
Offset Frequency	&	$F_{out}$ 156.25 MHz	& $F_{out}$ 622.08 MHz \cr
78
Offset Frequency	&	$F_{out}$ 156.25 MHz	& $F_{out}$ 622.08 MHz \cr
79
100 [Hz]	&	–105	&	–97 \cr
79
100 [Hz]	&	–105	&	–97 \cr
80
1 [kHz]	&	–122	&	–107 \cr
80
1 [kHz]	&	–122	&	–107 \cr
81
10 [kHz]	&	–128	&	–116 \cr
81
10 [kHz]	&	–128	&	–116 \cr
82
100 [kHz]	&	–135	&	–121 \cr
82
100 [kHz]	&	–135	&	–121 \cr
83
1 [MHz]	&	–144	&	–134 \cr
83
1 [MHz]	&	–144	&	–134 \cr
84
10 [MHz]	&	–147	&	–146 \cr
84
10 [MHz]	&	–147	&	–146 \cr
85
100 [MHz]	&	n/a	&	–148 \cr
85
100 [MHz]	&	n/a	&	–148 \cr
86
}
86
}
87
\caption/t Phase noise of the used Silicon Laboratories Si570 chip. Offset frequency is measured from carrier frequency. Values shown in the table are given for two different carrier frequencies.
87
\caption/t Phase noise of the used Silicon Laboratories Si570 chip. Offset frequency is measured from carrier frequency. Values shown in the table are given for two different carrier frequencies.
88
\endinsert
88
\endinsert
89
 
89
 
90
Every ADC module will be directly connected to CLKHUB02A module which takes sampling clock signal delivered by FPGA from the main local oscillator.  This signal should use high quality differential signalling cable -- we should use SATA cable for this purpose. FPGA may slightly affect the clock signal quality by adding a noise, but it has a negligible effect on the application where developed system will be used.
90
Every ADC module will be directly connected to CLKHUB02A module which takes sampling clock signal delivered by FPGA from the main local oscillator.  This signal should use high quality differential signalling cable -- we should use SATA cable for this purpose. FPGA may slightly affect the clock signal quality by adding a noise, but it has a negligible effect on the application where developed system will be used.
91
 
91
 
92
 
92
 
93
\secc Signal cable connectors
93
\secc Signal cable connectors
94
 
94
 
95
\label[signal-cables]
95
\label[signal-cables]
96
 
96
 
97
Several widely used and commercially easily accessible differential connectors were considered to be use in our design.
97
Several widely used and commercially easily accessible differential connectors were considered to be use in our design.
98
 
98
 
99
\begitems
99
\begitems
100
* HDMI % [[http://en.wikipedia.org/wiki/Hdmi|HDMI]]</del>
100
* HDMI % [[http://en.wikipedia.org/wiki/Hdmi|HDMI]]</del>
101
* SATA  		%{http://en.wikipedia.org/wiki/Serial_attached_SCSI#Connectors|SAS]]/[[http://en.wikipedia.org/wiki/Serial_ATA|SATA]]
101
* SATA  		%{http://en.wikipedia.org/wiki/Serial_attached_SCSI#Connectors|SAS]]/[[http://en.wikipedia.org/wiki/Serial_ATA|SATA]]
102
* DisplayPort 		%[[http://en.wikipedia.org/wiki/Display_port|DisplayPort]]</del>
102
* DisplayPort 		%[[http://en.wikipedia.org/wiki/Display_port|DisplayPort]]</del>
103
* SAS/miniSAS
103
* SAS/miniSAS
104
\enditems
104
\enditems
105
 
105
 
106
At the end, MiniSAS connector was chosen as the best option to be used in connecting together multiple ADC modules. A transition between SATA and miniSAS is achieved by SAS to SATA adapter cable which is commonly used in servers to connect SAS controller to multiple SATA hard disc in RAID systems and thus is commercially easily available. It is compatible with existing SATA cabling systems and aggregates multiple SATA cables to a single connector. It also has SPI configuration lines which can be seen in the following picture \ref[img-miniSAS-cable] as standard pinheader connector.
106
At the end, MiniSAS connector was chosen as the best option to be used in connecting together multiple ADC modules. A transition between SATA and miniSAS is achieved by SAS to SATA adapter cable which is commonly used in servers to connect SAS controller to multiple SATA hard disc in RAID systems and thus is commercially easily available. It is compatible with existing SATA cabling systems and aggregates multiple SATA cables to a single connector. It also has SPI configuration lines which can be seen in the following picture \ref[img-miniSAS-cable] as standard pinheader connector.
107
The main drawback of miniSAS PCB connectors lies in the fact, that they are manufactured in SMT versions only. SMT design may eventually decrease the durability of the connector even if outer metal housing of connector is designed to be mounted using a standard through-hole mounting method.
107
The main drawback of miniSAS PCB connectors lies in the fact, that they are manufactured in SMT versions only. SMT design may eventually decrease the durability of the connector even if outer metal housing of connector is designed to be mounted using a standard through-hole mounting method.
108
 
108
 
109
\midinsert
109
\midinsert
110
\clabel[img-miniSAS-cable]{Used miniSAS cable}
110
\clabel[img-miniSAS-cable]{Used miniSAS cable}
111
\picw=5cm \cinspic ./img/miniSAS_SATA_cable.jpg
111
\picw=5cm \cinspic ./img/miniSAS_SATA_cable.jpg
112
\caption/f An example of miniSAS cable similar to used.
112
\caption/f An example of miniSAS cable similar to used.
113
\endinsert
113
\endinsert
114
 
114
 
115
\secc Signal integrity requirements
115
\secc Signal integrity requirements
116
 
116
 
117
\label[diff-signaling]
117
\label[diff-signaling]
118
 
118
 
119
We use ADC devices that have DATA clock frequency eight times higher than sampling frequency in a single line output mode, implying a 40 MHz output bit rate. This implies a $ 1/4 \cdot 10^7 = 25\ $ns time length of data bit, which is equivalent to 7.5m light path in free space. If we use copper PCB with FR4 substrate layer or coaxial/twinax cable, we could obtain velocity factor of 0.66 at worst condition. Then the light path for the same bit rate $t_s$ will be 4.95 m. Although we do not have any cables in the system with comparable lengths, the worst data bit skew described by data sheets of the used components is $0.3 \cdot t_s$, which is 1.485 m. Therefore the length matching is not critical in our current design operating on lowest sampling speed. Length matching may become critical in future versions with higher sampling rates, where the cable length must be matched. However SATA cabling technology is already prepared for that case and matched SATA cables are a standard merchandise.
119
We use ADC devices that have DATA clock frequency eight times higher than sampling frequency in a single line output mode, implying a 40 MHz output bit rate. This implies a $ 1/4 \cdot 10^7 = 25\ $ns time length of data bit, which is equivalent to 7.5m light path in free space. If we use copper PCB with FR4 substrate layer or coaxial/twinax cable, we could obtain velocity factor of 0.66 at worst condition. Then the light path for the same bit rate $t_s$ will be 4.95 m. Although we do not have any cables in the system with comparable lengths, the worst data bit skew described by data sheets of the used components is $0.3 \cdot t_s$, which is 1.485 m. Therefore the length matching is not critical in our current design operating on lowest sampling speed. Length matching may become critical in future versions with higher sampling rates, where the cable length must be matched. However SATA cabling technology is already prepared for that case and matched SATA cables are a standard merchandise.
120
 
120
 
121
\secc ADC modules design
121
\secc ADC modules design
122
 
122
 
123
\midinsert
123
\midinsert
124
\clabel[adcdual-preview]{Preview of designed ADCdual PCB}
124
\clabel[adcdual-preview]{Preview of designed ADCdual PCB}
125
\picw=10cm \cinspic ./img/ADCdual01A_Top_Big.JPG
125
\picw=10cm \cinspic ./img/ADCdual01A_Top_Big.JPG
126
\picw=10cm \cinspic ./img/ADCdual01A_Bottom_Big.JPG
126
\picw=10cm \cinspic ./img/ADCdual01A_Bottom_Big.JPG
127
\caption/f Realised PCB of ADCdual01A modules. Differential pairs routings are clearly visible.
127
\caption/f Realised PCB of ADCdual01A modules. Differential pairs routings are clearly visible.
128
\endinsert
128
\endinsert
129
 
129
 
130
\secc ADC selection
130
\secc ADC selection
131
 
131
 
132
There exist several standard ADC signalling formats currently used in communication with FPGA.
132
There exist several standard ADC signalling formats currently used in communication with FPGA.
133
 
133
 
134
\begitems
134
\begitems
135
  * DDR LVDS
135
  * DDR LVDS
136
  * JEDEC 204B
136
  * JEDEC 204B
137
  * JESD204A
137
  * JESD204A
138
  * Paralel LVDS
138
  * Paralel LVDS
139
  * Serdes
139
  * Serdes
140
  * serial LVDS
140
  * serial LVDS
141
\enditems
141
\enditems
142
 
142
 
143
As a result of our need to use the smallest number of cables possible, the choice fell on the serial LVDS format. Small number of differential pairs is an important parameter determining the construction complexity and reliability\cite[serial-lvds]. No many currently existing ADC devices have this kind of digital interface. An ultrasound AFE device chips seem to be ideal for this purpose -- the chip has integrated both front-end amplifiers and filters. It has a drawback though - it is incapable of handling differential input signal and has a relatively low dynamic range (as it consists only of 12bit ADC) and has many single ended ADC channels. Consequently, the scaling is possible only by a factor of 4 receivers (making 8 analogue single ended channels).
143
As a result of our need to use the smallest number of cables possible, the choice fell on the serial LVDS format. Small number of differential pairs is an important parameter determining the construction complexity and reliability\cite[serial-lvds]. No many currently existing ADC devices have this kind of digital interface. An ultrasound AFE device chips seem to be ideal for this purpose -- the chip has integrated both front-end amplifiers and filters. It has a drawback though - it is incapable of handling differential input signal and has a relatively low dynamic range (as it consists only of 12bit ADC) and has many single ended ADC channels. Consequently, the scaling is possible only by a factor of 4 receivers (making 8 analogue single ended channels).
144
 
144
 
145
If we add a requirement of separate output for every analogue channel and a 16bit depth we find that there are only a few 2-Channel simultaneous sampling ADCs currently existing which meet these criteria. We have summarized those ADCs in the following table \ref[ADC-types]
145
If we add a requirement of separate output for every analogue channel and a 16bit depth we find that there are only a few 2-Channel simultaneous sampling ADCs currently existing which meet these criteria. We have summarized those ADCs in the following table \ref[ADC-types]
146
 
146
 
147
\midinsert
147
\midinsert
148
\typosize[9/11] \def\tabiteml{ }\let\tabitemr=\tabiteml
148
\typosize[9/11] \def\tabiteml{ }\let\tabitemr=\tabiteml
149
\clabel[ADC-types]{Available ADC types}
149
\clabel[ADC-types]{Available ADC types}
150
\ctable{lccccccc}{
150
\ctable{lccccccc}{
151
\hfil ADC Type & LTC2271 & LTC2190 & LTC2191 & LTC2192 & LTC2193 & LTC2194 & LTC2195 \cr
151
\hfil ADC Type & LTC2271 & LTC2190 & LTC2191 & LTC2192 & LTC2193 & LTC2194 & LTC2195 \cr
152
SNR [dB] & 84.1 & 77 & 77 & 77 & 76.8 & 76.8 & 76.8  \cr
152
SNR [dB] & 84.1 & 77 & 77 & 77 & 76.8 & 76.8 & 76.8  \cr
153
SFDR [dB] & 99 & 90 & 90 & 90 & 90 & 90 & 90  \cr
153
SFDR [dB] & 99 & 90 & 90 & 90 & 90 & 90 & 90  \cr
154
S/H Bandwidth [MHz] & 200 & \multispan6 550 \strut \cr
154
S/H Bandwidth [MHz] & 200 & \multispan6 550 \strut \cr
155
Sampling rate [MSPS] & 20 & 25 & 40 & 65 & 80 &  105 & 125  \cr
155
Sampling rate [MSPS] & 20 & 25 & 40 & 65 & 80 &  105 & 125  \cr
156
Configuration & \multispan7 SPI \strut \cr
156
Configuration & \multispan7 SPI \strut \cr
157
Package & \multispan7 \hfil 52-Lead (7mm $\times$ 8mm) QFN \hfil \strut \cr
157
Package & \multispan7 \hfil 52-Lead (7mm $\times$ 8mm) QFN \hfil \strut \cr
158
}
158
}
159
\caption/t The summary of the currently available ADC types and theirs characteristics.
159
\caption/t The summary of the currently available ADC types and theirs characteristics.
160
\endinsert
160
\endinsert
161
 
161
 
162
All parts in this category are compatible with one board layout. The main differences lay in the sampling frequency and signal to noise ratio, with the slowest having a maximum sampling frequency of 20 MHz. However, all of them have a minimal sampling frequency of 5 MSPS and all are configurable over a serial interface (SPI). SPI seems to be a standard interface used in high-end ADC chips made by the largest manufacturers (Analog Devices, Linear technology, Texas instruments, Maxim integrated..).  We have selected two slowest types for our evaluation design. Following that, a PCB for this part have been designed.
162
All parts in this category are compatible with one board layout. The main differences lay in the sampling frequency and signal to noise ratio, with the slowest having a maximum sampling frequency of 20 MHz. However, all of them have a minimal sampling frequency of 5 MSPS and all are configurable over a serial interface (SPI). SPI seems to be a standard interface used in high-end ADC chips made by the largest manufacturers (Analog Devices, Linear technology, Texas instruments, Maxim integrated..).  We have selected two slowest types for our evaluation design. Following that, a PCB for this part have been designed.
163
We have decided that ADCdual01A modules will have a standard MLAB construction layout with four mounting holes in corners aligned in defined raster of 400 mils.
163
We have decided that ADCdual01A modules will have a standard MLAB construction layout with four mounting holes in corners aligned in defined raster of 400 mils.
164
 
164
 
165
Data serial data outputs of ADC modules should be connected directly by LVDS signalling levels conducted by SATA cables to FPGAs for the basic primary signal processing. The ADC chips used in the modules have a selectable bit width of data output bus and thus the output SATA connectors have signals arranged to contain a single bit from every ADC channel.  This creates a signal concept enabling a selection of proper bus bit-width according to the sampling rate (higher bus bit-width downgrades signalling speed and vice versa.)
165
Data serial data outputs of ADC modules should be connected directly by LVDS signalling levels conducted by SATA cables to FPGAs for the basic primary signal processing. The ADC chips used in the modules have a selectable bit width of data output bus and thus the output SATA connectors have signals arranged to contain a single bit from every ADC channel.  This creates a signal concept enabling a selection of proper bus bit-width according to the sampling rate (higher bus bit-width downgrades signalling speed and vice versa.)
166
 
166
 
167
In order to connect the above mentioned signalling layout, miniSAS to multiple SATA cable should be used as described in section \ref[signal-cables].
167
In order to connect the above mentioned signalling layout, miniSAS to multiple SATA cable should be used as described in section \ref[signal-cables].
168
 
168
 
169
A KiCAD design suite had been chosen for PCB layout. However, the version, despite having integrated CERN Push \& Shove routing capability, is 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.
169
A KiCAD design suite had been chosen for PCB layout. However, the version, despite having integrated CERN Push \& Shove routing capability, is 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.
170
 
170
 
171
As a part of work on the thesis, new PCB footprints for FMC, SATA, ADCs 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.
171
As a part of work on the thesis, new PCB footprints for FMC, SATA, ADCs 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.
172
 
172
 
173
ADCdual01A module has several digital data output formats. Difference between these modes lays in the number of differential pairs used.
173
ADCdual01A module has several digital data output formats. Difference between these modes lays in the number of differential pairs used.
174
 
174
 
175
\begitems
175
\begitems
176
    * 1-lane mode
176
    * 1-lane mode
177
    * 2-lane mode
177
    * 2-lane mode
178
    * 4-lane mode
178
    * 4-lane mode
179
\enditems
179
\enditems
180
 
180
 
181
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].
181
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].
182
 
182
 
183
\midinsert
183
\midinsert
184
\clabel[1-line-out]{Single line ADC output signals}
184
\clabel[1-line-out]{Single line ADC output signals}
185
\picw=15cm \cinspic ./img/ADC_single_line_output.png
185
\picw=15cm \cinspic ./img/ADC_single_line_output.png
186
\caption/f Digital signalling schema for 1-line ADC digital output mode.
186
\caption/f Digital signalling schema for 1-line ADC digital output mode.
187
\endinsert
187
\endinsert
188
 
188
 
189
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 chosen for our system, because of the parallel programming's lack of options (test pattern output setup for example).
189
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 chosen for our system, because of the parallel programming's lack of options (test pattern output setup for example).
190
 
190
 
191
Complete schematic diagram of ADCdual01A module board is included in the appendix.
191
Complete schematic diagram of ADCdual01A module board is included in the appendix.
192
 
192
 
193
 
193
 
194
\secc ADC modules interface
194
\secc ADC modules interface
195
 
195
 
196
\midinsert
196
\midinsert
197
\picw=10cm \cinspic ./img/FMC2DIFF_Top_Big.JPG
197
\picw=10cm \cinspic ./img/FMC2DIFF_Top_Big.JPG
198
\picw=10cm \cinspic ./img/FMC2DIFF_Bottom_Big.JPG
198
\picw=10cm \cinspic ./img/FMC2DIFF_Bottom_Big.JPG
199
\caption/f Realised PCB of FMC2DIFF01A module.
199
\caption/f Realised PCB of FMC2DIFF01A module.
200
\endinsert
200
\endinsert
201
 
201
 
202
Both of the ADCdual01A modules were connected to FPGA ML605 board trough FMC2DIFF01A adapter board. The design of this adapter expects the presence of FMC LPC connector on host side and the board is, at the same time, not compatible with MLAB. It is, on the other hand, designed to meet the VITA 57 standard specifications for boards which support region 1 and region 3. VITA 57 regions are explained in the picture \ref[VITA57-regions].
202
Both of the ADCdual01A modules were connected to FPGA ML605 board trough FMC2DIFF01A adapter board. The design of this adapter expects the presence of FMC LPC connector on host side and the board is, at the same time, not compatible with MLAB. It is, on the other hand, designed to meet the VITA 57 standard specifications for boards which support region 1 and region 3. VITA 57 regions are explained in the picture \ref[VITA57-regions].
203
This industry standard guarantees the compatibility with other FPGA boards that have FMC LPC connectors for Mezzanine Card. Schematic diagram of designed adapter board is included in the appendix.
203
This industry standard guarantees the compatibility with other FPGA boards that have FMC LPC connectors for Mezzanine Card. Schematic diagram of designed adapter board is included in the appendix.
204
 
204
 
205
The primary purpose of the PCB is to enable the connection of ADC modules located outside the PC case with ML605 development board. (In PC box analog circuits cannot be realized without the use of massive RFI mitigation techniques).
205
The primary purpose of the PCB is to enable the connection of ADC modules located outside the PC case with ML605 development board. (In PC box analog circuits cannot be realized without the use of massive RFI mitigation techniques).
206
Differential signalling connectors should be used for conducting digital signal over relatively long cables. The signal integrity sensitive links (clocks) are equipped with output driver and translator to LVPECL logic for better signal transmission quality.
206
Differential signalling connectors should be used for conducting digital signal over relatively long cables. The signal integrity sensitive links (clocks) are equipped with output driver and translator to LVPECL logic for better signal transmission quality.
207
 
207
 
208
LVPECL level signal connectors on FMC2DIFF01A board are dedicated to transmit the clock signals. We have selected  the SY55855V and SY55857L dual translators. Dual configuration in useful due to fact, that SATA cable contains two differential pairs.
208
LVPECL level signal connectors on FMC2DIFF01A board are dedicated to transmit the clock signals. We have selected  the SY55855V and SY55857L dual translators. Dual configuration in useful due to fact, that SATA cable contains two differential pairs.
209
 
209
 
210
The SY55855V is a fully differential, CML/PECL/LVPECL-to-LVDS translator. It achieves LVDS signalling up to 1.5Gbps, depending on the distance and the characteristics of the media and noise coupling sources.
210
The SY55855V is a fully differential, CML/PECL/LVPECL-to-LVDS translator. It achieves LVDS signalling up to 1.5Gbps, depending on the distance and the characteristics of the media and noise coupling sources.
211
LVDS is intended to drive 50 $\Omega$ impedance transmission line media such as PCB traces, backplanes, or cables. SY55855V inputs can be terminated with a single resistor between the true and the complement pins of a given input \cite[SY55855V-chip].
211
LVDS is intended to drive 50 $\Omega$ impedance transmission line media such as PCB traces, backplanes, or cables. SY55855V inputs can be terminated with a single resistor between the true and the complement pins of a given input \cite[SY55855V-chip].
212
 
212
 
213
The SY55857L is a fully differential, high-speed dual translator optimized to accept any logic standard from single-ended TTL/CMOS to differential LVDS, HSTL, or CML and translate it to LVPECL. Translation is guaranteed for speeds up to 2.5Gbps (2.5GHz toggle frequency). The SY55857L does not internally terminate its inputs, as different interfacing standards have different termination requirements\cite[SY55857L-chip].
213
The SY55857L is a fully differential, high-speed dual translator optimized to accept any logic standard from single-ended TTL/CMOS to differential LVDS, HSTL, or CML and translate it to LVPECL. Translation is guaranteed for speeds up to 2.5Gbps (2.5GHz toggle frequency). The SY55857L does not internally terminate its inputs, as different interfacing standards have different termination requirements\cite[SY55857L-chip].
214
 
214
 
215
Inputs of both used chips are terminated accordingly to used logic. The LVDS input is terminated differentially by 100 $\Omega$ resistor between positive and negative inputs. PECL input is terminated by Thevenin resistor network. Thevenin termination method was selected as optimal one, due to the absence of a proper power voltage (1,3 V) for direct termination by 50 $\Omega$ resistors. Termination on FPGA side is realized directly by settings the proper digital logic type on input pins.
215
Inputs of both used chips are terminated accordingly to used logic. The LVDS input is terminated differentially by 100 $\Omega$ resistor between positive and negative inputs. PECL input is terminated by Thevenin resistor network. Thevenin termination method was selected as optimal one, due to the absence of a proper power voltage (1,3 V) for direct termination by 50 $\Omega$ resistors. Termination on FPGA side is realized directly by settings the proper digital logic type on input pins.
216
 
216
 
217
\midinsert
217
\midinsert
218
\clabel[ML605-development-board]{ML605 development board}
218
\clabel[ML605-development-board]{ML605 development board}
219
\picw=10cm \cinspic ./img/ML605-board.jpg
219
\picw=10cm \cinspic ./img/ML605-board.jpg
220
\caption/f FPGA ML605 development board.
220
\caption/f FPGA ML605 development board.
221
\endinsert
221
\endinsert
222
 
222
 
223
\midinsert
223
\midinsert
224
\clabel[VITA57-regions]{VITA57 board geometry}
224
\clabel[VITA57-regions]{VITA57 board geometry}
225
\picw=10cm \cinspic ./img/VITA57_regions.png
225
\picw=10cm \cinspic ./img/VITA57_regions.png
226
\caption/f Definition of VITA57 regions.
226
\caption/f Definition of VITA57 regions.
227
\endinsert
227
\endinsert
228
 
228
 
229
Three differential logic input/output, one PECL input and one PECL output 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.
229
Three differential logic input/output, one PECL input and one PECL output 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.
230
 
230
 
231
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 trace length matching of differential pairs is mandatory in order to minimize jitter and avoid a dynamic logic hazard conditions on digital signals, that represents the worst scenario. Thus the clocks' signals are routed in the most precise way on all designed boards.
231
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 trace length matching of differential pairs is mandatory in order to minimize jitter and avoid a dynamic logic hazard conditions on digital signals, that represents the worst scenario. Thus the clocks' signals are routed in the most precise way on all designed boards.
232
 
232
 
233
Signal configuration used in our trial design is described in the following tables \ref[minisas-interface], \ref[SPI-system] and \ref[clock-interconnections].
233
Signal configuration used in our trial design is described in the following tables \ref[minisas-interface], \ref[SPI-system] and \ref[clock-interconnections].
234
 
234
 
235
 
235
 
236
\midinsert \clabel[minisas-interface]{miniSAS differential pairs connections}
236
\midinsert \clabel[minisas-interface]{miniSAS differential pairs connections}
237
\ctable {cccc}
237
\ctable {cccc}
238
{
238
{
239
miniSAS	&	SATA pair	&	FMC signal	&	Used as	\cr
239
miniSAS	&	SATA pair	&	FMC signal	&	Used as	\cr
240
P0	&	1	&	LA03	&	 not used 	\cr
240
P0	&	1	&	LA03	&	 not used 	\cr
241
P0	&	2	&	LA04	&	 not used 	\cr
241
P0	&	2	&	LA04	&	 not used 	\cr
242
P1	&	1	&	LA08	&	 not used 	\cr
242
P1	&	1	&	LA08	&	 not used 	\cr
243
P1	&	2	&	LA07	&	 not used 	\cr
243
P1	&	2	&	LA07	&	 not used 	\cr
244
P2	&	1	&	LA16	&	ADC1  CH1 (LTC2190)	\cr
244
P2	&	1	&	LA16	&	ADC1  CH1 (LTC2190)	\cr
245
P2	&	2	&	LA11	&	ADC1  CH2 (LTC2190) 	\cr
245
P2	&	2	&	LA11	&	ADC1  CH2 (LTC2190) 	\cr
246
P3	&	1	&	LA17	&	ADC2 CH1 (LTC2271)	\cr
246
P3	&	1	&	LA17	&	ADC2 CH1 (LTC2271)	\cr
247
P3	&	2	&	LA15	&	ADC2 CH2 (LTC2271)	\cr
247
P3	&	2	&	LA15	&	ADC2 CH2 (LTC2271)	\cr
248
}
248
}
249
\caption/t miniSAS (FMC2DIFF01A J7) signal connections between modules.
249
\caption/t miniSAS (FMC2DIFF01A J7) signal connections between modules.
250
\endinsert
250
\endinsert
251
 
251
 
252
 
252
 
253
\midinsert \clabel[SPI-system]{SPI configuration interface connections}
253
\midinsert \clabel[SPI-system]{SPI configuration interface connections}
254
\ctable {ccc}
254
\ctable {ccc}
255
{
255
{
256
SPI connection J7	&	FMC signal	&	Connected to	\cr
256
SPI connection J7	&	FMC signal	&	Connected to	\cr
257
SAS-AUX1	 &	LA14\_N	&	SPI DOUT	\cr
257
SAS-AUX1	 &	LA14\_N	&	SPI DOUT	\cr
258
SAS-AUX2	 &	LA14\_P	&	SPI CLK	\cr
258
SAS-AUX2	 &	LA14\_P	&	SPI CLK	\cr
259
SAS-AUX3	 &	LA12\_N	&	CE ADC1	\cr
259
SAS-AUX3	 &	LA12\_N	&	CE ADC1	\cr
260
SAS-AUX4	 &	LA12\_P	&	CE ADC2	\cr
260
SAS-AUX4	 &	LA12\_P	&	CE ADC2	\cr
261
SAS-AUX5	 &	LA13\_N	&	soldered to GND	\cr
261
SAS-AUX5	 &	LA13\_N	&	soldered to GND	\cr
262
SAS-AUX6	 &	LA13\_P	&	not used	\cr
262
SAS-AUX6	 &	LA13\_P	&	not used	\cr
263
SAS-AUX7	 &	LA09\_N	&	not used	\cr
263
SAS-AUX7	 &	LA09\_N	&	not used	\cr
264
SAS-AUX8	 &	LA09\_P	&	soldered to GND	\cr
264
SAS-AUX8	 &	LA09\_P	&	soldered to GND	\cr
265
}
265
}
266
\caption/t SPI system interconnections
266
\caption/t SPI system interconnections
267
\endinsert
267
\endinsert
268
 
268
 
269
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.
269
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.
270
 
270
 
271
 
271
 
272
\midinsert \clabel[clock-interconnections]{System clock interconnections}
272
\midinsert \clabel[clock-interconnections]{System clock interconnections}
273
\ctable {lccc}
273
\ctable {lccc}
274
{
274
{
275
Signal	&	FMC signal	&	FMC2DIFF01A	&	ADCdual01A	\cr
275
Signal	&	FMC signal	&	FMC2DIFF01A	&	ADCdual01A	\cr
276
DCO	&	CLK1\_M2C	&	J5-1	&	J13-1	\cr
276
DCO	&	CLK1\_M2C	&	J5-1	&	J13-1	\cr
277
FR	&	LA18\_CC	&	J10-1	&	J12-1	\cr
277
FR	&	LA18\_CC	&	J10-1	&	J12-1	\cr
278
ENC	&	LA01\_CC	&	J2-1(PECL OUT)	&	J3-1	\cr
278
ENC	&	LA01\_CC	&	J2-1(PECL OUT)	&	J3-1	\cr
279
SDGPSDO01A LO	&	CLK0\_M2C	&	J3-1 (PECL IN)	&	N/A	\cr
279
SDGPSDO01A LO	&	CLK0\_M2C	&	J3-1 (PECL IN)	&	N/A	\cr
280
}
280
}
281
\caption/t Clock system interconnections
281
\caption/t Clock system interconnections
282
\endinsert
282
\endinsert
283
 
283
 
284
\secc FPGA function
284
\secc FPGA function
285
 
285
 
286
Several tasks in separate FPGA blocks are performed by FPGA. In the first block the FPGA prepares a sampling clock for ADCdual01A modules by dividing the signal from the main local oscillator. This task represents a separate block in FPGA and runs asynchronously to other logical circuits. Second block is a SPI configuration module, which sends configuration words to ADC modules and it is activated by opening of Xillybus interface file. Third block represents the main module, which resolves ADC - PC communication itself and it communicates via PCIe, collect data from ADC hardware and creates data packet \ref[xillybus-interface]. Last block is activated after the ADC is configurated via SPI.
286
Several tasks in separate FPGA blocks are performed by FPGA. In the first block the FPGA prepares a sampling clock for ADCdual01A modules by dividing the signal from the main local oscillator. This task represents a separate block in FPGA and runs asynchronously to other logical circuits. Second block is a SPI configuration module, which sends configuration words to ADC modules and it is activated by opening of Xillybus interface file. Third block represents the main module, which resolves ADC - PC communication itself and it communicates via PCIe, collect data from ADC hardware and creates data packet \ref[xillybus-interface]. Last block is activated after the ADC is configurated via SPI.
287
 
287
 
288
Communication over PCIe is managed by proprietary IP Core and Xillybus driver, which transfers data from FPGA registers to host PC. Data appear in a system device file named  "/dev/xillybus_data2_r" on the host computer. Binary data which appear in this file after its opening are shown in the table below \ref[xillybus-interface].
288
Communication over PCIe is managed by proprietary IP Core and Xillybus driver, which transfers data from FPGA registers to host PC. Data appear in a system device file named  "/dev/xillybus_data2_r" on the host computer. Binary data which appear in this file after its opening are shown in the table below \ref[xillybus-interface].
289
 
289
 
290
\midinsert
290
\midinsert
291
\def\tabiteml{ }\let\tabitemr=\tabiteml
291
\def\tabiteml{ }\let\tabitemr=\tabiteml
292
\clabel[xillybus-interface]{Grabber binary output format}
292
\clabel[xillybus-interface]{Grabber binary output format}
293
\ctable {lccccccccc}{
293
\ctable {lccccccccc}{
294
\hfil & \multispan9 \hfil 160bit packet \hfil \strut \crl \tskip4pt
294
\hfil & \multispan9 \hfil 160bit packet \hfil \strut \crl \tskip4pt
295
Data name &  FRAME  & \multispan2 \hfil ADC1 CH1 \hfil & \multispan2 \hfil ADC1 CH2 \hfil & \multispan2  \hfil ADC2 CH1 \hfil & \multispan2 \hfil ADC2 CH2 \hfil \strut  \cr
295
Data name &  FRAME  & \multispan2 \hfil ADC1 CH1 \hfil & \multispan2 \hfil ADC1 CH2 \hfil & \multispan2  \hfil ADC2 CH1 \hfil & \multispan2 \hfil ADC2 CH2 \hfil \strut  \cr
296
Data type & uint32 & int16 & int16 & int16 & int16 & int16 & int16 & int16 & int16 \cr
296
Data type & uint32 & int16 & int16 & int16 & int16 & int16 & int16 & int16 & int16 \cr
297
Content & saw signal & $t1$ &  $t_{1+1}$ &  $t1$ &  $t_{1+1}$ &  $t1$ &  $t_{1+1}$ &  $t1$ &  $t_{1+1}$ \cr
297
Content & saw signal & $t1$ &  $t_{1+1}$ &  $t1$ &  $t_{1+1}$ &  $t1$ &  $t_{1+1}$ &  $t1$ &  $t_{1+1}$ \cr
298
}
298
}
299
\caption/t System device "/dev/xillybus_data2_r" data format
299
\caption/t System device "/dev/xillybus_data2_r" data format
300
\endinsert
300
\endinsert
301
 
301
 
302
Data packet block which is carried on PCI Express isa  described in the table \ref[xillybus-interface]. The data packet consist of several 32bit words. The first word contains FRAME number and it is filled with saw signal for now, with incremental step taking place every data packet transmission. The following data words contain samples from ADCs' first and second channel. Samples from every channel are transmitted in pairs of two samples. Number of ADC channels is expandable according to the number of physically connected channels. An CRC word may possibly be added in the future to the end of the transmission packet for data integrity validation.
302
Data packet block which is carried on PCI Express isa  described in the table \ref[xillybus-interface]. The data packet consist of several 32bit words. The first word contains FRAME number and it is filled with saw signal for now, with incremental step taking place every data packet transmission. The following data words contain samples from ADCs' first and second channel. Samples from every channel are transmitted in pairs of two samples. Number of ADC channels is expandable according to the number of physically connected channels. An CRC word may possibly be added in the future to the end of the transmission packet for data integrity validation.
303
 
303
 
304
FRAME word at the beginning of data packet, now filled with incrementing and overflowing saw signal, is used to ensure that no data samples ale lost during the data transfers from FPGA. FRAME signal may be used in the future for pairing the ADC samples' data packet with another data packet. This new additional data packet should carry meta-data information about the sample time jitter, current accuracy of the local oscillator frequency etc.
304
FRAME word at the beginning of data packet, now filled with incrementing and overflowing saw signal, is used to ensure that no data samples ale lost during the data transfers from FPGA. FRAME signal may be used in the future for pairing the ADC samples' data packet with another data packet. This new additional data packet should carry meta-data information about the sample time jitter, current accuracy of the local oscillator frequency etc.
305
 
305
 
306
Detailed description of the currently implemented FPGA functions can be found in a separate paper \cite[fpga-middleware]. HDL source codes for FPGA at a state in which it was used are included on the enclosed CD. More recent development versions are publicly available from MLAB sources repository.
306
Detailed description of the currently implemented FPGA functions can be found in a separate paper \cite[fpga-middleware]. HDL source codes for FPGA at a state in which it was used are included on the enclosed CD. More recent development versions are publicly available from MLAB sources repository.
307
Detailed description of currently implemented FPGA functions can be found in separate paper \cite[fpga-middleware]. HDL \glos{HDL}{Hardware description language} source codes for FPGA at state which was used are included on enclosed CD. Future development versions are publicly available from MLAB sources repository \cite[mlab-sdrx].
307
Detailed description of currently implemented FPGA functions can be found in separate paper \cite[fpga-middleware]. HDL \glos{HDL}{Hardware description language} source codes for FPGA at state which was used are included on enclosed CD. Future development versions are publicly available from MLAB sources repository \cite[mlab-sdrx].
308
 
308
 
309
\secc Data reading and recording
309
\secc Data reading and recording
310
 
310
 
311
In order to read the data stream from the ADC drive, we use Gnuradio software. Gnuradio suite consists of gnuradio-companion package which is a graphical tool for creating signal-flow graphs and generating Python flow-graph source code. This tool has been used to create a basic RAW data grabber to record and interactively view waterfall plots using the data streams output from ADC modules.
311
In order to read the data stream from the ADC drive, we use Gnuradio software. Gnuradio suite consists of gnuradio-companion package which is a graphical tool for creating signal-flow graphs and generating Python flow-graph source code. This tool has been used to create a basic RAW data grabber to record and interactively view waterfall plots using the data streams output from ADC modules.
312
 
312
 
313
\midinsert
313
\midinsert
314
\clabel[grabber-flow-graph]{Gnuradio flow graph for signal grabbing}
314
\clabel[grabber-flow-graph]{Gnuradio flow graph for signal grabbing}
315
\picw=\pdfpagewidth \setbox0=\hbox{\inspic ./img/screenshots/Grabber.grc.png }
315
\picw=\pdfpagewidth \setbox0=\hbox{\inspic ./img/screenshots/Grabber.grc.png }
316
\par\nobreak \vskip\wd0 \vskip-\ht0
316
\par\nobreak \vskip\wd0 \vskip-\ht0
317
\centerline {\kern\ht0 \pdfsave\pdfrotate{90}\rlap{\box0}\pdfrestore}
317
\centerline {\kern\ht0 \pdfsave\pdfrotate{90}\rlap{\box0}\pdfrestore}
318
\caption/f The ADC recorder flow graph created in gnuradio-companion.
318
\caption/f The ADC recorder flow graph created in gnuradio-companion.
319
\endinsert
319
\endinsert
320
 
320
 
321
\midinsert
321
\midinsert
322
\picw=15cm \cinspic ./img/screenshots/Grabber_running.png
322
\picw=15cm \cinspic ./img/screenshots/Grabber_running.png
323
\caption/f User interface window of a running ADC grabber.
323
\caption/f User interface window of a running ADC grabber.
324
\endinsert
324
\endinsert
325
 
325
 
326
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. Signal is grabbed to file with exactly the same format, as described in the table \ref[xillybus-interface].
326
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. Signal is grabbed to file with exactly the same format, as described in the table \ref[xillybus-interface].
327
 
327
 
328
 
328
 
329
\chap Achieved parameters
329
\chap Achieved parameters
330
 
330
 
331
The trial version construction was tested for proper handling of sampling rates in the range of 5 MSPS to 15 MSPS, but it should work above this limit. System works on i7 8 cores computer with Ubuntu 12.04 LTS operating system.  Data recording of input signal is impossible above the sampling rates around 7 MSPS due to bottleneck at HDD speed limits, but it should be resolved by the use of SSD disk drive. However, such design has not been tested in our setup.
331
The trial version construction was tested for proper handling of sampling rates in the range of 5 MSPS to 15 MSPS, but it should work above this limit. System works on i7 8 cores computer with Ubuntu 12.04 LTS operating system.  Data recording of input signal is impossible above the sampling rates around 7 MSPS due to bottleneck at HDD speed limits, but it should be resolved by the use of SSD disk drive. However, such design has not been tested in our setup.
332
 
332
 
333
\sec Measured parameters
333
\sec Measured parameters
334
 
334
 
335
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 calculated by the following formula \ref[ADC1-gain]
335
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 calculated by the following formula \ref[ADC1-gain]
336
 
336
 
337
\label[ADC1-gain]
337
\label[ADC1-gain]
338
$$
338
$$
339
A = {806 \cdot R_1 \over R_1 + R_2} \eqmark
339
A = {806 \cdot R_1 \over R_1 + R_2} \eqmark
340
$$
340
$$
341
 
341
 
342
Where the letters stand for the following:
342
Where the letters stand for the following:
343
\begitems
343
\begitems
344
  * $A$ -  Gain of an input amplifier.
344
  * $A$ -  Gain of an input amplifier.
345
  * $R_1$ - Output impedance of signal source (usually 50 Ohm).
345
  * $R_1$ - Output impedance of signal source (usually 50 Ohm).
346
  * $R_2$ - Value of serial resistors at operational amplifier inputs.
346
  * $R_2$ - Value of serial resistors at operational amplifier inputs.
347
\enditems
347
\enditems
348
 
348
 
349
We have $R_2 = 1000 \Omega$ and $R_1 = 50 \Omega$ which imply that $A = 0.815$. That value of A was further confirmed by the measurement.
349
We have $R_2 = 1000 \Omega$ and $R_1 = 50 \Omega$ which imply that $A = 0.815$. That value of A was further confirmed by the measurement.
350
In our measurement setup we have H1012 Ethernet transformer connected to inputs of ADC. We have used this transformer for signal symetrization from BNC connector at Agilent 33220A signal generator. Circuit diagram of the used transformer circuit is shown in picture \ref[balun-circuit]  and circuit realization in photograph \ref[SMA2SATA-nest].
350
In our measurement setup we have H1012 Ethernet transformer connected to inputs of ADC. We have used this transformer for signal symetrization from BNC connector at Agilent 33220A signal generator. Circuit diagram of the used transformer circuit is shown in picture \ref[balun-circuit]  and circuit realization in photograph \ref[SMA2SATA-nest].
351
 
351
 
352
\midinsert
352
\midinsert
353
\clabel[balun-circuit]{Balun transformer circuit}
353
\clabel[balun-circuit]{Balun transformer circuit}
354
\picw=10cm \cinspic ./img/SMA2SATA.pdf
354
\picw=10cm \cinspic ./img/SMA2SATA.pdf
355
\caption/f Simplified balun transformer circuit diagram.
355
\caption/f Simplified balun transformer circuit diagram.
356
\endinsert
356
\endinsert
357
 
357
 
358
The signal generator Agilent 33220A which we used, does not have optimal parameters for this type of dynamic range measurement. Signal distortion and spurious levels are only -70 dBc according to Agilent datasheet \cite[33220A-generator]. We have managed to measure an ADC saturation voltage of 705.7 mV (generator output) with this setup, mostly due to an impedance mismatch and uncalibrated measurement setup, with 1V ADC range selected by sense pin. This is a relatively large error, but the main result of our measurement, seen as a FFT plot shown in image \ref[ADC1-FFT], confirms $>$80 dB dynamic range at ADC module input.
358
The signal generator Agilent 33220A which we used, does not have optimal parameters for this type of dynamic range measurement. Signal distortion and spurious levels are only -70 dBc according to Agilent datasheet \cite[33220A-generator]. We have managed to measure an ADC saturation voltage of 705.7 mV (generator output) with this setup, mostly due to an impedance mismatch and uncalibrated measurement setup, with 1V ADC range selected by sense pin. This is a relatively large error, but the main result of our measurement, seen as a FFT plot shown in image \ref[ADC1-FFT], confirms $>$80 dB dynamic range at ADC module input.
359
 
359
 
360
\midinsert
360
\midinsert
361
\clabel[ADC1-FFT]{ADC1 sine test FFT}
361
\clabel[ADC1-FFT]{ADC1 sine test FFT}
362
\picw=15cm \cinspic ./img/screenshots/ADC1_CH2_FFT.png
362
\picw=15cm \cinspic ./img/screenshots/ADC1_CH2_FFT.png
363
\caption/f Sine signal sampled by ADC1 module with LTC2190 and LT6600-5 devices.
363
\caption/f Sine signal sampled by ADC1 module with LTC2190 and LT6600-5 devices.
364
\endinsert
364
\endinsert
365
 
365
 
366
 
366
 
367
Similar test was performed at ADC2 module. 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 a 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 within the parameter tolerances of the used setup.
367
Similar test was performed at ADC2 module. 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 a 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 within the parameter tolerances of the used setup.
368
 
368
 
369
\label[ADC2-gain]
369
\label[ADC2-gain]
370
$$
370
$$
371
A = {1580 \cdot R_1 \over R_1 + R_2} \eqmark
371
A = {1580 \cdot R_1 \over R_1 + R_2} \eqmark
372
$$
372
$$
373
 
373
 
374
Where the letters stand for the following:
374
Where the letters stand for the following:
375
\begitems
375
\begitems
376
  * $A$ -  Gain of an input amplifier.
376
  * $A$ -  Gain of an input amplifier.
377
  * $R_1$ - Output impedance of signal source (usually 50 Ohm).
377
  * $R_1$ - Output impedance of signal source (usually 50 Ohm).
378
  * $R_2$ - Value of serial resistors at operational amplifier inputs.
378
  * $R_2$ - Value of serial resistors at operational amplifier inputs.
379
\enditems
379
\enditems
380
 
380
 
381
\midinsert
381
\midinsert
382
\clabel[ADC2-FFT]{ADC2 sine test FFT}
382
\clabel[ADC2-FFT]{ADC2 sine test FFT}
383
\picw=15cm \cinspic ./img/screenshots/ADC2_CH1_FFT.png
383
\picw=15cm \cinspic ./img/screenshots/ADC2_CH1_FFT.png
384
\caption/f Sine signal sampled by ADC2 module with LTC2271 and LT6600-2.5 devices.
384
\caption/f Sine signal sampled by ADC2 module with LTC2271 and LT6600-2.5 devices.
385
\endinsert
385
\endinsert
386
 
386
 
387
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 at least 80 dB.
387
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 at least 80 dB.
388
 
388
 
389
\midinsert
389
\midinsert
390
\clabel[SMA2SATA-nest]{Used balun transformer}
390
\clabel[SMA2SATA-nest]{Used balun transformer}
391
\picw=15cm \cinspic ./img/SMA2SATA_nest1.JPG
391
\picw=15cm \cinspic ./img/SMA2SATA_nest1.JPG
392
\caption/f Balun transformer circuit used for ADC parameters measurement. It is constructed from H1012 transformer salvaged from an old Ethernet card.
392
\caption/f Balun transformer circuit used for ADC parameters measurement. It is constructed from H1012 transformer salvaged from an old Ethernet card.
393
\endinsert
393
\endinsert
394
 
394
 
395
 
395
 
396
 
396
 
397
\sec Example of usage
397
\sec Example of usage
398
 
398
 
399
For additional validation of system characteristics a receiver setup has been constructed.
399
For additional validation of system characteristics a receiver setup has been constructed.
400
 
400
 
401
\secc Basic interferometric station
401
\secc Basic interferometric station
402
 
402
 
403
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 the 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.
403
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 the 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.
404
Antennae were equipped with LNA01A amplifiers. All coaxial cables had 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 consisted of SDGPSDO local oscillator subsystem used to tune the local oscillator frequency.
404
Antennae were equipped with LNA01A amplifiers. All coaxial cables had 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 consisted of SDGPSDO local oscillator subsystem used to tune the local oscillator frequency.
405
 
405
 
406
\midinsert
406
\midinsert
407
\clabel[block-schematic]{Receiver block schematic}
407
\clabel[block-schematic]{Receiver block schematic}
408
\picw=\pdfpagewidth \setbox0=\hbox{\inspic ./img/Basic_interferometer.png }
408
\picw=\pdfpagewidth \setbox0=\hbox{\inspic ./img/Basic_interferometer.png }
409
\par\nobreak \vskip\wd0 \vskip-\ht0
409
\par\nobreak \vskip\wd0 \vskip-\ht0
410
\centerline {\kern\ht0 \pdfsave\pdfrotate{90}\rlap{\box0}\pdfrestore}
410
\centerline {\kern\ht0 \pdfsave\pdfrotate{90}\rlap{\box0}\pdfrestore}
411
\caption/f Complete receiver block schematic of dual antenna interferometric station.
411
\caption/f Complete receiver block schematic of dual antenna interferometric station.
412
\endinsert
412
\endinsert
413
 
413
 
414
% doplnit schema skutecne pouziteho systemu
414
% doplnit schema skutecne pouziteho systemu
415
 
415
 
416
Despite of the schematic diagram proposed at beginning of system description....
416
Despite of the schematic diagram proposed at beginning of system description....
417
We have used two separate oscillators -- one oscillator drives encoded signal to ADCs still through FPGA based divider and the other one drives it to SDRX01B mixer.
417
We have used two separate oscillators -- one oscillator drives encoded signal to ADCs still through FPGA based divider and the other one drives it to SDRX01B mixer.
418
The reason for this modification was an attempt to simplify the frequency tuning during the experiment. A single oscillator may be used only with a proper setting of FPGA divider and this divider may be modified only by recompilation of FPGA code and loading/flashing a new FPGA schema. Due to fact that the FPGA is connected to PCI express and kernel drivers with hardware must be reinitialized, reboot of PC is required every time a FPGA scheme is changed. Instead of this complicated procedure, we set the FPGA divider to a constant division factor of 30 and used another district oscillator for ADCdual01 sampling modules and for SDRX01B receiver.
418
The reason for this modification was an attempt to simplify the frequency tuning during the experiment. A single oscillator may be used only with a proper setting of FPGA divider and this divider may be modified only by recompilation of FPGA code and loading/flashing a new FPGA schema. Due to fact that the FPGA is connected to PCI express and kernel drivers with hardware must be reinitialized, reboot of PC is required every time a FPGA scheme is changed. Instead of this complicated procedure, we set the FPGA divider to a constant division factor of 30 and used another district oscillator for ADCdual01 sampling modules and for SDRX01B receiver.
419
We have used ACOUNT02A MLAB instrument for frequency checking of correct setup on both local oscillators.
419
We have used ACOUNT02A MLAB instrument for frequency checking of correct setup on both local oscillators.
420
 
420
 
421
\midinsert
421
\midinsert
422
\clabel[meteor-reflection]{Meteor reflection}
422
\clabel[meteor-reflection]{Meteor reflection}
423
\picw=10cm \cinspic ./img/screenshots/observed_meteor.png
423
\picw=10cm \cinspic ./img/screenshots/observed_meteor.png
424
\caption/f Meteor reflection received by an evaluation setup.
424
\caption/f Meteor reflection received by an evaluation setup.
425
\endinsert
425
\endinsert
426
 
426
 
427
\midinsert
427
\midinsert
428
\clabel[phase-difference]{Phase difference}
428
\clabel[phase-difference]{Phase difference}
429
\picw=10cm \cinspic ./img/screenshots/phase_difference.png
429
\picw=10cm \cinspic ./img/screenshots/phase_difference.png
430
\caption/f Demonstration of phase difference between antennae.
430
\caption/f Demonstration of phase difference between antennae.
431
\endinsert
431
\endinsert
432
 
432
 
433
For the simplest demonstration of phase difference between antennae, we have analysed part of the signal by complex conjugate multiplication between channels. Results of this analysis can be seen in the following picture \ref[phase-difference]. Points of the selected part of the signal create a clear vector, which illustrates the presence of the phase difference.
433
For the simplest demonstration of phase difference between antennae, we have analysed part of the signal by complex conjugate multiplication between channels. Results of this analysis can be seen in the following picture \ref[phase-difference]. Points of the selected part of the signal create a clear vector, which illustrates the presence of the phase difference.
434
 
434
 
435
 
435
 
436
\secc Simple passive Doppler radar
436
\secc Simple passive Doppler radar
437
 
437
 
438
% doplnit popis
438
% doplnit popis
439
 
439
 
440
 
440
 
441
\secc Simple polarimeter station
441
\secc Simple polarimeter station
442
 
442
 
443
% doplnit popis
443
% doplnit popis
444
 
444
 
445
\chap Proposition of the final system
445
\chap Proposition of the final system
446
 
446
 
447
The construction of the final system, that is supposed to be employed for real radioastronomy observations will be described in this chapter. It is mainly a theoretical analysis of the data handling systems. Realization of the described ideas might be possible as a part of our future development after we fully evaluate and test the current trial design.
447
The construction of the final system, that is supposed to be employed for real radioastronomy observations will be described in this chapter. It is mainly a theoretical analysis of the data handling systems. Realization of the described ideas might be possible as a part of our future development after we fully evaluate and test the current trial design.
448
 
448
 
449
The system requires proper handling of huge amounts of data and either huge and fast storage capacity is needed to store the captured signal data, or enormous computational power is required for online data processing and filtering. Several hardware approaches currently exist and are in use for data processing problem handling. Either powerful multi gigahertz CPUs, GPUs, FPGAs, or specially  constructed ASICs are used for this task.
449
The system requires proper handling of huge amounts of data and either huge and fast storage capacity is needed to store the captured signal data, or enormous computational power is required for online data processing and filtering. Several hardware approaches currently exist and are in use for data processing problem handling. Either powerful multi gigahertz CPUs, GPUs, FPGAs, or specially  constructed ASICs are used for this task.
450
 
450
 
451
\sec Custom design of FPGA board
451
\sec Custom design of FPGA board
452
 
452
 
453
In the beginning of the project, a custom design of FPGA interface board had been considered. This FPGA board should include PCI express interface and should sell at lower price than the trial design. It should be compatible with MLAB internal standards  which are further backward compatible with the existing or improved design of ADC modules. For a connection of FPGA board to another adapter board with PCIe we expect a use of a PCIe host interface.
453
In the beginning of the project, a custom design of FPGA interface board had been considered. This FPGA board should include PCI express interface and should sell at lower price than the trial design. It should be compatible with MLAB internal standards  which are further backward compatible with the existing or improved design of ADC modules. For a connection of FPGA board to another adapter board with PCIe we expect a use of a PCIe host interface.
454
Thunderbolt technology standard was expected to be used in this PC to PCIe module communication which further communicates with MLAB compatible FPGA module. Thunderbolt chips are currently available on the market for reasonable prices \cite[thunderbolt-chips]. However, a problem lies in the accessibility to their specifications, as they are only available for licensed users and Intel has a mass market oriented licensing policy, that makes this technology inaccessible for low quantity production. As a consequence, an external PCI Express cabling and expansion slots should be considered as a better solution, if we need to preserve standard PC as a main computational platform.
454
Thunderbolt technology standard was expected to be used in this PC to PCIe module communication which further communicates with MLAB compatible FPGA module. Thunderbolt chips are currently available on the market for reasonable prices \cite[thunderbolt-chips]. However, a problem lies in the accessibility to their specifications, as they are only available for licensed users and Intel has a mass market oriented licensing policy, that makes this technology inaccessible for low quantity production. As a consequence, an external PCI Express cabling and expansion slots should be considered as a better solution, if we need to preserve standard PC as a main computational platform.
455
 
455
 
456
However, these PCI express external systems and cables are still very expensive. Take Opal Kelly XEM6110 \cite[fpga-pcie] as an example, with its price tag reaching 995 USD at time of writing the thesis. Therefore, a better solution probably needs to be found.
456
However, these PCI express external systems and cables are still very expensive. Take Opal Kelly XEM6110 \cite[fpga-pcie] as an example, with its price tag reaching 995 USD at time of writing the thesis. Therefore, a better solution probably needs to be found.
457
 
457
 
458
An interface problem will by probably resolved by other than Intel ix86 architecture. Many ARM computers have risen on market due to an increased demand of embedded technologies, which require high computation capacity, low power consumption and small size -- especially smartphones. Many of those ARM based systems have interesting parameters of signal processing. These facts make Intel's ix86 architecture unattractive for future projects.
458
An interface problem will by probably resolved by other than Intel ix86 architecture. Many ARM computers have risen on market due to an increased demand of embedded technologies, which require high computation capacity, low power consumption and small size -- especially smartphones. Many of those ARM based systems have interesting parameters of signal processing. These facts make Intel's ix86 architecture unattractive for future projects.
459
 
459
 
460
\sec Parralella board computer
460
\sec Parralella board computer
461
 
461
 
462
<<<<<<< .mine
-
 
463
Parallella is a new product created by Adapteva, Inc. \cite[parallella-board]. It represents a small supercomputer, that has been in development for almost two years with only testing series of boards produced until now (first single-board computers with 16-core Epiphany chip were shipped in December 2013) \cite[parallella-board]. The board has nearly ideal parameters for signal processing (as it provides around 50 GFLOPS of computational power). It is is equipped with Epiphany coprocessor which has 16 High Performance RISC CPU Cores,  Zynq-7020 FPGA with Dual ARM® Cortex™-A9 MPCore™ and operating frequency of 866 MHz, 1GB RAM, 85K Logic Cells, 10/100/1000 Ethernet and OpenCL support \cite[parallella16-board]. In addition to this, the board consumes only 3 Watts of power if both Zynq and Epiphany cores are running simultaneously.
462
Parallella is a new product created by Adapteva, Inc. \cite[parallella-board]. It represents a small supercomputer, that has been in development for almost two years with only testing series of boards produced until now (first single-board computers with 16-core Epiphany chip were shipped in December 2013) \cite[parallella-board]. The board has nearly ideal parameters for signal processing (as it provides around 50 GFLOPS of computational power). It is is equipped with Epiphany coprocessor which has 16 High Performance RISC CPU Cores,  Zynq-7020 FPGA with Dual ARM® Cortex™-A9 MPCore™ and operating frequency of 866 MHz, 1GB RAM, 85K Logic Cells, 10/100/1000 Ethernet and OpenCL support \cite[parallella16-board]. In addition to this, the board consumes only 3 Watts of power if both Zynq and Epiphany cores are running simultaneously.
464
=======
-
 
465
Parallella is a new product created by Adapteva, Inc. \cite[parallella-board]. It represents a small supercomputer, that has been in development for almost two years with only testing series of boards produced until now (first single-board computers with 16-core Epiphany chip were shipped in December 2013) \cite[parallella-board]. The board has nearly ideal parameters for signal processing (as it provides around 50 GFLOPS  of computational power). It is is equipped with Epiphany coprocessor which has 16 High Performance RISC CPU Cores,  Zynq-7020 FPGA with Dual ARM® Cortex™-A9 MPCore™ and operating frequency of 866 MHz, 1GB RAM, 85K Logic Cells, 10/100/1000 Ethernet and OpenCL support \cite[parallella16-board]. In addition to this, the board consumes only 3 Watts of power if both Zynq and Epiphany cores are running simultaniously.
-
 
466
>>>>>>> .r1135
-
 
467
 
463
 
468
The main disadvantage of Parralella board is its unknown lead time and an absence of SATA interface or other interface suitable for data storage connection. Fast data storage interface would be useful and would allow bulk processing of captured data. Following that, the results of data processing may be sent over the Ethernet interface to data storage server.
464
The main disadvantage of Parralella board is its unknown lead time and an absence of SATA interface or other interface suitable for data storage connection. Fast data storage interface would be useful and would allow bulk processing of captured data. Following that, the results of data processing may be sent over the Ethernet interface to data storage server.
469
 
465
 
470
\midinsert
466
\midinsert
471
\clabel[img-parallella-board]{Parallella board overview}
467
\clabel[img-parallella-board]{Parallella board overview}
472
\picw=15cm \cinspic ./img/ParallellaTopView31.png
468
\picw=15cm \cinspic ./img/ParallellaTopView31.png
473
\caption/f Top view on Parallella-16 board \cite[parallella16-board].
469
\caption/f Top view on Parallella-16 board \cite[parallella16-board].
474
\endinsert
470
\endinsert
475
 
471
 
476
If Parallella board will be used as a radioastronomy data interface, there would be a demand for new ADC interface module. The interface module will use four PEC connectors mounted on the bottom of the Parallella board. This daughter module should have MLAB compatible design and should preferably be constructed in the form of separable modules for every Parallella's PEC connector.
472
If Parallella board will be used as a radioastronomy data interface, there would be a demand for new ADC interface module. The interface module will use four PEC connectors mounted on the bottom of the Parallella board. This daughter module should have MLAB compatible design and should preferably be constructed in the form of separable modules for every Parallella's PEC connector.
477
 
473
 
478
\sec GPU based computational system
474
\sec GPU based computational system
479
 
475
 
480
A new GPU development board NVIDIA K1, shown in the following picture \ref[img-NVIDIA-K1], has recently been released. These boards are intended to be used in fields including computer vision, robotics, medicine, security or automotive industry. They have good parameters for signal processing for a relatively low price of 192 USD.  Unfortunately, they are currently only in pre-order release stage (in April 2014).
476
A new GPU development board NVIDIA K1, shown in the following picture \ref[img-NVIDIA-K1], has recently been released. These boards are intended to be used in fields including computer vision, robotics, medicine, security or automotive industry. They have good parameters for signal processing for a relatively low price of 192 USD.  Unfortunately, they are currently only in pre-order release stage (in April 2014).
481
 
477
 
482
\midinsert
478
\midinsert
483
\clabel[img-NVIDIA-K1]{NVIDIA Jetson TK1 Development Kit}
479
\clabel[img-NVIDIA-K1]{NVIDIA Jetson TK1 Development Kit}
484
\picw=15cm \cinspic ./img/Jetson_TK1_575px.jpg
480
\picw=15cm \cinspic ./img/Jetson_TK1_575px.jpg
485
\caption/f The NVIDIA Jetson TK1 Development Kit \cite[nvidia-k1].
481
\caption/f The NVIDIA Jetson TK1 Development Kit \cite[nvidia-k1].
486
\endinsert
482
\endinsert
487
 
483
 
488
NVIDIA board differs from other boards in its category by a presence of PCI Experess connector. If we decide to use this development board in our radio astronomy digitalisation system, the PCI express  should be used for FPGA connection. A new FPGA board with PCI Express direct PCB connector
484
NVIDIA board differs from other boards in its category by a presence of PCI Experess connector. If we decide to use this development board in our radio astronomy digitalisation system, the PCI express  should be used for FPGA connection. A new FPGA board with PCI Express direct PCB connector
489
 
485
 
490
% doplnit popis pripojeni FPGA desky s HDMI Kabelem.
486
% doplnit popis pripojeni FPGA desky s HDMI Kabelem.
491
 
487
 
492
\sec Other ARM based computation systems
488
\sec Other ARM based computation systems
493
 
489
 
494
Other embedded ARM based computers, for example ODROID-XU, lack a suitable high speed interface. Their highest speed interface is USB 3.0 which has currently unsettled development support and needs commercial software tools for evaluation and testing.
490
Other embedded ARM based computers, for example ODROID-XU, lack a suitable high speed interface. Their highest speed interface is USB 3.0 which has currently unsettled development support and needs commercial software tools for evaluation and testing.
495
 
491
 
496
 
492
 
497
From the summary analysis mentioned above, the Parrallella board seems to be a best candidate for computational board in radioastronomy data acquisition system, as it is optimised for high data flow processing. On one hand, Parrallella does not have much memory to cache the processing data but on the other hand it has wide bandwidth data channels instead. Other boards might provide much more computational power -- 300 GFLOPS in case of NVIDIA K1, but they are optimised for heavy computational tasks on limited amount of data which represents a typical problem in computer graphics. However, in our application we do not need such extreme computation power at data acquisition system level.
493
From the summary analysis mentioned above, the Parrallella board seems to be a best candidate for computational board in radioastronomy data acquisition system, as it is optimised for high data flow processing. On one hand, Parrallella does not have much memory to cache the processing data but on the other hand it has wide bandwidth data channels instead. Other boards might provide much more computational power -- 300 GFLOPS in case of NVIDIA K1, but they are optimised for heavy computational tasks on limited amount of data which represents a typical problem in computer graphics. However, in our application we do not need such extreme computation power at data acquisition system level.
498
As a result we should presumably wait until Parallella becomes widely available. Following that, a new ADCdual interface board should be designed and prepared to be used in new scalable radio astronomy data acquisition system. In the meantime, before suitable computing hardware become accessible, the required applications and algorithms should be optimised using the proposed trial version with FPGA development board on standard PC host computer (having a PCI Express interface to development board).
494
As a result we should presumably wait until Parallella becomes widely available. Following that, a new ADCdual interface board should be designed and prepared to be used in new scalable radio astronomy data acquisition system. In the meantime, before suitable computing hardware become accessible, the required applications and algorithms should be optimised using the proposed trial version with FPGA development board on standard PC host computer (having a PCI Express interface to development board).
499
 
495