Hi, David,

The CASPER PFB has a streaming interface which means that you just keep giving 
it samples.  For every N time domain samples in (where N is a power of 2), you 
get N frequency domain samples out.

To build an FX correlator, one typically follows the PFB with a quantizer 
(quantizing to 4 bits real and 4 bits imaginary is common) and a "corner 
turner" that distributes the frequency channel from multiple inputs to multiple 
X engines.  The key point is that each F engine produces all channels from some 
inputs while each X engines consume some channels from all inputs.  The 
choreography of the F-to-X data transfer is directed by the "corner turner".  
In contemporary FX correlators spanning multiple boards, this is often 
accomplished by using a 10 GbE switch.  The X engines correlate and integrate 
the corresponding data samples from each pair of antennas.

Because the PFB produces 2**N channels and you have 38 inputs, you will need to 
either add (or at least pretend to add) some dummy channels or drop some actual 
channels so that you end up with a number of channels that is divisible by 38.

Rurik Primiani has written a memo that discusses various PFB resource 
requirements.  You can probably find a pointer to it in the mailing list 
archive.  For more details on packetized correlator development, you can read 
the following CASPER memo (which confusingly is number 18 on the Memos list, 
but has "Memo017" in its name):

http://casper.berkeley.edu/memos/Memo017_PacketizedCorrelatorArchitectures.pdf

Hope this helps,
Dave

On Jun 18, 2013, at 6:42 PM, David Saroff wrote:

> Casper folks,
> 
> When using a PFB/FFT combination, I get the static picture in figure 3 of
> https://casper.berkeley.edu/wiki/The_Polyphase_Filter_Bank_Technique
> 
> So what happens next? Do you slide along N samples or M*N samples, or do
> you just slide one sample, and get one sample out the other end?
> 
> I want to make correlation products from the PFB/FFT of 19 antennae. I
> think I fill up a buffer with N complex numbers for each of the 19
> channels, and do the products in pipeline while the next buffer is
> filling. I think this is equivalent to sliding the M*N tap windows along
> the string of samples by N or Z^-N.
> 
> Has to be a slide by N doesn't it?
> 
> The project is an FX correlator for a 19 (x2 polarizations) = 38 channels
> on a virtex-6 for low and medium bandwidth. 0.4 MHz and 20 MHz, 2.5 MSPS
> and 50 MSPS respectively, using the 64ADC12. I think I can do it for the
> 0.4 MHz case.
> 
> David
> 
> 


Reply via email to