Topics

I/Q VALUES

David Eckhardt
 

The following received no answer and Terry's additional bit of info didn't make it.  So, here is the query, again.

>>>>>>>>>>>>>>>>>>>>>>>>>     <<<<<<<<<<<<<<<<<<<<<<<<<<<<



We are using the AirSpy as the 'center' of our H1 radio astronomy receiver at LTO (Little thompson Observatory <starkides.org>).   About a month ago we took a look at the absolute values of the I/Q data in an effort to determine where we were placed within the 12-bit dynamic range of the ADC and ultimately, the receiver.  Unfortunately, our efforts reveled some unexplainable and puzzling results.  We are seeing a statistically significant number of values in excess of 13k to 15k.  Without an accumulator and some internal smarts, a 12-bit system (the AirSpy) should not be able to produce values in excess of 2^11 (2048) and more reasonably (accounting for just barely tickling the least significant bit, 2^10 (1024).  As a consequence, the AirSpy is becoming more-and-more of an undetermined classic black box which is NOT what we need to deal with when our dynamic range from the dish and all the preamps is only 2 dB or so between quiet sky and Cygnus, Cassiopeia, and Sag-A*.

Both the signals from the dish and two well known broad band noise sources coupled to the receiver through will characterized attenuators for match exhibit similar behavior regarding the large absolute values of the I/Q data.  Using the noise sources and variable attenuators, we easily found the point of digital saturation about where we expect it to be.  At this point of digital saturation, the absolute values of the I/Q data were well bounded by the expected number of exercised bits. So, to the question  open:
  
QUESTION:  How can the 12-bit system of the AirSpy develop absolute  output  I/Q values well in excess of 2^10 (13k to 15k+) when operated well below digital saturation even though in digital saturation, the values are well bounded and expected.

Dave - WØLEV
Volunteer:  Little Thompson Observatory
                  <starkids.org

A useful additional piece of information is that we are using this plugin in SDR# to obtain the 10 MHz I/Q values.
Note that when recording in 16 bit integer format, we get twice as many zeros as +1 of -1 which is strange.  This does not happen in the 32 bit floating point recording format. 
Terry -- WØASP




--
Dave - WØLEV
Just Let Darwin Work
Just Think

Marcus D. Leech
 

On 11/29/2018 07:30 PM, David Eckhardt wrote:
The following received no answer and Terry's additional bit of info didn't make it.  So, here is the query, again.

>>>>>>>>>>>>>>>>>>>>>>>>>     <<<<<<<<<<<<<<<<<<<<<<<<<<<<



We are using the AirSpy as the 'center' of our H1 radio astronomy receiver at LTO (Little thompson Observatory <starkides.org>).   About a month ago we took a look at the absolute values of the I/Q data in an effort to determine where we were placed within the 12-bit dynamic range of the ADC and ultimately, the receiver.  Unfortunately, our efforts reveled some unexplainable and puzzling results.  We are seeing a statistically significant number of values in excess of 13k to 15k.  Without an accumulator and some internal smarts, a 12-bit system (the AirSpy) should not be able to produce values in excess of 2^11 (2048) and more reasonably (accounting for just barely tickling the least significant bit, 2^10 (1024).  As a consequence, the AirSpy is becoming more-and-more of an undetermined classic black box which is NOT what we need to deal with when our dynamic range from the dish and all the preamps is only 2 dB or so between quiet sky and Cygnus, Cassiopeia, and Sag-A*.

Both the signals from the dish and two well known broad band noise sources coupled to the receiver through will characterized attenuators for match exhibit similar behavior regarding the large absolute values of the I/Q data.  Using the noise sources and variable attenuators, we easily found the point of digital saturation about where we expect it to be.  At this point of digital saturation, the absolute values of the I/Q data were well bounded by the expected number of exercised bits. So, to the question  open:
  
QUESTION:  How can the 12-bit system of the AirSpy develop absolute  output  I/Q values well in excess of 2^10 (13k to 15k+) when operated well below digital saturation even though in digital saturation, the values are well bounded and expected.

Dave - WØLEV
Volunteer:  Little Thompson Observatory
                  <starkids.org

A useful additional piece of information is that we are using this plugin in SDR# to obtain the 10 MHz I/Q values.
Note that when recording in 16 bit integer format, we get twice as many zeros as +1 of -1 which is strange.  This does not happen in the 32 bit floating point recording format. 
Terry -- WØASP








My guess would be scaling.  In the usual case, you're NOT seeing the raw ADC values.  Now I'm not sure how much DSP there is on the
  AirSpy ARM CPU, but there's certainly some on the host, and maybe through your plug-in.

I know that in other SDRs that have 12-bit ADCs, a "wire format" is used where each sample is 16-bits I and 16-bits Q, and the DSP machinery
  inside the radio scales into that value range, after things like DDCs and filters and the like (in fact, in the ones that I'm aware of, they
  use an 18-bit format internally to avoid having to truncate early).

If I were concerned about significant sample bias, I'd probably plug in a random noise source, and let it run for a few 10s of seconds at 10Msps,
  and look at the uniformity of the samples.


David Eckhardt
 

We have inputted gaussian noise from two well calibrated noise sources.  The results are similar to that with the H1 antenna/preamps/feedline connected.   I should also point out that once the AirSpy is driven into digital saturation   from the noise sources we see predominately 1024 for I/Q values.  This is the expected value for saturation of a 12-bit system.  So, why do we see such large values when not in saturation from both the real input from the dish AND two independent calibrated noise sources.  Is there an accumulator in the AirSpy which we can not account for?  Something just does not ring true to theory. 

Dave - WØLEV


On Fri, Nov 30, 2018 at 12:44 AM Marcus D. Leech <patchvonbraun@...> wrote:
On 11/29/2018 07:30 PM, David Eckhardt wrote:
The following received no answer and Terry's additional bit of info didn't make it.  So, here is the query, again.

>>>>>>>>>>>>>>>>>>>>>>>>>     <<<<<<<<<<<<<<<<<<<<<<<<<<<<



We are using the AirSpy as the 'center' of our H1 radio astronomy receiver at LTO (Little thompson Observatory <starkides.org>).   About a month ago we took a look at the absolute values of the I/Q data in an effort to determine where we were placed within the 12-bit dynamic range of the ADC and ultimately, the receiver.  Unfortunately, our efforts reveled some unexplainable and puzzling results.  We are seeing a statistically significant number of values in excess of 13k to 15k.  Without an accumulator and some internal smarts, a 12-bit system (the AirSpy) should not be able to produce values in excess of 2^11 (2048) and more reasonably (accounting for just barely tickling the least significant bit, 2^10 (1024).  As a consequence, the AirSpy is becoming more-and-more of an undetermined classic black box which is NOT what we need to deal with when our dynamic range from the dish and all the preamps is only 2 dB or so between quiet sky and Cygnus, Cassiopeia, and Sag-A*.

Both the signals from the dish and two well known broad band noise sources coupled to the receiver through will characterized attenuators for match exhibit similar behavior regarding the large absolute values of the I/Q data.  Using the noise sources and variable attenuators, we easily found the point of digital saturation about where we expect it to be.  At this point of digital saturation, the absolute values of the I/Q data were well bounded by the expected number of exercised bits. So, to the question  open:
  
QUESTION:  How can the 12-bit system of the AirSpy develop absolute  output  I/Q values well in excess of 2^10 (13k to 15k+) when operated well below digital saturation even though in digital saturation, the values are well bounded and expected.

Dave - WØLEV
Volunteer:  Little Thompson Observatory
                  <starkids.org

A useful additional piece of information is that we are using this plugin in SDR# to obtain the 10 MHz I/Q values.
Note that when recording in 16 bit integer format, we get twice as many zeros as +1 of -1 which is strange.  This does not happen in the 32 bit floating point recording format. 
Terry -- WØASP








My guess would be scaling.  In the usual case, you're NOT seeing the raw ADC values.  Now I'm not sure how much DSP there is on the
  AirSpy ARM CPU, but there's certainly some on the host, and maybe through your plug-in.

I know that in other SDRs that have 12-bit ADCs, a "wire format" is used where each sample is 16-bits I and 16-bits Q, and the DSP machinery
  inside the radio scales into that value range, after things like DDCs and filters and the like (in fact, in the ones that I'm aware of, they
  use an 18-bit format internally to avoid having to truncate early).

If I were concerned about significant sample bias, I'd probably plug in a random noise source, and let it run for a few 10s of seconds at 10Msps,
  and look at the uniformity of the samples.




--
Dave - WØLEV
Just Let Darwin Work
Just Think

Marcus D. Leech
 

On 11/29/2018 08:28 PM, David Eckhardt wrote:
We have inputted gaussian noise from two well calibrated noise sources.  The results are similar to that with the H1 antenna/preamps/feedline connected.   I should also point out that once the AirSpy is driven into digital saturation   from the noise sources we see predominately 1024 for I/Q values.  This is the expected value for saturation of a 12-bit system.  So, why do we see such large values when not in saturation from both the real input from the dish AND two independent calibrated noise sources.  Is there an accumulator in the AirSpy which we can not account for?  Something just does not ring true to theory. 

Dave - WØLEV
That does sound decidedly odd.

What I would do is a linearity test, by inserting attenuators into your noise source output and checking values.

I'll note in passing, that CCERA have been using a pair of AirSpy R2 on our dual-channel (dual antenna) spectrometer for about 18 months
  have haven't had any issues with levels, etc.

It's down due to mechanical issues at the moment, but I can share data once it's back up again.  



On Fri, Nov 30, 2018 at 12:44 AM Marcus D. Leech <patchvonbraun@...> wrote:
On 11/29/2018 07:30 PM, David Eckhardt wrote:
The following received no answer and Terry's additional bit of info didn't make it.  So, here is the query, again.

>>>>>>>>>>>>>>>>>>>>>>>>>     <<<<<<<<<<<<<<<<<<<<<<<<<<<<



We are using the AirSpy as the 'center' of our H1 radio astronomy receiver at LTO (Little thompson Observatory <starkides.org>).   About a month ago we took a look at the absolute values of the I/Q data in an effort to determine where we were placed within the 12-bit dynamic range of the ADC and ultimately, the receiver.  Unfortunately, our efforts reveled some unexplainable and puzzling results.  We are seeing a statistically significant number of values in excess of 13k to 15k.  Without an accumulator and some internal smarts, a 12-bit system (the AirSpy) should not be able to produce values in excess of 2^11 (2048) and more reasonably (accounting for just barely tickling the least significant bit, 2^10 (1024).  As a consequence, the AirSpy is becoming more-and-more of an undetermined classic black box which is NOT what we need to deal with when our dynamic range from the dish and all the preamps is only 2 dB or so between quiet sky and Cygnus, Cassiopeia, and Sag-A*.

Both the signals from the dish and two well known broad band noise sources coupled to the receiver through will characterized attenuators for match exhibit similar behavior regarding the large absolute values of the I/Q data.  Using the noise sources and variable attenuators, we easily found the point of digital saturation about where we expect it to be.  At this point of digital saturation, the absolute values of the I/Q data were well bounded by the expected number of exercised bits. So, to the question  open:
  
QUESTION:  How can the 12-bit system of the AirSpy develop absolute  output  I/Q values well in excess of 2^10 (13k to 15k+) when operated well below digital saturation even though in digital saturation, the values are well bounded and expected.

Dave - WØLEV
Volunteer:  Little Thompson Observatory
                  <starkids.org

A useful additional piece of information is that we are using this plugin in SDR# to obtain the 10 MHz I/Q values.
Note that when recording in 16 bit integer format, we get twice as many zeros as +1 of -1 which is strange.  This does not happen in the 32 bit floating point recording format. 
Terry -- WØASP








My guess would be scaling.  In the usual case, you're NOT seeing the raw ADC values.  Now I'm not sure how much DSP there is on the
  AirSpy ARM CPU, but there's certainly some on the host, and maybe through your plug-in.

I know that in other SDRs that have 12-bit ADCs, a "wire format" is used where each sample is 16-bits I and 16-bits Q, and the DSP machinery
  inside the radio scales into that value range, after things like DDCs and filters and the like (in fact, in the ones that I'm aware of, they
  use an 18-bit format internally to avoid having to truncate early).

If I were concerned about significant sample bias, I'd probably plug in a random noise source, and let it run for a few 10s of seconds at 10Msps,
  and look at the uniformity of the samples.




--
Dave - WØLEV
Just Let Darwin Work
Just Think

Alberto I2PHD
 

On 2018-11-30 1:30, David Eckhardt wrote:

QUESTION:  How can the 12-bit system of the AirSpy develop absolute  output  I/Q values well in excess of 2^10 (13k to 15k+) when operated well below digital saturation even though in digital saturation, the values are well bounded and expected.

Just a guess, not knowing the internals of the Airspy : the cause could be the so-called processing gain, which you obtain when you do a downsampling of a digital signal.
Given that the output on the USB port is probably not at the original sampling speed of the ADC, but lower, then you gain a few bits of amplitude resolution, and this could explain why you observe values greater than what can be represented with 12 bits.

--
73 Alberto I2PHD
Credo Ut Intelligam


prog
 

On Fri, Nov 30, 2018 at 01:40 PM, Alberto I2PHD wrote:
Just a guess, not knowing the internals of the Airspy : the cause could be the so-called processing gain, which you obtain when you do a downsampling of a digital signal.
Given that the output on the USB port is probably not at the original sampling speed of the ADC, but lower, then you gain a few bits of amplitude resolution, and this could explain why you observe values greater than what can be represented with 12 bits.

--
73 Alberto I2PHD
Credo Ut Intelligam

That could be either the processing gain (mainly from IQ conversion) or some transient noise in this setup (USB or PC). The different conversions from unsigned 12bit integers to 16bit PCM or 32bit float might also result in very small numerical noise.
Try dumping the raw 12bit samples and analyze them. You can use airspy_rx for that.