Hi all, I am generating my own "OFDM" waveform which actually does not modulate anything. Step by step.
I am simulating 1024 subcarriers but first generating 1024 zeros, and then I want to only enable the center 100 subcarriers. To do this, I map the center frequency at the first index in the array, then the positive frequency subcarriers, then the negative frequency subcarriers. To enable the center 100 subcarriers, I multiply the first 50 positive frequency subcarriers by: (1.472) * complex(1,1), and do the same with the first 50 negative frequency subcarriers. Finally, I take the IFFT of the data, with a size of 1024. I multiply this by sqrt(1024). If I then take the FFT, to double check what I've done, and plot against the subcarrier index, I get what I expect: http://www.ece.cmu.edu/~gnychis/subc.png Now, I want to transmit this out of the USRP2 so I write the typical GNU Radio python script to read an 8-byte complex file source and pump it to the USRP2... repeating the complex samples in the file on finish for continuous transmission. I start up the spectrum analyzer and get a clean noise floor: http://www.ece.cmu.edu/~gnychis/noise_floor.jpg Now, when I transmit from the USRP2 using an interpolation rate of 32: http://www.ece.cmu.edu/~gnychis/transmit_spectrum.jpg Well, I can certainly see the waveform. But I have two questions... 1) My calculation of the bandwidth of the 100 active bins, and the actual bandwidth, is off by a factor of two: (((100 MHz) / 32) / 1024) * 100 = 305.175781 kilohertz, where 32 is the interpolation rate, 1024 was the size of the IFFT, and 100 is the number of active bins. I see 610KHz, however. 2) I'm not seeing a clean power falloff outside of the active bins. I am seeing a lot of power rolloff. Do I need to be applying a low pass and/or high pass filter for this? Or is this the result of weirdness created by the interp CIC filter and the dual half-band filters? I'm not too familiar at this level of communications.. I'd greatly appreciate any feedback. I can provide any code, but my guess is that I have a more fundamental misunderstanding than a coding error. Thanks! George
_______________________________________________ Discuss-gnuradio mailing list [email protected] http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
