Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
20703 Discussions

Ofmd modulator: IFFT

Altera_Forum
Honored Contributor II
1,051 Views

Hi All. 

 

I am realizing an Ofmd modulator. 

 

I have a problem with zero padding of the IFFT. http://www.alteraforum.com/images/smilies/confused.gif  

 

I decide to use the FFT MegaCore Function v9.0. 

I have 1536 samples and I choose a 2048 samples IFFT. 

 

Now, how I have to do zero padding? 

 

I think it depends from  

1) the input data mode that I choose in FFT MegaCore (natural, bit reversed, DC centred) 

2) my samples order. They are DC-centered because they corresponding to carriers from (-768 to 768) excluding 0, that is DC carrier. 

 

In that case where have I to put zeros?  

 

Moreover from FFT MegaCore User Guide: what does it mean that the signal is in "natural order", "bit-reversed" or "DC centred? 

And if I pass to the IFFT Ip core a signal DC-centred and the output is in natural order, have I to re-order samples in DC-centred order before transmission? 

 

I hope someone can explain me, sorry if I was a bit confusing.
0 Kudos
4 Replies
Altera_Forum
Honored Contributor II
344 Views

Anybody can help me?

0 Kudos
Altera_Forum
Honored Contributor II
344 Views

natural order means the transform results are in the "natural" or expected order: 0, 1, 2, 3, etc. 

 

bit reversed order means the results do not come out in the expected order, they count in a kind of "reverse" order, with the incrementing at the MSB up to the LSB. 

 

here is an explanation from The Mathworks: 

 

http://www.mathworks.com/access/helpdesk/help/toolbox/dspblks/index.html?/access/helpdesk/help/toolbox/dspblks/ug/f15-8003.html 

 

memory resources can be saved with a natural => bit reversed (or bit reversed => natural) transform which is why this addressing scheme is used at all. 

 

in most FFT algorithms, the first bin ends up as the DC component. to help people read the data, it may be DC centered so DC resides at the N/2th bin. this makes the data more natural to view since it goes from -fs/2 to DC to fs/2 (rather than DC to fs/2 to -fs/2 to DC...i think that's it i'd have to check). the MATLAB fftshift command does DC centering: 

 

http://www.mathworks.com/access/helpdesk/help/techdoc/index.html?/access/helpdesk/help/techdoc/ref/fftshift.html
0 Kudos
Altera_Forum
Honored Contributor II
344 Views

Thanks for your reply. 

 

And how about zero padding, if I pass a DC centered vector to IFFT MegaCore Function v9.0? 

Have I to put zero near the DC sample or at the end and beginning of the input vector?
0 Kudos
Altera_Forum
Honored Contributor II
344 Views

that's a good question, maybe this afternoon i'll try some MATLAB to look at the results.

0 Kudos
Reply