Does the MATLAB's ifft()/fft() do any spectral shaping ?

2 次查看(过去 30 天)
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

采纳的回答

Walter Roberson
Walter Roberson 2012-8-30
I would be pretty sure that fft() and ifft() do not do any spectral shaping. I do not have any information about qammod() though.

更多回答(1 个)

Rick Rosson
Rick Rosson 2012-8-31
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.

类别

Help CenterFile Exchange 中查找有关 Spectral Measurements 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by