Subversion Repositories svnkaklik

Rev

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

Rev 1125 Rev 1126
1
\chap Trial design
1
\chap Trial design
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
\sec Required parameters
5
\sec Required parameters
6
 
6
 
7
We require following technical parameter, to supersede existing digitalization units solutions. 
7
We require following technical parameter, to supersede existing digitalization units solutions. 
8
Primarily, we need wide dynamical range and high IP3. 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. 
8
Primarily, we need wide dynamical range and high IP3. 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. 
9
 
9
 
10
Summary of other additional required parameters follows 
10
Summary of other additional required parameters follows 
11
 
11
 
12
\begitems
12
\begitems
13
  * Dynamical range better than 80 dB see section \ref[dynamic-range-theory] for explanation
13
  * Dynamical range better than 80 dB see section \ref[dynamic-range-theory] for explanation
14
  * Phase stability between channels 
14
  * Phase stability between channels 
15
  * Low noise (all types)
15
  * Low noise (all types)
16
  * Sampling jitter better than 100 metres
16
  * Sampling jitter better than 100 metres
17
  * Support for any number of receivers in range 1 to 8
17
  * Support for any number of receivers in range 1 to 8
18
\enditems
18
\enditems
19
 
19
 
20
Now we analyzes several parameters more precisely. 
20
Now we analyzes several parameters more precisely. 
21
 
21
 
22
\sec Sampling frequency
22
\sec Sampling frequency
23
 
23
 
24
Sampling frequency is not limited by the technical constrains in the trial design. 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 leads to need of high end ADC chips which does not support such low sampling frequencies at all. Their minimum sampling frequency is 5$\ $MSPS.
24
Sampling frequency is not limited by the technical constrains in the trial design. 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 leads to need of high end ADC chips which does not support such low sampling frequencies at all. Their minimum sampling frequency is 5$\ $MSPS.
25
 
25
 
26
We calculate 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 real writing speed o classical HDD and it is almost double of real bandwidth of USB 2.0 interface. As result of this facts we must use faster interface. Faster interface is especially needed in case where we need faster sampling rates than ADC minimal 5$\ $MSPS sample rate.
26
We calculate 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 real writing speed o classical HDD and it is almost double of real bandwidth of USB 2.0 interface. As result of this facts we must use faster interface. Faster interface is especially needed in case where we need faster sampling rates than ADC minimal 5$\ $MSPS sample rate.
27
Most perspective interfaces for use in our type of application is USB 3.0 or PCI Express interface. Although USB 3.0 is new technology without availability of good development tools. We used PCI Express interface as simplest and most reliable solution. 
27
Most perspective interfaces for use in our type of application is USB 3.0 or PCI Express interface. Although USB 3.0 is new technology without availability of good development tools. We used PCI Express interface as simplest and most reliable solution. 
28
 
28
 
29
\sec System scalability
29
\sec System scalability
30
 
30
 
31
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 separation from central logic which support optimization of number analogue channels.  
31
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 separation from central logic which support optimization of number analogue channels.  
32
 
32
 
33
Clock and data signals will be then handled distinctively in our modular scalable design. Selected ADC chip are guaranteed to have defined clock skew between sampling and data output clock. 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 final application, DCO and FR signal may be collected from other modules and routed through an voting logic which will correct possible signal defects.  
33
Clock and data signals will be then handled distinctively in our modular scalable design. Selected ADC chip are guaranteed to have defined clock skew between sampling and data output clock. 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 final application, DCO and FR signal may be collected from other modules and routed through an voting logic which will correct possible signal defects.  
34
 
34
 
35
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.     
35
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.     
36
 
36
 
37
\secc Differential signaling 
37
\secc Differential signaling 
38
 
38
 
39
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, 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 cables. This technology has two advantages over PCB 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.              
39
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, 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 cables. This technology has two advantages over PCB 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.              
40
 
40
 
41
\secc Phase matching
41
\secc Phase matching
42
 
42
 
43
For multiple antenna radioastronomy projects, system phase stability is a mandatory condition. It allows precise high resolution imaging of objects, increases signal to noise ratios in several observation methods and allows use of advanced algorithms for signal processing.
43
For multiple antenna radioastronomy projects, system phase stability is a mandatory condition. It allows precise high resolution imaging of objects, increases signal to noise ratios in several observation methods and allows use of advanced algorithms for signal processing.
44
 
44
 
45
High phase stability in our scalable design is achieved through centralized frequency generation  and distribution with multi-output LVPECL hubs (CLKHUB02A), that have equiphased outputs for multiple devices. LVPECL logic is used on every system critical clock signal distribution hub. LVPECL logic has advantage over LVDS in signal integrity robustness. LVPECL uses higher logical levels and higher signalling currents. Power consumption of LVPECL logic are near constant over operating frequency range due to use of bipolar transistors this minimizes voltage glitches which are typical for CMOS logic. One drawbacks of that parameters is high power consumption of LVPECL logic which easily reach tens of milliamperes per device.  
45
High phase stability in our scalable design is achieved through centralized frequency generation  and distribution with multi-output LVPECL hubs (CLKHUB02A), that have equiphased outputs for multiple devices. LVPECL logic is used on every system critical clock signal distribution hub. LVPECL logic has advantage over LVDS in signal integrity robustness. LVPECL uses higher logical levels and higher signalling currents. Power consumption of LVPECL logic are near constant over operating frequency range due to use of bipolar transistors this minimizes voltage glitches which are typical for CMOS logic. One drawbacks of that parameters is high power consumption of LVPECL logic which easily reach tens of milliamperes per device.  
46
 
46
 
47
This design ensures that all system devices have access to the defined phase and known frequency.     
47
This design ensures that all system devices have access to the defined phase and known frequency.     
48
 
48
 
49
\sec System description
49
\sec System description
50
 
50
 
51
In this section testing system will be described.
51
In this section testing system based on Xilinx ML605 development board \ref[ML605-development-board] will be described. This board was used in previous finished project and was unused until now, but FPGA parrameters are more than enough we need in fast data aquisition system. 
52
 
52
 
53
\secc Frequency synthesis       
53
\secc Frequency synthesis       
54
 
54
 
55
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 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 diploma thesis. Thus is described in separate document}
55
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 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 diploma thesis. Thus is described in separate document}
56
We have used new methods of software frequency monitoring and compensation in order to meet modern requirements on radioastronomy equipment which needs precise frequency and phase stability over a wide baseline scale for effective radioastronomy imaging. 
56
We have used new methods of software frequency monitoring and compensation in order to meet modern requirements on radioastronomy equipment which needs precise frequency and phase stability over a wide baseline scales for effective radioastronomy imaging. 
57
 
57
 
58
GPSDO device consists the Si570 chip with LVPECL output. Phase jitter of GPSDO is determined mainly by Si570 phase noise. Parameters of used Si570 from source \cite[si570-chip] are summarized in table \ref[LO-noise].
58
GPSDO device consists the Si570 chip with LVPECL output. Phase jitter of GPSDO is determined mainly by Si570 phase noise. Parameters of used Si570 from source \cite[si570-chip] are summarized in table \ref[LO-noise].
59
 
59
 
-
 
60
GPSDO design included in data acquisition system has special feature -- generates time marks for precise time-stamping of received signal. Timestamps are created by disabling of local oscillator outputs connected to SDRX01B receivers for 100 us.  As result rectangle click in ADC input signal is created which appears as horizontal line in spectrogram.   
-
 
