EXPLANATION OF PUPPI MIXER GROUP DELAY MEASUREMENT INTRODUCTION: The PUPPI mixer can be switched in just ahead of the PUPPI back end, for the purpose of making the PUPPI back end's useful input frequency range be the band 1.1 - 1.9 GHz for compatibility with the 1 - 2 GHz IF from the existing IF/LO system. This also requires using PUPPI in its 2nd Nyquist zone. Physically what the mixer does, then, is to translate the input band of 1.1 - 1.9 Ghz down to an output frequency range of 0.8 - 1.6 GHz. However, the bandpass filters in this unit are set to be about 20 dB down at the nominal band edges to assure that aliased noise from the filters' soft transitions does not excessively corruput the effective signal passband. In doing this work the mixer uses two conversion stages, first up and then back down. The reason for this arrangement was to assure that the effects of RF -> IF leakage characteristic of a single-stage mixer will not appear in the final output. This could otherwise be a serious problem because the ouput frequency band greatly overlaps the input band. Both stages use high-side LOs; thus there is no frequency inversion as a result of using this mixer. THEORY OF OPERATION (see the diagram 'PUPPI_MIX_group_del_meas_block.FC7' or its PDF version): This system differs from the usual method of using a standard Vector Network Analyzer with an external mixer and filter(s) because I was seeking a way to avoid the hassles of getting more precision filters, characterizing them, and then trying to incorporate those filter characteristics into the overall test result (necessary because those filters would add appreciable group delay and non-flatness of their own in very significant amounts). This scheme reduces the external filter requirement to a non-critical BPF or LPF to pass a very narrowband 300 MHz IF but block LO (and harmonics) and sum-frequency signals from overloading the post-mixer amplifier stages. The filter used is the Mini-Circuits SLP-450, an inexpensive 450-MHz lowpass filter available from stock. Because of the very narrowbandedness of the 300 MHz IF signal, group delay flatness is trivial and mostly doesn't appear in the final result in any case. Static phase delay of this filter is of exactly zero consequence. However, there is a price to be paid: > The system as described is inherently uncalibrated for amplitude in that the directional coupler and mixer's non-flatness will first-order affect the amplitude of the 300 MHz IF output. But since we are mainly interested in the group delay and can easily measure the PUPPI mixer's ampiitude response in other ways, I felt that this "defect" could safely be overlooked (swept under the rug, as it were). In operation, the output of a swept oscillator covering the PUPPI mixer's input frequency range is split into two parts by a directional coupler. The higher- level straight-through output of the coupler serves as the LO for a "test mixer". The lower-level (coupled) signal is further reduced in amplitude to a quite comfortable input level for the PUPPI mixer (albeit moderatly higher than the normal signal level). The output of the PUPPI mixer then goes to the RF port of the test mixer. Since the RF & LO are always tracking, the output of the test mixer is a fixed 300 MHz signal, except for some small and quite slow phase variations arising from group delay (and non-flatness thereof) in the PUPPI mixer unit itself. This IF signal is gained up to a suitable level and applied to the CH1 vertical input of a DSO having sufficient bandwidth to capture the 300-MHz signal. If the PUPPI mixer were entirely free of group delay, the 300 MHz IF would be exactly constant in frequency and phase as each sweep progresses. If the PUPPI mixer were afflicted with a fixed group delay (independent of the frequency), then the swept frequencies presented to the LO and RF inputs of the mixer will be slightly out of time step because of the added delay in only one path, leading to a constant frequency "error" in the test mixer's IF output. This is exactly equivalent to a phase ramp referred to a 300 MHz reference. The slope will be the frequency slew rate of the applied swept signal times delay amount. I should mention at this point that if the sample rate of the DSO used is not exact, the apparent IF frequency will be slightly in error, which masquerades as a static error in the PUPPI mixer's group delay. Unfortunately our DSO does not possess an input for an external reference, so we must deal with the error in some other way if we want to measure absolute group delay as opposed to merely group delay non-flatness. As this is an important part of the overall measurement, this must indeed be dealt with. I address this problem by taking simultaneous samples of an exact 300-MHz signal from a separate but locked signal generator, via the DSO's CH3 vertical input. This can be used to directly measure the error in the DSO's sampling rate as of the same time as the important signal data is taken. Also, I take samples, via CH2 of the DSO, of the frequency-modulating wave- form from the sweeping generator to facilitate accurately locating the start and end of a single full sweep in the CH1 signal after the fact. But I digress; now let's get back to the mainstream discussion: If the PUPPI mixer filters have group delay non-flatness, there will be some associated phase variations in the PUPPI mixer's output phase versus frequency (or equivalently time, since we know the sweep parameters from the sweep generator's settings). These phase variations will also be conferred upon the 300-MHz IF signal being recorded by DSO CH1, so that the phase history of that IF signal can be used to calculate the group delay variations across the band. As described, the data processing can be done by a three-time application of an existing signal analysis program written by Dana: 'isf_md13.exe', followed by a simple manual scaling with the help of a scientific calculator. The first run is merely to examine the CH2 waveform and pick off accurate array indices for the start and end of the RF frequency sweep. The second application is to measure the apparent IF frequency compared to the theoretical 300 MHz. The numbers from the first two runs should be written down on paper for reference during the 3rd run in which the real, meaningful processing finally occurs. During the 3rd run of the program, using the data file from CH1, the array indices obtained from the 1st run will be used to restrict the time scope of the analysis. For the recommended sweep setup of 100 sweeps per second, this will be about 8 msec. The remaining 2 msec or so is used for sweep generator retrace and is of no significance to this measurement. Then it is necessary to examine the spectrum plot and choose frequency limits on both sides of the peak at about 300 MHz: wide enough to encompass virtually all of the signal energy, but not much wider, so as to exclude excess noise. Also at this step one must pick a central location of the signal peak and enter that. The program will provide guidance in how to make these selections. The next step will show only the amplitude envelope, then the next step will show (mainly) the phase versus time. In this plot there will be a frequency shown in the lowerleft part of the plot. It should be near 300 MHz, but will, in the absence of a miracle, not be quite the right frequency. Use the hotkey to enable entry of the exact correct frequency, which is the number recorded from the 2nd run of the program. Upon doing this the program will next display the correct phase versus time waveform. Save this data to a file by the hot key and giving a desired filename, then bail out of the program. But before bailing out, take a moment to write down the array size indicated for the next step. At this point one needs to view and plot the frequency versus time waveform, then scale the result to group delay by computing, point by point, the frequency / sweep rate, giving group delay in seconds. This is most readily done by running the program 'consplyt.exe', which first asks for the maximum expected array size, then the filename to process. It will then offer a menu of possible things to do. Feel free to explore; however, the one you really want is choice #6. Vertically pan and zoom until you obtain a reasonable- looking plot. Use the cursor to measure the highest values within the bandpass of the PUPPI mixer, as well as the lowest value which should be near the center of the bandpass. But better yet, simply use the hot key to force creation of an EasyCAD plot with relevant scaling information. Then builld a graticule in the EasyCAD environment, to show the group delay. This will require taking the vertical scale info drawn at the bottom of the plot and modifying it according to the frequency sweep rate (about 125 GHz / sec, if you use the general setup I suggest). The overall result should be a nice plot of group delay versus time; then modify the horizontal scale by the sweep rate and the CF setting for the sweep to make the graticule show group delay versus input frequency. A more elegant way of doing the processing, including dynamic correction for DSO sample rate error, could be done by writing new software just for this situation. However, this is seen as a one-time set of measurements, with no justification for extreme accuracy given that this measurement ignores all the unknown group delay aspects of the remainder of the Arecibo telescope. Therefore the effort required to write a special program seems unjustified at this time. However, depending on how things go with the FRBs, it is possible that a whole-telescope calibrated group delay measurement might become desirable in the future. This will probably prove to be a daunting task, especially when one considers the uncalibrated state of virtually the whole system with respect to delays. To my knowledge, this small effort for the PUPPI mixer is the first time that instrumental group delay has been seriously taken into account for passive single-dish observations. With luck, a variation on this theme should provide a useful foundation for whole-telescope measurements if ever called for. Dana Whitlow 19 Nov 2016 PUPPI_MIX_group_delay_meas_TOO.txt