Real to Complex conversion

Started by PetterJhon 5 years ago6 replieslatest reply 5 years ago376 views

Hello everyone,,

A very basic question related to real to complex conversion. Let's say I have a ADC sampling at 1Gsps - real samples only. In the digital domain (FPGA), I want to convert these samples to i/q - WITHOUT any mixing. I know that in i/q domain I will only need 500Msps rate.

I can think of two practical ways:

a) using the quadrature mixing method with a very very small frequency (smallest resolution the NCO phase word), and live with the slightly off-center signal. Then have a half-band filter following by down-sample by 2.

b) Use the hilbert transform to compute the imaginary paert and then DOWNSAMPLE by 2.y 

Are both valid? I suspect mathematically they might even be the same.

Wanted to run my thinking by the experts.


[ - ]
Reply by SlartibartfastJune 29, 2019

You haven't specified the need to do anything with the phase or with the imaginary portion, so you haven't indicated anything that would make me think that downsampling the real-valued signal by 2:1 and then setting the imaginary part to zero wouldn't work.   That'd certainly be the simplest from a processing perspective, and is mathematically rigorous.   It's the same as setting the imaginary part to zero and them downsampling the complex signal 2:1, it just saves a lot of computation.

Nothing has been stated that suggests a downsampling filter with cross-taps is strictly required.

If you're meaning to do something beyond that, then that may mean other methods may be better, but so far I don't think anything has been specified.  If you do mean something else, then some clarification may lead to more focused answers.

[ - ]
Reply by dszaboJune 29, 2019

They are absolutely not the same.  The first method gives you a complex number in the sense that adding 1j to your signal gives you a complex number.  It doesn’t make it useful.

Performing a hilbert transform will allow you to measure phase/frequency and envelope. Is that what you are trying to do

[ - ]
Reply by chalilJune 29, 2019

PetterJohn, they are not the same. However, i/q approach can give you Hilbert pairs which gives you two mutually orthogonal signals.  

Hilbert transform is a narrowband operation for signals (i.e. a signal whose bandwidth is a small percentage of the dominant carrier frequency). 

so, as long as the signal bandwidth the narrow both operations can be used to do similar things like qam demod, envelop detection, etc. 

practically, performing Hilbert directly on RF directly may be a costly affair. the quadrature mixture not just mix to complex pairs they also convert to lower freq band which reduces sampling rate requirement. 

hope it helps.


[ - ]
Reply by neiroberJune 29, 2019

I don't think method a) works.  I discuss the Hilbert transformer in this post:


A Hilbert transformer could work.  Also, if the frequency of interest is less than 250 MHz, you can use a decimate-by-2 filter first and follow that with the Hilbert transformer operating at 500 MSa/s.  In that case, a Hilbert transformer should be practical for a signal in the range of say, 25 to 225 MHz.

[ - ]
Reply by Tim WescottJune 29, 2019

What are you really doing, why do you believe that your suggested approach is a potential solution, and why do you believe that mixing is not a solution?

[ - ]
Reply by precesseurJune 29, 2019

Your specs are not precise enough, but supposing that your signal of interest is relatively low bandwidth around a carrier of 250Mhz  (say bandwidth < 25 Mhz) and that of course you have analog filtered, butterworth or other,  the signal in this band and that your hardware permits you to sample at 1Ghz (i.e. 4 times higher at least, i.e. twice Shannon).. then after sampling, you can say that the even samples are 'real'  and the odd samples are 'imaginary' part of a complex one sided signal. Et voila.

This is at least how the single real signal in MRI scanners is 'reconverted' into the two real-imaginary components of the rotating magnetization.. without artefacts due to imbalance of two analog channels.