Nikhil*, sorry!

On Fri, Feb 4, 2022 at 9:08 AM Morag Brown <[email protected]> wrote:

> Hey Nikhail,
>
> The FFT is a Hermitian function, which means that it has the property:
>
> [image: Screenshot from 2022-02-04 08-34-24.png]
>
> This principle is used in the real wideband FFT to compute 2 real FFTs
> using one complex FFT core - this
> <http://www.hyperdynelabs.com/dspdude/papers/COMPUTING%20THE%20FFT%20OF%20TWO%20REAL%20SIGNALS%20USING%20A%20SINGLE%20FFT.pdf>
>  paper
> explains it well. For a detailed explanation on how the CASPER FFT works
> specifically, Ryan Monroe's paper on Improving the Performance and Resource
> Utilization of the CASPER FFT and Polyphase FIlterbank goes into quite a
> lot of detail.
>
> You only get 32 output channels because the CASPER wideband FFT discards
> all negative frequency components as they're just a mirror of positive
> frequency components and aren't needed.
>
> Morag
>
> On Fri, Feb 4, 2022 at 7:10 AM Nikhil Mahajan <[email protected]>
> wrote:
>
>> Dear CASPERites,
>>
>> I am a graduate student at the University of Toronto (working with Marten
>> van Kerkwijk) and I have some raw baseband data collected using PUPPI
>> (Arecibo) - and I am on a quest to invert the polyphase filter bank. I have
>> 32 channels of complex-baseband that I would very much like to combine into
>> a single 100 MHz bandwidth stream.
>>
>> To do this, I would need to understand some of the specifics of the
>> filter bank pipeline (so that I can successfully invert each step). This is
>> my current understanding of what happened to the data I have:
>>
>> 1. Real-valued data sampled at 200 MS/s arrives at the Casper BEE2 board.
>> 2. This goes through a real-input PFB implementation such as
>> `pfb_fir_real` and using a 12-tap, 64-branch polyphase filter (I have the
>> filter coefficients that were used here). This step outputs 64 streams of
>> real-valued data.
>> 3. Then, for the DFT step of the filterbank, the 64 real-valued streams
>> are passed through the `fft_wideband_real` block to get 32 channels of
>> complex-valued data.
>> 4. This is then saved to disk.
>>
>> (I hope someone familiar with PUPPI can correct me here if I am wrong
>> about any of the above)
>>
>> Step 3 is the step I am confused about. `fft_wideband_real` does not
>> appear to be a conventional real-input N-point FFT implementation (Else I
>> would have N/2 + 1 channels instead of just N/2). Some documentation on
>> this block says that it "computes the real-sampled Fast Fourier
>> Transform using the standard Hermitian conjugation trick". What is this
>> standard Hermitian conjugation trick? I am totally unfamiliar with this.
>> Would I be wrong in guessing it uses some sort of trick to convert 64 real
>> numbers to 32 complex numbers and then applies a regular ol' complex-valued
>> FFT on them?
>>
>> Thank you so much! I appreciate any and all guidance this mailing list
>> can provide.
>>
>> Cheers,
>> Nikhil Mahajan
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "[email protected]" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To view this discussion on the web visit
>> https://groups.google.com/a/lists.berkeley.edu/d/msgid/casper/CAA39X0%2B3z051d%2B%2BAB0D%3D1LHNHdOSDJp6JEYzzRXatj-ij11_qA%40mail.gmail.com
>> <https://groups.google.com/a/lists.berkeley.edu/d/msgid/casper/CAA39X0%2B3z051d%2B%2BAB0D%3D1LHNHdOSDJp6JEYzzRXatj-ij11_qA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"[email protected]" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/a/lists.berkeley.edu/d/msgid/casper/CAGH-0Tdawu4HVd%2BSiakUJLn4gBOZeP1KidP0qqJ4sjW_bRXMNw%40mail.gmail.com.

Reply via email to