I used tx_waveforms in uhd to transmit a 0.5M sine wave on 5.5GHz.
As we all know,
Frequency(A) * Frequenc(B) = Frequency(A-B) + Frequency(A+B)
I got two peaks at
5.4995GHz and 5.5005GHz
when the tx_rate is 1M samples per second. http://www.cse.msu.edu/~huangpe3/usrp/1Mtx_05Msine.png
I thought it is right, sampling frequency is twice the sine frequency.

However, when the tx_rate is 2MSps, I got one peak at 5.5005GHz. http://www.cse.msu.edu/~huangpe3/usrp/2Mtx_05Msine.png
Then I am confused. Where does the lower frequency part go?
Or the first one is actually an aliasing because we need some degree of
oversampling in practice.

Also I’d like to know where do we remove the lower frequency part
(freq(A-B)) in uhd.

Then I am confused. Where does the lower frequency part go?
Or the first one is actually an aliasing because we need some degree of
oversampling in practice.

Also I’d like to know where do we remove the lower frequency part (freq(A-B)) in
uhd.

tx waveforms is generating cos(t) + i*sin(t) not cos(t). I suggest
reading about baseband representation and experimenting in simulation
with GRC.

-josh

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.