This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

IQ sample data format

Hi,

I have got some problem of understanding the IQ sampling data.

As below is the official data format

0: I_Q (default) Q 31:16 12 bits signed, sign extended to 16 bits
I 15:0

Does it mean for each IQ sample, I have 16bits Q then 16bits I?

And in each 16bits, the first 4 bits should be either 0xF or 0x0, because the first 4 bits are the sign bit extension, is it correct?

Then rest of the 12bits are the value converted from ADC, does it matter if it is int or float?

I got some IQ sample data, but the format is different from my expectation, I put some of them below, it just represents the first 4 IQ samples (or two sets),

F4FF, EBFF, FAFF, 0C00,

As you can see, the second sample starts with 0xE, not 0xF or 0x0, I have bunch of similar data not start with 0xF or 0x0,

Would you confirm if my understanding is correct?

Thanks

Pengyu

Parents
  • Hi,

    Does it mean for each IQ sample, I have 16bits Q then 16bits I?

    yes.

    And in each 16bits, the first 4 bits should be either 0xF or 0x0, because the first 4 bits are the sign bit extension, is it correct?

    yes.

    Then rest of the 12bits are the value converted from ADC, does it matter if it is int or float?

    it's a signed integer value.

    I got some IQ sample data, but the format is different from my expectation, I put some of them below, it just represents the first 4 IQ samples (or two sets),

    F4FF, EBFF, FAFF, 0C00,

    The values are in LSB byte order - if you swap bytes, you'll get right results. The real range when tested on my 52811 was about -300..+300 most of the time.

Reply
  • Hi,

    Does it mean for each IQ sample, I have 16bits Q then 16bits I?

    yes.

    And in each 16bits, the first 4 bits should be either 0xF or 0x0, because the first 4 bits are the sign bit extension, is it correct?

    yes.

    Then rest of the 12bits are the value converted from ADC, does it matter if it is int or float?

    it's a signed integer value.

    I got some IQ sample data, but the format is different from my expectation, I put some of them below, it just represents the first 4 IQ samples (or two sets),

    F4FF, EBFF, FAFF, 0C00,

    The values are in LSB byte order - if you swap bytes, you'll get right results. The real range when tested on my 52811 was about -300..+300 most of the time.

Children
Related