discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Complex in/Complex out Hilbert?


From: David Hagood
Subject: Re: Complex in/Complex out Hilbert?
Date: Sun, 19 Apr 2020 07:44:00 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0

When demodulating a real-world signal, you have the problem that there's other signals too - there's the other station 4kHz down that you want to remove. So yes, you can say the signal of interest is an analytic signal, but then there's everybody else too. True, you can demodulate the signal by shifting it one half bandwidth, low passing it, shifting it back, re-injecting the carrier, and then demodulating it. Just throwing away the imaginary part causes issues if you don't have precisely the correct frequency. That's the difference between theoretical DSP and real-world work - you are never on frequency, there are always other signals, etc.

Mostly, this is because I do SDR for a living, so I am "pushing the envelope" to see what GnuRadio can do - and IMHO, while there's a lot of good work, there's also room for improvement. The demodulators that ship with it could stand some improvement - look at the LiquidDSP AM demodulator, which DOES do USB, LSB, and DSB correctly, vs. what is in GnuRadio.

Yes, I know - "If you want it, write it yourself, then". And I may just do that, but since I hate duplicating effort, I'd like to know if anybody else has done that, or is doing that.

The Hilbert transform is supposed to shift the positive frequency components -90 degrees, and the negative frequency components 90 degrees. That's why a Hilbert that only accepts real values is problematic - you cannot truly represent a negative frequency with only real values. A complex-in/complex-out Hilbert would be able to do just that.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]