Round Trip Time Measurement Verification

Details

Date 13/02/2020
Location University of Bristol lab
People Stoyan Trilov

Test objective

The timing master firmware measures the round trip between itself and a timing endpoint by sending an “Echo” command, and waiting for the arrival of an “Echo” command back. The timestamps of when the echo command was sent and the return echo command was received are noted, with the round trip time given by the difference between the two. The trip time measurement result is therefore the number of clock ticks between the transmit and receive events, which be converted into seconds by using the clock frequency. The purpose of this test was to independently verify the round trip delay measurement.

Test setup

The test was performed using an AIDA 2020 TLU running a modified version of the “overlord_tlu” firmware, connected using a single mode fibre, to a timing FMC, carried by an enclustra AX3+PM3, with the “endpoint” firmware loaded. The firmware running on the timing master was modified so that two “sync” pulses were emitted, one when the echo command is sent and a second one when the return echo command is received. These pulses are routed out onto the first HDMI connector of the AIDA TLU. The path of the signals is as follows.
signal -> FPGA pin -> SO DIMM connector pin -> FMC connector pin -> HDMI connector pin
tx_pulse -> K3 ->   79 -> G18 (FMC_LA16_P) -> HDMI(0) 1 (DUT_CLK_FROM_FPGA)
rx_pulse -> R7 -> 118 -> G15 (FMC_LA12_P)  -> HDMI(0) 7 ( FPGA_BUSY)

The above HDMI pin may also output different signals, where the source of the output on the pins is controlled by two sets of I2C controlled GPIO chips. To enable the signal paths below, the following pins of the GPIO chips need to bet set high.

GPIO chip 0, IO1_3 (ENABLE_DUT_CLK_FROM_FPGA<0>)
GPIO chip 1, IO1_3 (ENABLE_BUSY_FROM_FPGA<0>)

The time between the two pulses was measured using the “Delta Delay” built-in measurement function of a WaveRunner 6 Zi series oscilloscope.

The modified firmware can be found here: https://gitlab.cern.ch/protoDUNE-SP-DAQ/timing-board-firmware/commit/3bd84c4e282a0e5379e2016272d67642e5bc8a38.

Test results

The output of the trip time measurement command was:

[st15719@bayban timing-board-software]$ pdtbutler mst PROD_MASTER align measure-delay 0
Created device PROD_MASTER
ID: design 'overlord' on board 'tlu' on carrier 'enclustra-a35'
Master FW rev: 0x50100, partitions: 4, channels: 5
Return EPT reset, waiting for lock
Endpoint locked: state=0x8
Endpoint locked
done 0x1
79080079984283670 79080079984283695 25

25 clock ticks correspond to 500 ns, which is compatible with the measurement given by the oscilloscope, shown in the image below.

pulse_waveforms.jpg

-- StoyanMiroslavovTrilov - 2020-02-19

Edit | Attach | Watch | Print version | History: r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r2 - 2020-03-05 - StoyanMiroslavovTrilov
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    CENF All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright &© 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback