Dear all,
Last week, I posted a
where I was analyzing IQ signals with a regular oscilloscope, showing both vector and constellation diagrams. The signals were generated by a device specially designed for that, an R&S SMIQ. In response to the video, several people asked whether it would be possible to do such measurements without having such a specialist device.
Yes, I think that is possible: one can record ‘real’ IQ signals and play them back on a waveform generator with ARB capabilities. This opens up a lot of possibilities for testing (like components and boards supporting IQ) as well as measurements, even if this option does not have all the flexibility and setting of a full IQ generator.
I decided to create such a recorded IQ stream and share it with you here. It is generated with the SMIQ with the following settings: QAM32, 5ksymbols/s, PRBS9 data stream, Gaussian Filter 1.00.
The data set I made includes 4 signals:
1) The I channel, ranging from -1.0 to +1.0 volts
2) The Q channel, ranging from -1.0 to +1.0 volts
3) A positive pulse symbol clock of approx. 3.3 volts
4) A positive PRBS9 sequence clock of approx. 3.3 volts
The data was captured with an R&S RTB oscilloscope in 10-bit resolution. I truncated the original recording in such a way that it is exactly cyclical and in sync when played in a loop. There is one single sequence pulse in the loop, marking the beginning of a new PRBS sequence.
The resulting data set has 111,086 values, so it can play back in any ARB generator with more than 112kpoints (my Siglent SDG2042X has 8Mpoints, so really more than enough; but if your generator has too little points than just take every other value for instance).
I have uploaded the following data files
here on GitHub:
IQ_for_ARB_full_data_set.xlsx (14MB zipped) | the full data set, including some graphs for the overall signal and experts of it |
SDS2k_I_channel.csv (2.2MB) | a single channel file for the I channel in a CSV format that can be directly uploaded with a USB stick into the Siglent SDG2042X signal generator |
SDS2k_Q_channel.csv (2.2MB) | same for Q channel |
In the attached screen-prints, you can see the signal from a Siglent SDG2042X playing back to various oscilloscopes. Since the signal generator only has two outputs, I was lacking a third output for the sequence clock. To generate that, I took a second signal generator, connected both to the same 10MHz reference clock, and set the second one to a block wave of 1kHz (same as the ARB sequence speed I set). That square was used as a third sync line to the scope for triggering. Then we got stable triggering over a sequence, although the trigger may be at any point in the sequence, not the exact beginning of the PRBS sequence. Should you care for that, then use two signal generators, have the second playing back the third and fourth signal, and make sure the two generators are synced.
Enjoy!
.rudi