Il White Rabbit (a volte abbreviato come WR) è un progetto tecnologico nato al CERN con l'obiettivo di rinnovare il proprio sistema di controllo e acquisizione dati. Il WR è un insieme di hardware, firmware e software, che consentono uno scambio di dati e una sincronizzazione temporale ad alta precisione tra vari dispositivi e strumenti interconnessi su di una rete locale Ethernet (IEEE 802.3). Data la natura open source del progetto molti altri partner hanno iniziato a contribuire al suo sviluppo. Nel 2024 è stato formalmente creato un progetto collaborativo, "The White Rabbit Collaboration", che raggruppa tutte le parti interessate. Il nome White Rabbit fa riferimento al Bianconiglio del racconto Le avventure di Alice nel Paese delle Meraviglie.
Obiettivi tecnologici Il progetto WR è nato perseguendo i seguenti obiettivi: Il trasferimento di un riferimento temporale da un nodo centrale a molteplici destinazioni con un'accuratezza migliore di 1 ns e una precisione migliore di 50 ps. Capacità di servire più di 1000 nodi. Capacità di coprire distanze nell'ordine di tra i nodi. Il trasferimento dei dati tra i nodi della rete deve avere una latenza inferiore ad una latenza massima definita.
Ulteriori obiettivi sono: Una banda Gigabit per il trasferimento dati. Hardware, firmware e software open source. Disponibilità di acquisto di prodotti WR da parte di molti produttori.
Tecnologia Il White Rabbit basa il suo funzionamento su standard esistenti. Il WR sfrutta una rete locale con Ethernet (IEEE 802.3), VLAN (IEEE 802.1Q) e l'uso del Precision Time Protocol PTP (IEEE 1588). Dal 2019 lo standard IEEE 1588-2019 è stato revisionato per integrare un profilo chiamato High Accuracy (HA) che integra i concetti base di funzionamento del WR.
Concetto di sincronizzazione Con il termine "sincronizzazione temporale" si intende che, ad un dato istante, tutti i nodi di un sistema condividano la stessa nozione dell'istante temporale corrente. In altre parole ogni nodo misura nello stesso modo lo scorrere del tempo ed è sempre in grado di fornire una marca temporale () concorde con tutti gli altri nodi nella rete.
Struttura della rete
Il WR ha una struttura gerarchica ad albero. Ogni dispositivo può avere una porta detta di uplink e una o più porte dette di downlink. Il nodo principale, chiamato granmaster, riceve il proprio riferimento temporale da una fonte esterna come, ad esempio, una sorgente GPS. Le porte di downlink del granmaster possono essere collegate direttamente ad un nodo finale, anche detto WR Ordinary Clock o nodo WR, oppure ad uno switch intermedio, anche detto WR Boundary Clock o Switch WR. A propria volta alle porte downlink di uno switch WR possono essere connessi dei nodi WR oppure una porta di uplink di un altro switch WR. Di conseguenza una rete WR può essere vista come un insieme di nodi indipendenti che hanno una sincronizzazione master-a-slave con porte Boundary Clocks o Ordinary Clocks.
Funzionamento Nei dispositivi elettronici digitali, come le strumentazioni e gli apparati di misura interconnessi in una rete WR, il tempo è scandito dalla presenza di un segnale elettronico denominato clock. Generalmente ogni dispositivo ha un oscillatore locale per generare il proprio clock e quindi una propria nozione dello scorrere del tempo. In alternativa, è possibile sincronizzare più dispositivi distribuendo un unico segnale di clock e adottando una procedura iniziale di azzeramento. Il WR, infatti, agisce su questo segnale.
In una rete WR ogni nodo è connesso tramite un link Ethernet, spesso con cavi in fibra ottica. Grazie allo standard SyncE è possibile recuperare il segnale di clock direttamente della linea di trasmissione dati, mediante uso di un circuito elettronico detto phase-locked loop (PLL).
Il ritardo introdotto nella propagazione del segnale, ossia la latenza, è dovuto al tipo di mezzo trasmissivo adoperato, alla distanza fisica tra i dispositivi e anche ai ritardi introdotti dall’hardware interno dei nodi di rete. Il protocollo PTP consente di stimare e compensare tale latenza, misurando il ritardo complessivo presente nella comunicazione tra due nodi.
Rispetto allo standard IEEE 1588, nel WR la misura effettuata dal PTP non parte sempre dal Best Master Clock (di solito il granmaster) ma può essere effettuata solo tra due nodi consecutivi. Questo implica che uno switch WR sia incaricato di gestire il protocollo IEEE 1588 e di effettuare lui stesso le misure relative al PTP dei nodi connessi alle sue porte di downlink.
Il White Rabbit (WR) estende il protocollo PTP tradizionale introducendo il protocollo WRPTP. La differenza è che il PTP può solo misurare il tempo complessivo di andata e ritorno (round-trip delay) del segnale tra due nodi, mentre il WRPTP è in grado di stimare l'asimmetria del collegamento nelle due direzioni. In particolare, può stimare sia i ritardi fissi sia quelli variabili nel tempo, migliorando così la precisione della sincronizzazione. Nella pratica il WRPTP introduce uno scambio messaggi ulteriore rispetto al normale PTP.
La precisione nella misura di latenza dello standard IEEE 1588 è limitata dalla risoluzione del clock utilizzato. In una rete Gigabit Ethernet il clock opera tipicamente alla frequenza di 125 MHz, corrispondenti a un periodo di tempo pari a 8 ns. Di conseguenza, anche un dispositivo WR, che ricostrisce il proprio segnale di clock tramite SyncE, sarebbe limitato a una risoluzione temporale di 8 ns nella fase di marcatura temporale del WRPTP. Per questo motivo il WR effettua anche un'ulteriore misura di fase tra il clock ricostruito e il clock di riferimento per avere un'informazione più fine rispetto a 8ns e ottenere una correzione della latenza inferiore al nanosecondo.
WR PTP core
Il WR PTP core è una descrizione Hardware description language (HDL) che implementa su Field Programmable Gate Array (FPGA) le funzionalità descritte ed è responsabile per il funzionamento del WR. Infine il nodo WR che rappresenta l'applicazione finale sarà l'insieme del WR PTP core e hardware su misura in funzione dei requisiti e della funzione che dovrà svolgere.
Applicazioni La prima implementazoine sul campo fu al Gran Sasso per misurare la velocità di propagazione dei neutrini. Il KM3NeT è un telescopio che usa il White Rabbit per sincronizare le varie unità del rivelatore. L'EISCAT 3D è un radar che utilizzerà il White Rabbit per la sincronizzazione delle antenne per il beam-forming. Il Gesellschaft für Schwerionenforschung (GMT) basato su WR ha sostituito il sistema precedentemente in uso per gli acceleratori esistenti del GSI e sarà utilizzato per controllare la nuova struttura del GSI denominata Facility for Antiproton and Ion Research (FAIR). In ambito di ricerca il WR viene sempre più sfruttato per la realizzazione di Time to digital converter.
Note
Bibliografia
Voci correlate CERN Fibra ottica Field Programmable Gate Array Marca temporale Precision Time Protocol Synchronous Ethernet
Collegamenti esterni
Categoria:Ethernet Categoria:Sistemi di misura del tempo Categoria:Circuiti elettronici