Running simple SPEC-to-SPEC White Rabbit demo
Introduction
This wiki page describes how to set up the simpliest White Rabbit demo. It uses two SPEC PCIe cards, one of them is configured as White Rabbit Master and provides timing information to the other SPEC which is White Rabbit Slave.
What is needed ?
To test basic White Rabbit synchronization you need:
- two desktop computers running GNU/Linux operating system, each having at least one free PCI-Express x4 slot;
- two SPEC boards;
- a pair of single fiber, bidirectional SFP transceivers (the list of WR compliant SFPs );
- two Digital IO FMC (DIO) boards;
- a roll of G652, single mode fiber.
Note: The components needed for this demo can be bought from companies listed in the projects' web pages (SPEC, FMC DIO).
Step-by-step to get your boards synchronized
1. Plug one DIO FMC board to each of your SPECs:
2. Plug the SFP transmitting downstream (table) to the SPEC board which will be later configured as WR Master (please note the violet color of the downstream transceiver):
3. Plug the SFP transmitting upstream (table) to the SPEC board which will be later configured as WR Slave (please note the blue color of the upstream transceiver).
4. Put each of the SPEC board into the PCIe slot of a PC.
Note: This manual descibes a simple configuration of SPEC-to-SPEC demo, where each board is plugged into a separate computer. You can put both PCIe cards in a single computer but then please read the spec-sw manual describing how to use the kernel drivers and userspace software with two cards.
5. Connect the two SPEC boards with the fiber cable.
6. Get the release binaries of the White Rabbit PTP Core (WRPC):
binaries
and please follow the instructions in section 3 of the official WRPC
documentation on how to download
them to the FPGA and make a basic configuration of the White Rabbit PTP
Core.
7. In basic configuration your Master SPEC can use its internal free-running oscillator as a time reference. However, you can also discipline your Master SPEC with external 10 MHz and 1-PPS signal by connecting them to the appropriate LEMO connectors of DIO FMC board:
After that the SPEC has to be set to GrandMaster so that it will discipline its internal oscillator to provided 10MHz and 1-PPS and propagate this timing information to WR Slave:
wrc# mode grandmaster
wrc# ptp start
8. Finally, on your Slave SPEC you can use the LEMO no.1 connector on the DIO FMC to get the 1-PPS output signal and compare it with the one fed into the WR Master to check the quality of WR synchronization.
You can also use the GUI available from WRPC Shell (the description on how to connect to WRPC Shell can be found in White Rabbit PTP Code documentation) to monitor the satus of WR Slave synchronization:
wrc# gui