Continue to Site

# Regarding power estimation from I and Q samples

Status
Not open for further replies.

#### Maitry07

##### Advanced Member level 4
Hello support team,

I am using high speed data converter , in which there is an inbuilt RF-ADC along with DDC. which can directly digitize RF input and generate I and Q samples accordingly at DC.
Below is the example.
RF frequency=35 MHz, NCO frequency =34 MHz, DDC output = I and Q samples at 1 MHz.
Now I am capturing these I and Q samples in signed decimal format. and stored it in the excel.

My RF input power: -25 dBm
DDC output I and Q sample example when my RF input is -25 dBm
I_sample (signed decimal value) = 1785
Q_sample (Signed decimal value) = 687
Pdbm = 10log(I^2+Q^2) = 65.6 dBm

So, is there any calculation I am missing? PdBm should come -25 dBm. My DDC output is in the FIX16_0 format, from which I have taken the signed decimal values. could you please guide on this?

Is there any requirement to scale down the I and Q samples by fixed scaling factor to get the correct pdBm result?

Your "dBm calculation" would be right for an LSB weight of 0.22V, or 7200 V full scale I/Q range.

Try again. What is I/Q range, what is LSB?

My RF-ADC full-scale power is -2 dBm and resolution is 16 bit. so, based on that, dynamic range would be DR=6.02 x N dB = 96 dB approx.
For 16-bit ADC resolution and DDC output of FIX16_0 i.e. signed number with a bit width of 16 bits
Minimum to maximum number: -32768 to 32767 (i.e., the decimal point is after 16 bits).
Could you please guide on how to do calculation of power from the above details?

I suggest Pact = -0.2 + 10log((I^2+Q^2)/2^30)
respectively
-0.2 + 10log(I^2+Q^2) - 90.3

Hello,

Could you please explain why I cannot get the exact power level direct from I and Q samples? as when we think about the mathematic formula: pdBm = 10log(I^2+Q^2) .. So what is the purpose behind this scaling down? Is there any particular mathematical formulla for this?
--- Updated ---

One more thing, It is more suitable for me to get the result in terms of Vpeak.
So, I am planning to use sqrt(I^2+Q^2) . for that scaling factor will change?
--- Updated ---

I think in order to have sqrt(I^2+Q^2) ,scaling factor is 2^16.
I sample/2^16 = 1785/65536 = 0.027236938476
Q sample/2^16 = 687/65536 = 0.0104827880

SQRT( I^2 +Q^2) = 0.0291845 Vp-p , which is approx. -26 dBm.

So, that's why I am confused about the scaling factor selection. what is the purpose behind this scaling factor and how to select the same.

Last edited:

I see you almost succeded in answering the scaling question yourself. Scaling factor of 16 bit signed quantity is 2^15, you surely understand why.

Hello,

I have tested the above in my hardware. I have captured the I and Q samples in xls format( signed decimal) and done the below.

All I samples / 2^16
All Q samples/2^16
Getting correct result=SQRT [(Divided I )^2 + (divided Q)^2]

Even if my I and Q samples are FIX16_0. ( 16 bits ) I have to scale down by 2^16=65536 to get the correct result? Why is that.

No problem, if it works for you, but mathematically implausible. Can be best checked with real measurement numbers. Could be a problem of unterminated input and pd versus emf output power metric of your generator which makes 6 dB difference.

You also may want to tell the IQ demodulator ADC type, so we can check on our own.

Hello,
My IQ demodulator ADC is RF-ADC which can directly digitize the RF signal. I am using oversampling.
RF input: 35 MHz
NCO input: 33 MHz
DDC output: 2 MHz.
RF-ADC full scale power: -2.2 dBm
DDC output I and Q samples resolution : 16 bit fixed point
--- Updated ---

How can I check with real measurement numbers?

How can I check with real measurement numbers?

You already did. Initial measurement values indicate that either input power is higher than - 25 dBm or full scale lower than -2.2 dBm. At least in my math, signed 16 bit full scale output is 0x8000 to 0x7FFF.

Yes, I got your point. That Max positive number: 32768 and min negative number: -32767.

Yes, I got your point. That Max positive number: 32768 and min negative number: -32767.
Almost, the range is -32768 to +32767
The highest bit is the sign bit.
1 => negative
0 => not negative (zero or positive)

yes, sorry for the typo error.
the range is -32768 to +32767.

Then can you please suggest any thing else that I can measure or verify to figure out the above, why I am getting 2^16 scaling factor?
--- Updated ---

