12 group iq packing - giqp chunk, Products – Wavecom PXGF streaming format (GEW) V1.24 User Manual

Page 14

Advertising
background image

C

op

yr

ig

ht

:

©

G

rin

te

k

E

w

at

io

n

20

07

GSY-0D8-SE

RESTRICTED

Interface Requirement Specification for PXGF Streaming and File Format

Element

Type

Description

lTimestamp

int64

The timestamp of the first sample in microsecond
resolution, this is the number of microseconds since
beginning of the epoch

awIQData

int16[(length of the
group IQ data
array]

IQ pairs of signed int16 short numbers. Note that
regardless of the number of valid bits, the most
significant bits in each short should be used. This
allows us to specify the full-scale level without needing
to

specify

the

number

of

bits.

The packing used is described by the GIQP chunk.

Table 3.12: The GSIQ chunk

3.4.12 Group IQ Packing - GIQP chunk

Since the GSIQ chunk supports many variations in contents, the content specific information is
supplied by the GIQP chunk, and is required to parse the chunk correctly.

Element

Type

Description

iNumChannels

int32

The number of channels in the group

iIsIQPacked

int32

Value 1 for IQ ordering and value 0 for QI ordering. The
first int 16 in the awIQData array mentioned above is
an “I” sample if the value is 1.

iIncrement

int32

The number of samples to increment to read the next
sample for a particular channel. The value of
iIncrement will be 1 or iNumChannels.

aiChannelOffset

int32[iNumChannels] The channel offset to the start of each channel given in

samples where a sample is an IQ pair.

Table 3.13: The GIQP chunk

Examples:

Take a stream which contains 4 channels of IQ data A,B,C and D. If the data were packed as follows
(where N = number of samples per channel):

A[0] A[1] A[2] ... A[N-1] B[0] B[1] B[2] ... B[N-1] C[0] C[1] C[2] ... C[N-1] D[0] D[1] D[2] ... D[N-1]

For this packing scheme: iIncrement = 1 and aiChannelOffset = [0 N 2N 3N]

A[0] A[1] A[2] ... A[N-1] B[0] B[1] B[2] ... B[N-1] D[0] D[1] D[2] ... D[N-1] C[0] C[1] C[2] ... C[N-1]

For this packing scheme: iIncrement = 1 and aiChannelOffset = [0 N 3N 2N]

A[0] B[0] C[0] D[0] A[1] B[1] C[1] D[1] A[2] B[2] C[2] D[2] ... A[N-1] B[N-1] C[N-1] D[N-1]

For this packing scheme: iIncrement = 4 and aiChannelOffset = [0 1 2 3]

Products

2009-01-13

RESTRICTED

Page 13

Issue 1.24

Advertising