Thank you Nick!
These explanations are very helpful! Do you know any reference where the
FIR filter and buffering in the USRP are documented? I would like to study
more about them.
I appreciate your help a lot.

Wei

Nick Foster <[email protected]> 于2021年6月16日周三 下午7:00写道:

> I am guessing you mean X310, since E310 doesn't take daughterboards. You
> are seeing the effect of FIR filter delay in the USRP's halfband filters.
> You can confirm this by setting the sample rate to (for instance)
> 200Msps/511. The use of an odd factor will result in lower filter delay but
> increased amplitude error toward the edges of the received spectrum.
>
> This effect also occurs on the TX side, but because the timed transmission
> is queued and buffered at the radio component (which operates at 200Msps)
> after upconversion, the resulting latency will be much smaller: 200Msps/42,
> or about 200ns.
>
> Nick
>
> On Wed, Jun 16, 2021 at 2:09 AM Huang Wei <[email protected]> wrote:
>
>> Hi all,
>>
>> I am very new to Gnuradio and USRP, and I have a question about the code
>> transmission delay between USRPs.
>> I have two USRP E310 with UBX160 daughterboards. I send a sequence of
>> code from one USRP using simple amplitude modulation, and receive it by
>> another USRP. On the receiver side, I use a replica of the code to
>> cross-correlate with the received code to compute the transmission delay.
>> However, I can’t explain this delay I obtained:
>>
>>    1. when I set the sample rate to 200MHz/128, the delay is 26.837 us
>>    (≈ 42 samples);
>>    2. Sample rate to 200 MHz/256, the delay is 0.0537 ms (≈ 42 samples);
>>    3. Sample rate to 200 MHz/512, the delay is 0.105 ms (≈ 41 samples).
>>
>> Also I recorded the date received by the USRP, it clearly shows that, no
>> matter the sample rate is, the USRP source starts to receive the code after
>> the 41st samples, and before are some strange values. You can find them in
>> the attached plot.
>>
>> My questions are
>>
>>    1. why the transmission delay of the code are based on certain number
>>    of samples? should it be a certain value (some micro or Pico second)? In 
>> my
>>    case this delay changes with the sample rate.
>>    2. what are those values received by USRP before the received code?
>>    they have some similar behaviors.
>>    3. Maybe it’s not the correct way to check the transmission delay. Is
>>    there any better method for measuring it (e.g. adding time stamps)? I used
>>    USRP “rx_time” stream tags, and it always shows (xxx, 5e-9), like when it
>>    starts to receive something, maybe only the noise.
>>
>> (Additionally, both USRPs have their 1 PPS and frequency ref synchronized
>> to the external high quality atomic clock. And I set them to start
>> transmit/receive data at exactly the same time.)
>>
>> I appreciate a lot for any comment or advice !
>>
>

Reply via email to