From your above statement " Could be a problem of unterminated input and pd versus emf output power metric of your generator which makes 6 dB difference."

I noticed one thing, My high speed data coneverter has total 4 RF-ADC (simultaneous input) and out of these 4 I am using 2nd input and other 3 are unterminated. Can this be the reason?

Actually , this I and Q (signed decimal values) I am importing to one of the supplier given GUI , which is giving me the result in terms of dBFS , at there I am getting accurate results. ( which scale factor GUI is using , that I am not aware)

But when I check manually, and divide it by 2^15 , then I am getting 6 dB difference.

Last edited:

Your full scale amplitude is 32767 = -2.2 dBm.
I = 1785 and Q = 687 is amplitude 1913.
dB from fullscale is 20*log(1913/32767) = -24.7 dB
If full scale is -2.2 dBm, your signal is -2.2 - 24.7 dBm = -26.9 dBm

Hello,

yes I got the above calculation in terms of dBm.
but when I am thinking about Vpeak = SQRT (I^2+Q^2 ) = 1913 /32767 = 0.058381 = -20.6 dBm . If I want the output in peak to peak and when I divide it by 32767 (2^15). I am getting 6 dB difference in the output. why is that? could you please explain.

𝑉𝑝𝑒𝑎𝑘= √(𝐼2+ 𝑄2)
--- Updated ---

why both calculations are not matching?

Last edited:

Hi,

Just referring to post#15:

(Voltage) peak of a sine = amplitude. Let's say 0dB
(Voltage) peak_to_peak = 2×amplitude. = +6dB

Klaus

Hello,

Yes, silly mistake made by me. Now I am getting correct results. thank you for your support.

Hello,
I have implemented the above scaling factor of 2^15 for the I and Q samples. One more thing I have observed.
Below is the example.
My RF input = -5 dBm
Based on which,
I sample = -17250
Q sample = -8544

Scale down I and Q
I = -0.526444288
Q = -0.260750145

SQRT(I^2+Q^2 ) = 0.587481257 = amplitude

Power in dBm = 20*log (amplitude) = -4.620119691 dBm

Full scale power of RF-ADC = -2.2 dBm

power measurement in dBm =20*log(amplitude) - Full scale = -6.820111 dBm

So, I am providing -5.1 dBm as RF input. then , there is RF front end like cable, RF balun before my RF-ADC. So, my actual signal has got of approx. 1.8 dB insertion loss before it reaches to RF-ADC.

So, instead of getting -5.1 dBm , I am measuring -6.8 dBm
that means, I need to do the digital gain compensation ( for the fixed RF front end loss) on the received result of amplitude? Is my understanding correct?

Hi,

Full scale power of RF-ADC = -2.2 dBm

power measurement in dBm =20*log(amplitude) - Full scale = -6.820111 dBm
I don't know what you try to do here, but according my math understanding there is something wrong:
If this is correct:
power measurement in dBm =20*log(amplitude) - Full scale =
... then this should be the result:
= -4.62 dBm -(-2.2 dBm) = -2.42 dBm

Klaus

Hi,
Actually I am receiving I and Q samples in terms of digital form.

My Result :
0.587481257 ( signed decimal ) = 0(sign bit) 0( integer bit) .10010110011001( 14 fraction bits)

From this 16 bit digital output , I am assuming my decimal fraction value as per above.

As per STD_match reply on the above trailing , (dec 21)

We need to add the full scale of ADC, which is -2.2 that means,

20*log(amp) + full scale = 20*log(0.587481257) + (-2.2) = -6.8 dBm .
So, this is my calculation.

My requirement is to meaure exact power for my unknown RF input. for which I am implementing this,

So, when my RF input =-5.1 dBm
My output in digital 1QN( FIX16_14) format is 00.10010110011001 , which is 0.587481257 in decimal.

So, As per STD match given formulla , amplitude of 0.587481257 is equivalent to -6.8 dBm ( 20log(amp) + full scale)

-6.8 ( measured power) - [(-5.1) input power] = -1.7 dB ( this I am assuming the RF front end insertion loss)

If above understanding is correct, then there is a requirement for digital gain compensation (i.e addition of 1.7 dB)

This all above is depending on the correct interpretation of received amplitude to dBm.
(i.e, for the ADC having -2.2 dBm full scale , 0.587481257 amplitude is equivalent to -6.8 dBm for the formulla of 20*log(amp) + full scale)

Status
Not open for further replies.