61
Timestamps should be seen in image \ref[meteor-reflection] (above and below meteor reflection).
-
 
62
 
-
 
63
Time-marking should be improved in future by digitalization of GPS signal received by antenna on observational station. GPS signal can be then directly sampled by dedicated receiver and one separate ADC module. Datafile then consists samples from channels of radio-astronomy receivers along with GPS signal containing precise time information. 
60
 
64
 
-
 
65
 
61
\midinsert \clabel[LO-noise]{Available ADC types}
66
\midinsert \clabel[LO-noise]{Phase noise of used local oscillator}
62
\ctable{lcc}{
67
\ctable{lcc}{
63
	&	 \multispan2 \hfil Phase Noise [dBc/Hz] \hfil 		\cr
68
	&	 \multispan2 \hfil Phase Noise [dBc/Hz] \hfil 		\cr
64
Offset Frequency	&	$F_{out}$ 156.25 MHz	& $F_{out}$ 622.08 MHz \cr
69
Offset Frequency	&	$F_{out}$ 156.25 MHz	& $F_{out}$ 622.08 MHz \cr
65
100 [Hz]	&	–105	&	–97 \cr
70
100 [Hz]	&	–105	&	–97 \cr
66
1 [kHz]	&	–122	&	–107 \cr
71
1 [kHz]	&	–122	&	–107 \cr
67
10 [kHz]	&	–128	&	–116 \cr
72
10 [kHz]	&	–128	&	–116 \cr
68
100 [kHz]	&	–135	&	–121 \cr
73
100 [kHz]	&	–135	&	–121 \cr
69
1 [MHz]	&	–144	&	–134 \cr
74
1 [MHz]	&	–144	&	–134 \cr
70
10 [MHz]	&	–147	&	–146 \cr
75
10 [MHz]	&	–147	&	–146 \cr
71
100 [MHz]	&	n/a	&	–148 \cr
76
100 [MHz]	&	n/a	&	–148 \cr
72
}
77
}
73
\caption/t Phase noise of used Silicon Laboratories Si570 chip. Offset frequency is measured from carrier frequency. Values are tabled for two district carrier frequencies.  
78
\caption/t Phase noise of used Silicon Laboratories Si570 chip. Offset frequency is measured from carrier frequency. Values are tabled for two district carrier frequencies.  
74
\endinsert
79
\endinsert
75
 
80
 
76
Every ADC module will be directly connected to CLKHUB02A module which takes sampling clock signal delivered by FPGA from main local oscillator.  This signal should use high quality differential signaling cable -- we should use SATA cable for this purpose. FPGA may slightly affect clock signal quality by additive noise, but has negligible effect in application where developed system will be used.
81
Every ADC module will be directly connected to CLKHUB02A module which takes sampling clock signal delivered by FPGA from main local oscillator.  This signal should use high quality differential signaling cable -- we should use SATA cable for this purpose. FPGA may slightly affect clock signal quality by additive noise, but has negligible effect in application where developed system will be used.
77
 
82
 
78
GPSDO design included in data acquisition system has special feature -- generates time marks for precise time-stamping of received signal. Timestamps are created by disabling of local oscillator for 100 us as result rectangle click in input signal is created which appears as horizontal line in spectrogram.   
-
 
79
Timestamps should be seen in image \ref[meteor-reflection] (above and below meteor reflection).
-
 
80
 
-
 
81
Time-marking should be improved in future by digitalization  of GPS signal received by antenna on observational station. GPS signal can be then directly sampled by dedicated receiver an separate ADC module. Datafile then consists samples from channels of radio-astronomy receivers along with GPS signal containing precise time information. 
-
 
82
 
83
 
83
\secc Signal cable connectors 
84
\secc Signal cable connectors 
84
 
85
 
-
 
86
\label[signal-cables]
-
 
87
 
85
Several widely used and commercially easily accessible differential connectors were considered to be use in our design. 
88
Several widely used and commercially easily accessible differential connectors were considered to be use in our design. 
86
 
89
 
