I am using an Agilent N5182B Signal Generator for modulating a 2-FSK waveform on a 160MHz RF carrier. For that, I am using a baseband waveform (I/Q mode), generated by a Matlab FSK modulator script.
The device allows for up to 4 markers to be associated with each sample. Those are essentially single bit values that can be output from dedicated digital output at the back panel of the device, and can be used to sync external devices/processes. According to the manual, the markers are in perfect sync to the associated samples in baseband. However, additional components in the RF path add delay, so the actual outputs are skewed.
How can I measure the time difference between the RF and EVENT outputs?
Note that the User Guide provides the information of how to compensate for a present delay, but there is no suggested procedure for measuring the actual delay.
Part of old description, removed for clarity:
I am using the 1st marker to signal when a preamble pattern is being transmitted in my repeating data packet waveform. The marker is set to "1" during the preamble and to "0" during the payload transmission. On my receiver, I am using the marker, as input through a GPIO pin, to sync the demodulator packet handler. Thus, I am waiting for a rising edge of the pin, then for a falling edge, and then decode the incoming data bits.
The problem is that the decoded bit stream is shifted (in time) by a random, small amount of bits relative to the actual transmitted stream. This means that the falling edge event, originating from the GPIO peripheral, is not in sync with the FSK demodulator and/or SERDES device events, that are originating from the RF front-end hardware.
I am trying to determine where this delay difference comes from. For starters, I want to verify that the N5182B's RF and Marker outputs are in perfect, or at least constant-shift, sync. How can I verify that, or measure the marker output's delay?