Does the MATLAB's ifft()/fft() do any spectral shaping ?
2 views (last 30 days)
Show older comments
Greetings,
I generate an OFDM signal using :
Qam = qammod(randi([0 3],Nfft,1),M);
OFDMsym = ifft(Qam,Nfft);
OFDMsym_CP = [OFDMsym(end-Ncp+1:end); OFDMsym];
This is then transmitted using SDR (USRP2+RFX2400). When I view the spectrum it looks like the following:
It appears that there is some spectral shaping happening at the ends of the bands. The bandwidth I am using to transmit is well within the bandwidth limit offered by the hardware so it was suggested from the support mailing list that MATLAB was doing some spectral shaping. When I turn off say, 50-75 subcarriers on opposite sides of my OFDM band, I see a normal 'OFDM-like' spectrum:
How can I fix this? In these sub carriers I see my QAM constellation points drawn towards the origin. For ex. :
Thanks in advance. Best Regards, Sanat
0 Comments
Accepted Answer
Walter Roberson
on 30 Aug 2012
I would be pretty sure that fft() and ifft() do not do any spectral shaping. I do not have any information about qammod() though.
0 Comments
More Answers (1)
Rick Rosson
on 31 Aug 2012
Walter is correct. FFT does not do any shaping. It is an implementation of the DFT, plain and simple. MATLAB does provide additional functions that do provide windowing and shaping. Please search the doc for PSD, pwelch, and windowing for more info.
0 Comments
See Also
Categories
Find more on Spectral Measurements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!