87
\begitems
90
\begitems
88
* HDMI % [[http://en.wikipedia.org/wiki/Hdmi|HDMI]]</del>
91
* HDMI % [[http://en.wikipedia.org/wiki/Hdmi|HDMI]]</del>
89
* SATA  		%{http://en.wikipedia.org/wiki/Serial_attached_SCSI#Connectors|SAS]]/[[http://en.wikipedia.org/wiki/Serial_ATA|SATA]]
92
* SATA  		%{http://en.wikipedia.org/wiki/Serial_attached_SCSI#Connectors|SAS]]/[[http://en.wikipedia.org/wiki/Serial_ATA|SATA]]
90
* DisplayPort 		%[[http://en.wikipedia.org/wiki/Display_port|DisplayPort]]</del>
93
* DisplayPort 		%[[http://en.wikipedia.org/wiki/Display_port|DisplayPort]]</del>
91
* SAS/miniSAS
94
* SAS/miniSAS
92
\enditems
95
\enditems
93
 
96
 
94
At the end, MiniSAS connector was chosen as the best option to be used in connecting together multiple ADC modules. It is compatible with existing SATA cabling systems and aggregates multiple SATA cables to a single connector. It can be seen on the following picture \ref[img-miniSAS-cable]. 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. 
97
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 has SPI configuration lines which can be seen on the following picture \ref[img-miniSAS-cable] as standard pinheader connector.  
95
The main drawback of miniSAS PCB connectors lies in the fact, that they are manufactured in SMT versions only. The outer metal housing of connector is designed to be mounted using a standard through-hole mounting scheme, a design that unfortunately decreases the durability of the connector. 
98
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.
96
 
-
 
97
 
99
 
98
\midinsert
100
\midinsert
99
\clabel[img-miniSAS-cable]{Used miniSAS cable}
101
\clabel[img-miniSAS-cable]{Used miniSAS cable}
100
\picw=5cm \cinspic ./img/miniSAS_SATA_cable.jpg
102
\picw=5cm \cinspic ./img/miniSAS_SATA_cable.jpg
101
\caption/f An example of miniSAS cable similar to used.
103
\caption/f An example of miniSAS cable similar to used.
102
\endinsert
104
\endinsert
103
 
105
 
104
\secc Signal integrity requirements
106
\secc Signal integrity requirements
-
 
107
 
105
\label[diff-signaling]
108
\label[diff-signaling]
106
 
109
 
107
We use ADC modules that have DATA clock frequency eight times higher than sampling frequency in single line output mode, implying a 40 MHz output bit rate. This imply $ 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 system with comparable lengths, worst data bit skew described by data sheets of used components is $0.3 \cdot t_s$, which is 1.485 m. Therefore length matching is not critical in our current design operated on lowest sampling speed. Length matching becomes critical in future version with higher sampling rates, then cable length must be matched. However SATA cabling technology is prepared for that case and matched SATA cables are standard merchandise. 
110
We use ADC devices that have DATA clock frequency eight times higher than sampling frequency in single line output mode, implying a 40 MHz output bit rate. This imply $ 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 system with comparable lengths, worst data bit skew described by data sheets of used components is $0.3 \cdot t_s$, which is 1.485 m. Therefore length matching is not critical in our current design operated on lowest sampling speed. Length matching becomes critical in future version with higher sampling rates, then cable length must be matched. However SATA cabling technology is prepared for that case and matched SATA cables are standard merchandise. 
108
 
111
 
109
\secc ADC modules design
112
\secc ADC modules design
110
 
113
 
111
\midinsert
114
\midinsert
-
 
115
\clabel[adcdual-preview]{Preview of designed ADCdual PCB}
112
\picw=10cm \cinspic ./img/ADCdual_Top.png
116
\picw=10cm \cinspic ./img/ADCdual_Top.png
113
\picw=10cm \cinspic ./img/ADCdual_Bottom.png
117
\picw=10cm \cinspic ./img/ADCdual_Bottom.png
114
\caption/f FPGA ML605 development board.
118
\caption/f Modelled previews of designed and realised PCB of ADCdual01A modules. Differential pairs routing are clearly visible. 
115
\endinsert
119
\endinsert
116
 
120
 
117
<<<<<<< .mine
-
 
118
 
-
 
119
 
-
 
120
 
-
 
121
=======
-
 
122
 
-
 
123
>>>>>>> .r1124
-
 
124
\secc ADC selection
121
\secc ADC selection
125
 
122
 
126
There exist several ADC signaling formats currently used in communication with FPGA. 
123
There exist several standard ADC signaling formats currently used in communication with FPGA. 
127
 
124
 
128
\begitems
125
\begitems
129
  * DDR LVDS
126
  * DDR LVDS
130
  * JEDEC 204B
127
  * JEDEC 204B
131
  * JESD204A
128
  * JESD204A
132
  * Paralel LVDS
129
  * Paralel LVDS
133
  * Serdes
130
  * Serdes
134
  * serial LVDS
131
  * serial LVDS
135
\enditems
132
\enditems
136
 
133
 
137
Because we need to use the smallest number of cables, 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]. 
-
 
138
 
-
 
139
An ultrasound AFE chip seems 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). Because this IO has many ADC channels the scaling is possible only by a factor of 4 receivers (making 8 analogue channels).
134
Because we need to use the smallest number of cables, 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 much many currently existing ADC devices have this kind of digital interface. An ultrasound AFE device chips seems 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 scaling is possible only by a factor of 4 receivers (making 8 analogue single ended channels).
140
 
135
 
141
If we require a 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 requirements.  We have summarized the ADCs in the following table \ref[ADC-type] 
136
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 requirements.  We have summarized those ADCs in the following table \ref[ADC-types] 
142
 
137
 
-
 
138
\midinsert 
-
 
139
\typosize[9/11] \def\tabiteml{ }\let\tabitemr=\tabiteml
143
\midinsert \clabel[ADC-types]{Available ADC types}
140
\clabel[ADC-types]{Available ADC types}
144
\ctable{lccccccc}{
141
\ctable{lccccccc}{
145
\hfil ADC Type & LTC2271 & LTC2190 & LTC2191 & LTC2192 & LTC2193 & LTC2194 & LTC2195 \cr
142
\hfil ADC Type & LTC2271 & LTC2190 & LTC2191 & LTC2192 & LTC2193 & LTC2194 & LTC2195 \cr
146
SNR [dB] & 84.1 & 77 & 77 & 77 & 76.8 & 76.8 & 76.8 \cr
143
SNR [dB] & 84.1 & 77 & 77 & 77 & 76.8 & 76.8 & 76.8  \cr
147
SFDR [dB] & 99 & 90 & 90 & 90 & 90 & 90 & 90 \cr
144
SFDR [dB] & 99 & 90 & 90 & 90 & 90 & 90 & 90  \cr
148
S/H Bandwidth [MHz] & 200 & \multispan6 550 \cr
145
S/H Bandwidth [MHz] & 200 & \multispan6 550 \strut \cr
149
Sampling rate [MSPS] & 20 & 25 & 40 & 65 & 80 &  105 & 125 \cr
146
Sampling rate [MSPS] & 20 & 25 & 40 & 65 & 80 &  105 & 125  \cr
150
Configuration & \multispan7 SPI \cr
147
Configuration & \multispan7 SPI \strut \cr
151
Package & \multispan7 52-Lead (7mm $\times$ 8mm) QFN \cr
148
Package & \multispan7 \hfil 52-Lead (7mm $\times$ 8mm) QFN \hfil \strut \cr
152
}
149
}
153
\caption/t The summary of available ADC types and theirs characteristics. 
150
\caption/t The summary of available ADC types and theirs characteristics. 
154
\endinsert
151
\endinsert
155
 
152
 
156
All parts in this category are compatible with one board layout. 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..). 
153
All parts in this category are compatible with one board layout. 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 selected two slowest types for our evaluation design. Then PCB for this part have been designed. 
-
 
154
We decided that ADCdual01A modules have a standard MLAB construction layout with four mounting holes in corners aligned in defined raster of 400 mils. 
157
 
155
 
-
 
156
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 has 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 a proper bus bit-width according to the sampling rate (higher bus bit-width downgrades signalling speed and vice versa.)
158
 
157
 
159
 
-
 
160
The ADC modules have a standard MLAB construction scheme with four mounting holes in corners aligned in defined raster. 
-
 
161
 
-
 
162
Data serial data outputs of ADC modules should be connected directly to FPGAs for the basic primary signal processing. The ADC chip used in the modules has 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 a proper bus bit-width according to the sampling rate (higher bus bit-width downgrades signalling speed and vice versa.)
158
In order to connect the above mentioned signalling layout, miniSAS to multiple SATA cable should be used as described in section \ref[signal-cables].
163
 
-
 
164
In order to connect the above mentioned signalling layout, miniSAS to multiple SATA cable should be used.  
-
 
165
 
159
 
166
A KiCAD design suite had been chosen for PCB layout. However, the version is, despite having integrated CERN Push \& Shove routing capability, slightly unstable as it sometimes crushes due to an exception during routing. On the basis of these stability issues, the design had to be saved quite often. On the other hand, compared to commercially available solutions, such as MentorGraphics PADS or Cadence Orcad,  the Open-source KiCAD provides an acceptable option and it easily surpasses a widely used Eagle software.
160
A KiCAD design suite had been chosen for PCB layout. However, the version is, despite having integrated CERN Push \& Shove routing capability, slightly unstable as it sometimes crushes due to an exception during routing. On the basis of these stability issues, the design had to be saved quite often. On the other hand, compared to commercially available solutions, such as MentorGraphics PADS or Cadence Orcad,  the Open-source KiCAD provides an acceptable option and it easily surpasses a widely used Eagle software.
167
 
161
 
168
As a part of work on the thesis, new PCB footprints for FMC, SATA a and miniSAS connectors have been designed and were committed to KiCAD github library repository. They are now publicly available on the official KiCAD repository at GitHub.  
162
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.  
169
 
-
 
170
 
163
 
171
ADCdual01A module has several digital data output formats. Difference between these modes lays in the number of differential pairs used
164
ADCdual01A module has several digital data output formats. Difference between these modes lays in the number of differential pairs used.
172
 
165
 
173
\begitems
166
\begitems
174
    * 1-lane mode
167
    * 1-lane mode
175
    * 2-lane mode
168
    * 2-lane mode
176
    * 4-lane mode
169
    * 4-lane mode
177
\enditems
170
\enditems
178
 
171
 
179
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]. 
172
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]. 
180
 
173
 
181
\midinsert
174
\midinsert
182
\clabel[1-line-out]{Single line ADC output signals}
175
\clabel[1-line-out]{Single line ADC output signals}
183
\picw=15cm \cinspic ./img/ADC_single_line_output.png
176
\picw=15cm \cinspic ./img/ADC_single_line_output.png
184
\caption/f Digital signalling schema for 1-line ADC digital output mode.
177
\caption/f Digital signalling schema for 1-line ADC digital output mode.
185
\endinsert
178
\endinsert
186
 
179
 
187
ADCdual01A parameters can be set either by jumper setup (referred to as a parallel programming  in the device's data sheet) or by SPI interface. SPI interface has been selected for our system, because of the parallel programming lack of options (test pattern output setup for example). 
180
ADCdual01A parameters can be set either by jumper setup (referred to as a parallel programming  in the device's data sheet) or by SPI interface. SPI interface has been selected for our system, because of the parallel programming lack of options (test pattern output setup for example). 
188
 
181
 
189
Complete schematic diagram of ADCdual01A module board is included in the appendix. 
182
Complete schematic diagram of ADCdual01A module board is included in the appendix. 
190
 
183
 
191
 
184
 
192
\secc ADC modules interface
185
\secc ADC modules interface
193
 
186
 
194
\midinsert
187
\midinsert
195
\picw=10cm \cinspic ./img/FMC2DIFF_top.png
188
\picw=10cm \cinspic ./img/FMC2DIFF_top.png
196
\picw=10cm \cinspic ./img/FMC2DIFF_Bottom.png
189
\picw=10cm \cinspic ./img/FMC2DIFF_Bottom.png
197
\caption/f FPGA ML605 development board.
190
\caption/f Modelled prewievs of designed and realised PCB of FMC2DIFF01A module.
198
\endinsert
191
\endinsert
199
 
192
 
200
Both of the ADCdual01A modules were connected to FPGA ML605 board trough FMC2DIFF01A adapter board. The design of this adapter module expects the presence of FMC LPC connector 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].
193
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].
201
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. 
194
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. 
202
 
195
 
203
The primary purpose of the PCB is to enable the connection of ADC modules located outside the PC case. (In PC box analog circuits cannot be realized without the use of massive RFI mitigation techniques). 
196
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). 
204
Differential signaling 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.  
197
Differential signaling 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.  
205
 
198
 
206
LVPECL level signal connectors on FMC2DIFF01A board are dedicated for clock signals. We selected  the SY55855V and SY55857L dual translators. Dual configuration in useful due to fact that SATA cable contains two differential pairs. 
199
LVPECL level signal connectors on FMC2DIFF01A board are dedicated for clock signals. We selected  the SY55855V and SY55857L dual translators. Dual configuration in useful due to fact that SATA cable contains two differential pairs. 
207
 
200
 
208
The SY55855V is a fully differential, CML/PECL/LVPECL-to-LVDS translator. It achieves LVDS signaling up to 1.5Gbps, depending on the distance and the characteristics of the media and noise coupling sources.
201
The SY55855V is a fully differential, CML/PECL/LVPECL-to-LVDS translator. It achieves LVDS signaling up to 1.5Gbps, depending on the distance and the characteristics of the media and noise coupling sources.
209
LVDS is intended to drive 50 $\Omega$ impedance transmission
202
LVDS is intended to drive 50 $\Omega$ impedance transmission
210
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].
203
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
 
204
 
212
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].
205
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
 
206
 
214
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 due to absence of proper power voltage (1,3 V) for direct termination by 50 $\Omega$ resistors. Termination on FPGA side is realized directly by settings proper digital logic on input pins.
207
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 due to absence of proper power voltage (1,3 V) for direct termination by 50 $\Omega$ resistors. Termination on FPGA side is realized directly by settings proper digital logic type on input pins.
215
 
208
 
216
\midinsert
209
\midinsert
-
 
210
\clabel[ML605-development-board]{ML605 development board}
217
\picw=10cm \cinspic ./img/ML605-board.jpg
211
\picw=10cm \cinspic ./img/ML605-board.jpg
218
\caption/f FPGA ML605 development board.
212
\caption/f FPGA ML605 development board.
219
\endinsert
213
\endinsert
220
 
214
 
221
\midinsert
215
\midinsert
222
\clabel[VITA57-regions]{VITA57 board geometry}
216
\clabel[VITA57-regions]{VITA57 board geometry}
223
\picw=10cm \cinspic ./img/VITA57_regions.png
217
\picw=10cm \cinspic ./img/VITA57_regions.png
224
\caption/f Definition of VITA57 regions.
218
\caption/f Definition of VITA57 regions.
225
\endinsert
219
\endinsert
226
 
220
 
-
 
221
% doplnit presny pocet konektoru
227
 
222
 
228
Several SATA connectors and two miniSAS connectors are populated on this board.  This set of connectors allows a connection of any number of ADC modules within the range of 1 to 8. ADC data outputs should be connected to the miniSAS connectors, while other supporting signals should be routed directly to SATA connectors on adapter. 
223
Several SATA connectors and two miniSAS connectors are populated on this board.  This set of connectors allows a connection of any number of ADC modules within the range of 1 to 8. ADC data outputs should be connected to the miniSAS connectors, while other supporting signals should be routed directly to SATA connectors on adapter. 
229
 
224
 
230
Lengths of differential pairs routed on PCB of the module are not matched between the pairs. Length variation of differential pairs is not critical in our design according to facts discussed in paragraph \ref[diff-signaling]. Nevertheless, signals within differential pairs themselves are matched for length. Internal signal tracing of the length matchting of differential pairs is mandatory in order to avoid a dynamic logic hazard conditions on digital signals. Thus clocks' signals are routed in the most precise way on all designed boards.
225
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 in worst case. Thus clocks signals are routed in the most precise way on all designed boards.
231
 
-
 
232
 
226
 
233
Signal configuration used in our trial design is described in the following tables \ref[minisas-interface], \ref[SPI-system] and \ref[clock-interconnections].
227
Signal configuration used in our trial design is described in the following tables \ref[minisas-interface], \ref[SPI-system] and \ref[clock-interconnections].
234
 
228
 
235
 
229
 
236
\midinsert \clabel[minisas-interface]{miniSAS differential pairs connections}
230
\midinsert \clabel[minisas-interface]{miniSAS differential pairs connections}
237
\ctable {cccc}
231
\ctable {cccc}
238
{
232
{
239
miniSAS	&	SATA pair	&	FMC signal	&	Used as	\cr
233
miniSAS	&	SATA pair	&	FMC signal	&	Used as	\cr
240
P0	&	1	&	LA03	&	 not used 	\cr
234
P0	&	1	&	LA03	&	 not used 	\cr
241
P0	&	2	&	LA04	&	 not used 	\cr
235
P0	&	2	&	LA04	&	 not used 	\cr
242
P1	&	1	&	LA08	&	 not used 	\cr
236
P1	&	1	&	LA08	&	 not used 	\cr
243
P1	&	2	&	LA07	&	 not used 	\cr
237
P1	&	2	&	LA07	&	 not used 	\cr
244
P2	&	1	&	LA16	&	ADC1  CH1 (LTC2190)	\cr
238
P2	&	1	&	LA16	&	ADC1  CH1 (LTC2190)	\cr
245
P2	&	2	&	LA11	&	ADC1  CH2 (LTC2190) 	\cr
239
P2	&	2	&	LA11	&	ADC1  CH2 (LTC2190) 	\cr
246
P3	&	1	&	LA17	&	ADC2 CH1 (LTC2271)	\cr
240
P3	&	1	&	LA17	&	ADC2 CH1 (LTC2271)	\cr
247
P3	&	2	&	LA15	&	ADC2 CH2 (LTC2271)	\cr
241
P3	&	2	&	LA15	&	ADC2 CH2 (LTC2271)	\cr
248
}
242
}
249
\caption/t miniSAS (FMC2DIFF01A J7) signal connections between modules. 
243
\caption/t miniSAS (FMC2DIFF01A J7) signal connections between modules. 
250
\endinsert
244
\endinsert
251
 
245
 
252
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. 
-
 
253
 
246
 
254
\midinsert \clabel[SPI-system]{SPI configuration interface connections}
247
\midinsert \clabel[SPI-system]{SPI configuration interface connections}
255
\ctable {ccc}
248
\ctable {ccc}
256
{
249
{
257
SPI connection J7	&	FMC signal	&	Connected to	\cr
250
SPI connection J7	&	FMC signal	&	Connected to	\cr
258
SAS-AUX1	 &	LA14\_N	&	SPI DOUT	\cr
251
SAS-AUX1	 &	LA14\_N	&	SPI DOUT	\cr
259
SAS-AUX2	 &	LA14\_P	&	SPI CLK	\cr
252
SAS-AUX2	 &	LA14\_P	&	SPI CLK	\cr
260
SAS-AUX3	 &	LA12\_N	&	CE ADC1	\cr
253
SAS-AUX3	 &	LA12\_N	&	CE ADC1	\cr
261
SAS-AUX4	 &	LA12\_P	&	CE ADC2	\cr
254
SAS-AUX4	 &	LA12\_P	&	CE ADC2	\cr
262
SAS-AUX5	 &	LA13\_N	&	soldered to GND	\cr
255
SAS-AUX5	 &	LA13\_N	&	soldered to GND	\cr
263
SAS-AUX6	 &	LA13\_P	&	not used	\cr
256
SAS-AUX6	 &	LA13\_P	&	not used	\cr
264
SAS-AUX7	 &	LA09\_N	&	not used	\cr
257
SAS-AUX7	 &	LA09\_N	&	not used	\cr
265
SAS-AUX8	 &	LA09\_P	&	soldered to GND	\cr
258
SAS-AUX8	 &	LA09\_P	&	soldered to GND	\cr
266
}
259
}
267
\caption/t SPI system interconnections 
260
\caption/t SPI system interconnections 
268
\endinsert
261
\endinsert
269
 
262
 
-
 
263
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. 
-
 
264
 
270
 
265
 
271
\midinsert \clabel[clock-interconnections]{System clock interconnections}
266
\midinsert \clabel[clock-interconnections]{System clock interconnections}
272
\ctable {lccc}
267
\ctable {lccc}
273
{
268
{
274
Signal	&	FMC signal	&	FMC2DIFF01A	&	ADCdual01A	\cr
269
Signal	&	FMC signal	&	FMC2DIFF01A	&	ADCdual01A	\cr
275
DCO	&	CLK1\_M2C	&	J5-1	&	J13-1	\cr
270
DCO	&	CLK1\_M2C	&	J5-1	&	J13-1	\cr
276
FR	&	LA18\_CC	&	J10-1	&	J12-1	\cr
271
FR	&	LA18\_CC	&	J10-1	&	J12-1	\cr
277
ENC	&	LA01\_CC	&	J2-1(PECL OUT)	&	J3-1	\cr
272
ENC	&	LA01\_CC	&	J2-1(PECL OUT)	&	J3-1	\cr
278
SDGPSDO01A LO	&	CLK0\_M2C	&	J3-1 (PECL IN)	&	N/A	\cr
273
SDGPSDO01A LO	&	CLK0\_M2C	&	J3-1 (PECL IN)	&	N/A	\cr
279
}
274
}
280
\caption/t Clock system interconnections 
275
\caption/t Clock system interconnections 
281
\endinsert
276
\endinsert
282
 
277
 
283
 
-
 
284
 
-
 
285
\secc FPGA function 
278
\secc FPGA function 
286
 
279
 
287
<<<<<<< .mine
-
 
288
Several tasks in separate FPGA blocks are performed by FPGA. In first FPGA prepares sampling clock for ADCdual01A modules by division of main local oscillator. This task is separate block in FPGA and runs asynchronously to other logic. Second block is SPI configuration module, which sends configuration words to ADC modules it is activated by opening of Xillybus interface file. Third block is main module, which resolve ADC - PC communication itself it communicates via PCIe, collect data from ADC hardware and creates data packet \ref[xillybus-interface]. Last block is activated after ADC configuration. 
280
Several tasks in separate FPGA blocks are performed by FPGA. In first block FPGA prepares sampling clock for ADCdual01A modules by division of main local oscillator. This task is separate block in FPGA and runs asynchronously to other logical circuits. Second block is SPI configuration module, which sends configuration words to ADC modules it is activated by opening of Xillybus interface file. Third block represents the main module, which resolves ADC - PC communication itself it communicates via PCIe, collect data from ADC hardware and creates data packet \ref[xillybus-interface]. Last block is activated after ADC configuration via SPI.
289
=======
-
 
290
Several tasks in our design are performed by FPGA. Firstly, FPGA prepares a sampling clock for ADCdual01A modules this task is separate block in FPGA and runs asynchronously compared to other logical circuits. The second block is a SPI configuration module, which sends the content of configuration registers to the ADC modules after opening of Xillybus interface file. The third block represents the main module which resolves ADC - PC communication itself. The last block is activated after ADC configuration. 
-
 
291
>>>>>>> .r1124
-
 
292
 
281
 
293
Communication over PCIe is managed by proprietary IP Core and Xillybus driver, which transfers data from FPGA registers to host PC. Data appear in system device file named  "/dev/xillybus_data2_r" on the host computer. Binary data which appear in this file after its opening are described in the table below \ref[xillybus-interface].
282
Communication over PCIe is managed by proprietary IP Core and Xillybus driver, which transfers data from FPGA registers to host PC. Data appear in system device file named  "/dev/xillybus_data2_r" on the host computer. Binary data which appear in this file after its opening are described in the table below \ref[xillybus-interface].
294
 
283
 
-
 
284
\midinsert 
-
 
285
\typosize[9/11] \def\tabiteml{ }\let\tabitemr=\tabiteml
295
\midinsert \clabel[xillybus-interface]{Grabber binary output format}
286
\clabel[xillybus-interface]{Grabber binary output format}
296
\ctable {clllllllll}{
287
\ctable {lccccccccc}{
297
\hfil & \multispan9 \hfil 160bit packet \hfil \crl \tskip4pt
288
\hfil & \multispan9 \hfil 160bit packet \hfil \crl \tskip4pt
298
Data name &  FRAME  & \multispan2 \hfil ADC1 CH1 \hfil & \multispan2 \hfil ADC1 CH2 \hfil & \multispan2  \hfil ADC2 CH1 \hfil & \multispan2 \hfil ADC2 CH2 \hfil  \cr
289
Data name &  FRAME  & \multispan2 \hfil ADC1 CH1 \hfil & \multispan2 \hfil ADC1 CH2 \hfil & \multispan2  \hfil ADC2 CH1 \hfil & \multispan2 \hfil ADC2 CH2 \hfil  \cr
299
Data type & uint32 & int16 & int16 & int16 & int16 & int16 & int16 & int16 & int16 \cr
290
Data type & uint32 & int16 & int16 & int16 & int16 & int16 & int16 & int16 & int16 \cr
300
Content & saw signal & $t1$ &  $t_{1+1}$ &  $t1$ &  $t_{1+1}$ &  $t1$ &  $t_{1+1}$ &  $t1$ &  $t_{1+1}$ \cr
291
Content & saw signal & $t1$ &  $t_{1+1}$ &  $t1$ &  $t_{1+1}$ &  $t1$ &  $t_{1+1}$ &  $t1$ &  $t_{1+1}$ \cr
301
}
292
}
302
\caption/t System device "/dev/xillybus_data2_r" data format
293
\caption/t System device "/dev/xillybus_data2_r" data format
303
\endinsert
294
\endinsert
304
 
295
 
305
Data packet block which is carried on PCI Express is described by table \ref[xillybus-interface]. The data packet consist several 32bit words. First word contain FRAME number and it is filled by saw signal for now, which increments with every data packet transmission. Following data words contains samples from ADCs for first and second channel. Samples from every channel is transmitted in pairs of two samples. Number of ADC channels is expandable according to number of physically connected channels. An CRC word may be added in future at end of transmission packet for data integrity validation. 
296
Data packet block which is carried on PCI Express is described by table \ref[xillybus-interface]. The data packet consist several 32bit words. First word contain FRAME number and it is filled by saw signal for now, with increment step of every data packet transmission. Following data words contains samples from ADCs for first and second channel. Samples from every channel is transmitted in pairs of two samples. Number of ADC channels is expandable according to number of physically connected channels. An CRC word may be added in future at end of transmission packet for data integrity validation. 
306
 
297
 
307
FRAME word at beginning of data packet filled with incrementing and overflowing saw signal is used for ensure that no data samples ale lost during data transfers from FPGA. FRAME signal may be used in future for pairing the ADC samples data packet with another data packet in future. This new additional data packet should carry meta-data information about sample time jitter, current accuracy of local oscillator frequency etc. 
298
FRAME word at beginning of data packet now filled with incrementing and overflowing saw signal is used for ensure that no data samples ale lost during data transfers from FPGA. FRAME signal may be used in future for pairing the ADC samples data packet with another data packet in future. This new additional data packet should carry meta-data information about sample time jitter, current accuracy of local oscillator frequency etc. 
308
 
299
 
309
Detailed description of currently implemented FPGA functions can be found in separate paper \cite[fpga-middleware]. HDL source codes for FPGA at state which was used are included on enclosed CD. Future development versions are publicly available from MLAB sources repository. 
300
Detailed description of currently implemented FPGA functions can be found in separate paper \cite[fpga-middleware]. HDL source codes for FPGA at state which was used are included on enclosed CD. Future development versions are publicly available from MLAB sources repository. 
310
 
301
 
-
 
302
% doplnit odkaz na mlab repozitar
-
 
303
 
311
\secc Data reading and recording 
304
\secc Data reading and recording 
312
 
305
 
313
In order to read the data stream from the ADC drive, we use Gnuradio software. Gnuradio suite consists of gnuradio-companion which is a graphical tool for creating signal-flow graphs and generating flow-graph source code. This tool was used to create a basic RAW data grabber to record and interactively view the data stream output from ADC modules. 
306
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 was used to create a basic RAW data grabber to record and interactively view waterfall plots the data streams output from ADC modules. 
314
 
307
 
315
\midinsert
308
\midinsert
316
\picw=15cm \cinspic ./img/screenshots/Grabber.grc.png
309
\picw=15cm \cinspic ./img/screenshots/Grabber.grc.png
317
\caption/f An ADC recorder flow graph created in gnuradio-companion.
310
\caption/f An ADC recorder flow graph created in gnuradio-companion.
318
\endinsert
311
\endinsert
319
 
312
 
320
\midinsert
313
\midinsert
321
\picw=15cm \cinspic ./img/screenshots/Grabber_running.png
314
\picw=15cm \cinspic ./img/screenshots/Grabber_running.png
322
\caption/f User interface window of a running ADC grabber.
315
\caption/f User interface window of a running ADC grabber.
323
\endinsert
316
\endinsert
324
 
317
 
325
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. 
318
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 it is described in table \ref[xillybus-interface].
326
 
319
 
327
 
320
 
328
\sec Achieved parameters
321
\sec Achieved parameters
329
 
322
 
330
\secc ADC module parameters
323
\secc ADC module parameters
331
 
324
 
332
Two prototypes of ADC modules were assembled and tested. The first prototype, labeled ADC1, has LTC2190 ADC chip populated with LT6600-5 front-end operational amplifier. It also has a 1kOhm resistors populated on inputs which give it an ability of an internal attenuation of the input signal. The value of this attenuation $A$ is described by the following formula \ref[ADC1-gain]
325
Two prototypes of ADC modules were assembled and tested. The first prototype, labeled ADC1, has LTC2190 ADC chip populated with LT6600-5 front-end operational amplifier. It also has a 1kOhm resistors populated on inputs which give it an ability of an internal attenuation of the input signal. The value of this attenuation $A$ is described by the following formula \ref[ADC1-gain]
333
 
326
 
334
 
327
 
335
\label[ADC1-gain]
328
\label[ADC1-gain]
336
$$
329
$$
337
A = {806 \cdot R_1 \over R_1 + R_2}
330
A = {806 \cdot R_1 \over R_1 + R_2} \eqmark
338
$$
331
$$
339
 
332
 
340
Where the letters stand for: 
333
Where the letters stand for: 
341
\begitems
334
\begitems
342
  * $A$ -  Gain of an input amplifier.
335
  * $A$ -  Gain of an input amplifier.
343
  * $R_1$ - Output impedance of signal source (usually 50 Ohm).
336
  * $R_1$ - Output impedance of signal source (usually 50 Ohm).
344
  * $R_2$ - Value of serial resistors at operational amplifier inputs.
337
  * $R_2$ - Value of serial resistors at operational amplifier inputs.
345
\enditems
338
\enditems
346
 
339
 
347
We have $R_2 = 1000 \Omega$ and $R_1 = 50 \Omega$ which imply that $A = 0.815$. That value of A is further confirmed by the measurement. 
340
We have $R_2 = 1000 \Omega$ and $R_1 = 50 \Omega$ which imply that $A = 0.815$. That value of A is further confirmed by the measurement. 
348
In our measurement setup we have H1012 Ethernet transformer connected to inputs of ADC. The transformer has a 10\% tolerance in impedance and amplification. We measured ADC saturation voltage of 705.7 mV (generator output) in this setup due to impedance mismatch and uncalibrated transformer gain. 
341
In our measurement setup we have H1012 Ethernet transformer connected to inputs of ADC. The transformer has a 10\% tolerance in impedance and amplification. We measured ADC saturation voltage of 705.7 mV (generator output) in this setup due to impedance mismatch and uncalibrated transformer gain. 
349
 
342
 
350
 
343
 
351
\midinsert
344
\midinsert
352
\clabel[ADC1-FFT]{ADC1 sine test FFT}
345
\clabel[ADC1-FFT]{ADC1 sine test FFT}
353
\picw=15cm \cinspic ./img/screenshots/ADC1_CH2_FFT.png
346
\picw=15cm \cinspic ./img/screenshots/ADC1_CH2_FFT.png
354
\caption/f Sine signal sampled by ADC1 module with LTC2190 and LT6600-5 devices.
347
\caption/f Sine signal sampled by ADC1 module with LTC2190 and LT6600-5 devices.
355
\endinsert
348
\endinsert
356
 
349
 
357
 
350
 
358
For ADC2 we have to use formula with a different constant \ref[ADC1-gain]. The ADC2 module has LT6600-2.5 amplifiers populated on it with gain equal to $A = 2.457$ and uses the same $R_2$ resistors. We measured saturation voltage of 380 mV (generator output) at channel 1 on this ADC. It is well in parameter tolerances  of used setup.   
351
For ADC2 we have to use formula with a different constant \ref[ADC1-gain]. The ADC2 module has LT6600-2.5 amplifiers populated on it with gain equal to $A = 2.457$ and uses the same $R_2$ resistors. We measured saturation voltage of 380 mV (generator output) at channel 1 on this ADC. It is well in parameter tolerances  of used setup.   
359
 
352
 
360
\label[ADC2-gain]
353
\label[ADC2-gain]
361
$$
354
$$
362
A = {1580 \cdot R_1 \over R_1 + R_2}
355
A = {1580 \cdot R_1 \over R_1 + R_2} \eqmark
363
$$
356
$$
364
 
357
 
365
Where the letters stand for:
358
Where the letters stand for:
366
\begitems
359
\begitems
367
  * $A$ -  Gain of an input amplifier.
360
  * $A$ -  Gain of an input amplifier.
368
  * $R_1$ - Output impedance of signal source (usually 50 Ohm).
361
  * $R_1$ - Output impedance of signal source (usually 50 Ohm).
369
  * $R_2$ - Value of serial resistors at operational amplifier inputs.
362
  * $R_2$ - Value of serial resistors at operational amplifier inputs.
370
\enditems
363
\enditems
371
 
364
 
372
\midinsert
365
\midinsert
373
\clabel[ADC2-FFT]{ADC2 sine test FFT}
366
\clabel[ADC2-FFT]{ADC2 sine test FFT}
374
\picw=15cm \cinspic ./img/screenshots/ADC2_CH1_FFT.png
367
\picw=15cm \cinspic ./img/screenshots/ADC2_CH1_FFT.png
375
\caption/f Sine signal sampled by ADC2 module with LTC2271 and LT6600-2.5 devices.
368
\caption/f Sine signal sampled by ADC2 module with LTC2271 and LT6600-2.5 devices.
376
\endinsert
369
\endinsert
377
 
370
 
378
Computed FFT spectra for measured signal are shown in the images \ref[ADC2-FFT] and \ref[ADC1-FFT].  Both images confirm that ADCdual01A modules have input dynamical range of 80 dB at least. 
371
Computed FFT spectra for measured signal are shown in the images \ref[ADC2-FFT] and \ref[ADC1-FFT].  Both images confirm that ADCdual01A modules have input dynamical range of 80 dB at least. 
379
 
372
 
380
\chap Example of usage
373
\chap Example of usage
381
 
374
 
382
For additional validation of system characteristics a receiver setup has been constructed. 
375
For additional validation of system characteristics a receiver setup has been constructed. 
383
    
376
    
384
\sec Basic interferometric station
377
\sec Basic interferometric station
385
 
378
 
386
Interferometry station was chosen to serve as the most basic experimental setup. We connected the new data acquisition system to two SDRX01B receivers. Block schematics of the setup used is shown in image \ref[block-schematic]. Two ground-plane antennae were used and mounted outside the balcony at CTU building at location 50$^\circ$ 4\' 36.102\" N,  14$^\circ$ 25\' 4.170\" E. 
379
Interferometry station was chosen to serve as the most basic experimental setup. We connected the new data acquisition system to two SDRX01B receivers. Block schematics of the setup used is shown in image \ref[block-schematic]. Two ground-plane antennae were used and mounted outside the balcony at CTU building at location 50$^\circ$ 4' 36.102'' N,  14$^\circ$ 25' 4.170'' E. 
387
Antennae were equipped  by LNA01A amplifiers. All coaxial cables have the same length of 5 meters. Antennae were isolated by common mode ferrite bead mounted on cable to minimise the signal coupling between antennas. Evaluation system consists of SDGPSDO local oscillator subsystem used to tune the local oscillator frequency. 
380
Antennae were equipped  by LNA01A amplifiers. All coaxial cables have the same length of 5 meters. Antennae were isolated by common mode ferrite bead mounted on cable to minimise the signal coupling between antennas. Evaluation system consists of SDGPSDO local oscillator subsystem used to tune the local oscillator frequency. 
388
 
381
 
389
\midinsert
382
\midinsert
390
\clabel[block-schematic]{Receiver block schematic}
383
\clabel[block-schematic]{Receiver block schematic}
391
\picw=10cm \cinspic ./img/Coherent_UHF_SDR_receiver.png
384
\picw=10cm \cinspic ./img/Coherent_UHF_SDR_receiver.png
392
\caption/f Complete receiver block schematic of dual antenna interferometric station.
385
\caption/f Complete receiver block schematic of dual antenna interferometric station.
393
\endinsert
386
\endinsert
394
 
387
 
395
% doplnit schema skutecne pouziteho systemu
388
% doplnit schema skutecne pouziteho systemu
396
 
389
 
397
Despite of schematic diagram proposed on beginning of system description.... 
390
Despite of schematic diagram proposed on beginning of system description.... 
398
We used two separate oscillators -- one oscillator drives encode signal to ADCs still through FPGA based divider and other one drives SDRX01B mixer. 
391
We used two separate oscillators -- one oscillator drives encode signal to ADCs still through FPGA based divider and other one drives SDRX01B mixer. 
399
Reason for this modification is simplification of frequency tuning during experiment. It is because single oscillator may be used only with proper setting of FPGA divider, this divider may be modified only by recompilation of FPGA code and loading/flashing new FPGA schema. Due to fact that FPGA was connected to PCI express and kernel drivers and hardware must be reinitialized, reboot of PC is required.  Instead of this procedure, we set the FPGA divider to constant division of factor 30 and used another district oscillator for ADCdual01 sampling modules and for SDRX01B receiver. 
392
Reason for this modification is simplification of frequency tuning during experiment. It is because single oscillator may be used only with proper setting of FPGA divider, this divider may be modified only by recompilation of FPGA code and loading/flashing new FPGA schema. Due to fact that FPGA was connected to PCI express and kernel drivers and hardware must be reinitialized, reboot of PC is required.  Instead of this procedure, we set the FPGA divider to constant division of factor 30 and used another district oscillator for ADCdual01 sampling modules and for SDRX01B receiver. 
400
 
-
 
-
 
393
We use ACOUNT02A MLAB instrument for frequency checking of correct setup on both local oscillators. 
401
 
394
 
402
\midinsert
395
\midinsert
403
\clabel[meteor-reflection]{Meteor reflection}
396
\clabel[meteor-reflection]{Meteor reflection}
404
\picw=10cm \cinspic ./img/screenshots/observed_meteor.png
397
\picw=10cm \cinspic ./img/screenshots/observed_meteor.png
405
\caption/f Meteor reflection received by evaluation setup.
398
\caption/f Meteor reflection received by evaluation setup.
406
\endinsert
399
\endinsert
407
 
400
 
408
\midinsert
401
\midinsert
409
\clabel[phase-difference]{Phase difference}
402
\clabel[phase-difference]{Phase difference}
410
\picw=10cm \cinspic ./img/screenshots/phase_difference.png
403
\picw=10cm \cinspic ./img/screenshots/phase_difference.png
411
\caption/f Demonstration of phase difference between antennas.
404
\caption/f Demonstration of phase difference between antennas.
412
\endinsert
405
\endinsert
413
 
406
 
414
For simplest demonstration of phase difference between antennas, we analyse part of signal by complex conjugate multiplication between channels. Result of this analysis can be seen on picture \ref[phase-difference]. Points of selected part of signal creates clear vector, which illustrates the presence of phase difference. 
407
For simplest demonstration of phase difference between antennas, we analyse part of signal by complex conjugate multiplication between channels. Result of this analysis can be seen on picture \ref[phase-difference]. Points of selected part of signal creates clear vector, which illustrates the presence of phase difference. 
415
 
408
 
416
We use ACOUNT02A device for frequency checking on both local oscillators. 
-
 
417
 
-
 
418
 
409
 
419
%\sec Simple passive Doppler radar
410
%\sec Simple passive Doppler radar
420
 
411
 
421
%\sec Simple polarimeter station
412
%\sec Simple polarimeter station
422
 
413
 
423
\chap Proposed final system
414
\chap Proposed final system
424
 
415
 
425
Construction of a final system which is supposed to be employed for real radioastronomy observations will be described. This chapter is mainly a theoretical analysis of data handling systems. Realization of these ideas might be possible as a part of our future development after we fully evaluate and test the current trial design. 
416
Construction of a final system which is supposed to be employed for real radioastronomy observations will be described. This chapter is mainly a theoretical analysis of data handling systems. Realization of these ideas might be possible as a part of our future development after we fully evaluate and test the current trial design. 
426
 
417
 
427
The system requires proper handling of huge amounts of data and either huge and fast storage capacity is needed for store captured signal data, or enormous computational power is required for online data processing and filtering. Several hardware approach 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.
418
The system requires proper handling of huge amounts of data and either huge and fast storage capacity is needed for store captured signal data, or enormous computational power is required for online data processing and filtering. Several hardware approach 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.
428
 
419
 
429
\sec Custom design of FPGA board
420
\sec Custom design of FPGA board
430
 
421
 
431
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 trial design. It should be compatible with MLAB which is 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. 
422
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 trial design. It should be compatible with MLAB internal standards  which is 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. 
432
Thunderbolt technology standard was expected to be used in this PC to PCIe module which further communicate 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 specification is 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 preserve standard PC as main computational platform.
423
Thunderbolt technology standard was expected to be used in this PC to PCIe module which further communicate 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 specification is 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 preserve standard PC as main computational platform.
433
 
424
 
434
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 of thesis.
425
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 of thesis.
435
Therefore, a better solution probably needs to be found.
426
Therefore, a better solution probably needs to be found.
436
 
427
 
437
An interfacing problem will by  probably resolved by other than Intel ix86 architecture. Many ARM computers have risen on market due to increased demand of embedded technologies, which requires high computation capacity, low power consumption and small size -- especially smart phones. Many of those ARM based systems has interesting parameters for signal processing. This facts makes Intel's ix86 architecture unattractive for future project. 
428
An interfacing problem will by  probably resolved by other than Intel ix86 architecture. Many ARM computers have risen on market due to increased demand of embedded technologies, which requires high computation capacity, low power consumption and small size -- especially smart phones. Many of those ARM based systems has interesting parameters for signal processing. This facts makes Intel's ix86 architecture unattractive for future project. 
438
 
429
 
439
\sec Parralella board computer
430
\sec Parralella board computer
440
 
431
 
441
Parallella is new product from Adapteva, Inc. \cite[parallella-board], this small supercomputer have been in development almost two years and only testing series of boards have been produced until now (first single-board computers with 16-core Epiphany chip were shipped December 2013) \cite[parallella-board]. This board have near ideal parameters for signal processing (provides around 50 GFLOPS of computational power). The board is equipped by Epiphany coprocessor which has 16 High Performance RISC CPU Cores,  Zynq-7020 FPGA with Dual ARM® Cortex™-A9 MPCore™ and 866 MHz operating frequency, 1GB RAM,  85K Logic Cells, 10/100/1000 Ethernet and OpenCL support \cite[parallella16-board]. Completely  this board provides  In addition of that this board consume only 3 Watts of power if both Zynq and Epiphany cores are running.     
432
Parallella is new product from Adapteva, Inc. \cite[parallella-board], this small supercomputer have been in development almost two years and only testing series of boards have been produced until now (first single-board computers with 16-core Epiphany chip were shipped December 2013) \cite[parallella-board]. This board have near ideal parameters for signal processing (provides around 50 GFLOPS of computational power). The board is equipped by Epiphany coprocessor which has 16 High Performance RISC CPU Cores,  Zynq-7020 FPGA with Dual ARM® Cortex™-A9 MPCore™ and 866 MHz operating frequency, 1GB RAM,  85K Logic Cells, 10/100/1000 Ethernet and OpenCL support \cite[parallella16-board]. In addition of that this board consume only 3 Watts of power if both Zynq and Epiphany cores are running.     
442
 
433
 
443
Main disadvantage of Parralella board is is unknown lead time and absence of SATA interface or other interface for data storage connection. Fast data storage interface would be useful and allows bulk processing of captured data. Then a result from data processing will be sent over the Ethernet interface to data storage server.
434
Main disadvantage of Parralella board is is unknown lead time and absence of SATA interface or other interface for data storage connection. Fast data storage interface would be useful and allows bulk processing of captured data. Then a result from data processing will be sent over the Ethernet interface to data storage server. 
444
 
435
 
445
\midinsert
436
\midinsert
446
\clabel[img-parallella-board]{Parallella board overview}
437
\clabel[img-parallella-board]{Parallella board overview}
447
\picw=15cm \cinspic ./img/ParallellaTopView31.png
438
\picw=15cm \cinspic ./img/ParallellaTopView31.png
448
\caption/f Top view on Parallella-16 board \cite[parallella16-board].
439
\caption/f Top view on Parallella-16 board \cite[parallella16-board].
449
\endinsert
440
\endinsert
450
 
441
 
451
If Parallella board will be used as radioastronomy data interface a new ADC interface module should be designed. Interfacing module will use four PEC connectors mounted on bottom of Parallella board. This doughter module should have MLAB compatible design and preferably constructed as separable modules for every Parallella's PEC connectors. 
442
If Parallella board will be used as radioastronomy data interface a new ADC interface module should be designed. Interfacing module will use four PEC connectors mounted on bottom of Parallella board. This doughter module should have MLAB compatible design and preferably constructed as separable modules for every Parallella's PEC connectors. 
452
 
443
 
453
\sec GPU based computational system 
444
\sec GPU based computational system 
454
 
445
 
455
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 ideal 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). 
446
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). 
456
 
447
 
457
\midinsert
448
\midinsert
458
\clabel[img-NVIDIA-K1]{NVIDIA Jetson TK1 Development Kit}
449
\clabel[img-NVIDIA-K1]{NVIDIA Jetson TK1 Development Kit}
459
\picw=15cm \cinspic ./img/Jetson_TK1_575px.jpg
450
\picw=15cm \cinspic ./img/Jetson_TK1_575px.jpg
460
\caption/f The NVIDIA Jetson TK1 Development Kit \url{https://developer.nvidia.com/jetson-tk1}.
451
\caption/f The NVIDIA Jetson TK1 Development Kit \url{https://developer.nvidia.com/jetson-tk1}.
461
\endinsert
452
\endinsert
462
 
453