Rules | Recent posts | topic RSS | Search | Register  | Log in

Xilinx FFT ipcore with ADC question

 
Post new topic  Reply to topic    EDAboard.com Forum Index -> Digital Signal Processing
Author Message
abort



Joined: 04 Mar 2008
Posts: 2


Post04 Mar 2008 10:25   Xilinx FFT ipcore with ADC question

I have audio data coming out of an ADC.

I wanted to use a Xilinx FPGA to run it through a FFT and I noticed that Xilinx has a FFT ipcore available in their CORE Generator that I believe I can use. The input requires a real part and an imaginary part, but I only have the real part [the data coming off the ADC].

I read "Distributed Half Band Filter (DHBF) provides an efficient mechanism for converting a digitised signal from an ADC into a complex representation for input to the FFT transform." and "The ADC output is first applied to a DHBF (Distributed Halfband Filter), which converts the real input signal to a complex output at half the rate."

So my question is does Xilinx also provide a DHBF ipcore through CORE Generator or how would I otherwise go about getting a DHBF to put between the ADC and the FFT?

Thank you very much.
Back to top
muralicrl



Joined: 06 Feb 2008
Posts: 281
Helped: 30


Post05 Mar 2008 11:28   Re: Xilinx FFT ipcore with ADC question

Hi Friend,

You can apply Hilbert transform to the output of ADC, so that you will get both I and Q samples which can be directly given to FFT core which requires both I and Q samples.

For more details kindly contact me.

regards,
N.Muralidhara
MSRS, CRL-BEL
Back to top
abort



Joined: 04 Mar 2008
Posts: 2


Post06 Mar 2008 8:28   Re: Xilinx FFT ipcore with ADC question

I appreciate your response about the Hilbert Transform!

When I select that in the Xilinx CORE generator and build it, it gives me the I and Q parts, as you mentioned, the I part is 16 bits [the length of the input], but the Q part is 35 bits. I'm not sure why. It seems, however, that I am able to adjust the output width of Q somewhat based on what I used for the Coefficient Width when creating the Hilbert Transform [down to a minimum of 21 bits]. The Q width is always at least 5 bits wider than the I width.

I did find this in the Xilinx documentation as to why the I and Q outputs are of different size:

Quote:
Filter input data is supplied on the DIN port (N bits wide) and filter output samples are presented on the DOUT port (R bits wide). The output width R is the sum of the data bit width N, the coefficient bit width K, and the bit growth due to the number of coefficients. ... For Hilbert transform filter implementations, a pair of In-Phase/Quadrature data outputs is provided. The In-Phase data output is N bits wide, as it is a delayed version of the input data, while the Quadrature data output is R bits wide, calculated as described previously.


But the FFT that I created in CORE generator is expecting the I and Q parts to be 16 bits wide each.

What am I missing? Thank you very much!
Back to top
chris_xieq



Joined: 08 May 2008
Posts: 4


Post12 May 2008 11:00   Re: Xilinx FFT ipcore with ADC question

Hi Abort,

Have you ever sove the problems, I meen the problem too, audio comes from ADC, I need to analyzer the THD/Spectrum through FFT, I want to use Xilinx's Core too.

Hi muralicrl,

As mentioned above, could you kindly give me some advise please? Thanks.

Regares,

Chris.
Back to top
Post new topic  Reply to topic    EDAboard.com Forum Index -> Digital Signal Processing
Page 1 of 1 All times are GMT + 2 Hours


Abuse
Administrator
Moderators
topic RSS 
sitemap