3.2 Il Trasferimento dei Dati
3.2.1 Acquisizione Dati e Selezione degli Eventi
Separati dal punto di vista funzionale (l’Acquisizione dati si occupa del trasporto
fisico mentre la Selezione decide sulla bont `a delle misure effettuate), questi due
sistemi sono in realt`a intimamente connessi da una complicata rete di scambio di informazione.
Consideriamo innanzitutto l’architettura dell’insieme (figura 3.1), esaminando la funzione delle singole componenti presenti lungo il Flusso dei Dati.
Online Database and Information Services
Controls Link to SFIs DFM L2SVs RoIB LVL2 & EB Networks LVL1 RODs ROB ROB L2Ps Mass Storage SFOs Offline Conditions Database Systems External EFN EFPs
HLT/DAQ and Detector Controls
Services Online Link to ROSs
RoIs ROLs
Figura 3.1:Architettura generale delle componenti e loro relazioni [1].
Dopo essere stati acquisiti dall’elettronica difront–end i dati vengono invia- ti alla prima unit`a di elaborazione lungo il Flusso dei Dati: il Read-Out Driver (ROD). Questo modulo `e specifico dei singoli rivelatori e viene utilizzato per la formattazione dei dati associati ad ogni evento in unit`a dette frammenti (cfr. 3.2.2) prima della loro spedizione ai livelli successivi del Sistema di Acquisizione.
Pi`u ROD corrispondenti alla stessa parte di rivelatore1 sono riuniti all’inter- no di un ROD Crate DAQ (RCD) pilotato da un processore autonomo, detto ROD Crate Processor (RCP). Pi`u crate RCD vengono controllati da un elaboratore dedicato, dettoROD Crate Workstation(RCW) (figura 3.2).
Figura 3.2:Diagramma a blocchi del contesto e dei contenuti della acquisizione al livello del ROD [1].
Come si vede, una unit`a RCD comprende sia le componenti elettroniche che in- formatiche per operare sui dati in suo possesso ed eseguire cos`ı semplici ope- razioni: ad esempio pu`o effettuare campionamenti o ricerca di informazioni di calibrazione.
Sebbene dotato di diverse funzionalit`a, concettualmente un ROD `e classificato come l’ultimo stadio della elettronica di lettura e, pertanto, la responsabilit`a della loro programmazione e gestione durante la presa dati rimane a carico dei gruppi che si occupano dei singoli rivelatori. Nel caso di TileCal un ROD riceve dati da 8 moduli, corrispondenti ad una sezione∆φ ' 0.8 di uno dei tre cilindri (centrale e laterali) in cui questo rivelatore `e suddiviso. Nel ROD i dati ricevuti da ogni fotomoltiplicatore vengono analizzati per estrarre l’energia ed il tempo a cui `e avvenuta l’interazione. Nel caso di TileCal una unit`a RCD corrisponde ad una sezione completa dei cilindri laterali od a meta di quello centrale (figura 3.3).
Quantitativamente ci sono circa 1600 ROD in tutto il sistema, ognuno dei quali spedisce un frammento per ogni evento all frequenza della Selezione di Primo Livello, cio`e fino a 100 kHz.
Come evidenziato in figura 3.2 e 3.4, i ROD trasmettono i dati alla prima unit`a del Sistema di Acquisizione propriamente detto, ilRead-Out Sub-system(ROS),
attraverso una connessione in fibra ottica(Read-Out Link), con una velocit`a mas- sima di 160 MB/s.
Una unit`a ROS raggruppa tutti i dati provenienti da pi`u crate RCD. Nel caso di TileCal ognuna delle quattro partizioni possiede due ROS, pertanto la Sezione Centrale avr`a disposizione quattro ROS (figura 3.3).
Extended Barrel
Barrel
8 ROD 16 ROD 8 ROD
4 ROS 2 ROS 2 ROS 1 ROD Crate DAQ 2 ROD Crate DAQ 1 ROD Crate DAQ Extended Barrel
Figura 3.3: Componenti della acquisizione dati per il calorimetro TileCal.
I frammenti provenienti dai ROD sono immagazzinati all’interno dei Read- Out Buffer(ROB). Ad ogni ROL corrisponde un ROB mentre questi ultimi (tipi- camente in numero di due o quattro) sono associati su una scheda ROBIN(Read- Out Buffer INput), contenuta nel ROS (figura 3.4). Il ROS e le sue componenti ROB svolgono due funzioni: conservare temporaneamente i dati di un evento e soddisfare le richieste della Selezione di Alto Livello, rifornendo sia il Livello 2 che lo stadio successivo di formattazione, come vedremo fra poco.
Il successivo stadio percorso dai frammenti di un evento `e costituito dall’Event Builder, un insieme di elaboratori biprocessore (circa 90 per tutto ATLAS), dedi- cati all’assemblaggio preliminare di un evento completo delle misure di tutti i diversi rivelatori. All’EB si accede attraverso il collegamento di rete(Event Buil- der Network) per il trasferimento dei frammenti dai ROS alle varie unit`a di cui `e formato l’EB, detteSub-Farm Input(SFI). Gli eventi cos`ı formattati vengono poi
RoIB L2SVs LVL1 Mass Storage DFM pROS SW RODs SFO SFO SFI SFI SW
ROB ROB ROB ROB
ROBIN
ROB ROB ROB ROB
ROBIN ROS RoIs ROLs EBN L2N CTRL EFN L2P EFP
Figura 3.4: Implementazione del Flusso dei Dati e della Selezione di Alto Livello e loro interazione [1].
inviati allo stadio successivo di selezione attraverso la rete(Event Filter Network). Entrambe le reti EBN ed EFN sono costruite utilizzando una infrastruttura Giga-
bit Ethernet per permettere lo spostamento di masse di dati relativamente grandi
alla frequenza di assemblaggio degli eventi ngli SFI, tipicamente di alcuni kHz. L’ultima stazione lungo il Trasferimento Dati `e costituito dal sistema Sub- Farm Output(SFO), che si occupa della scrittura di un evento intero (completo anche delle informazioni provenienti dai tre livelli di selezione) su un dispositivo di memorizzazione permanente. Si calcola che, a regime, ATLAS necessiter`a di 30 elaboratori biprocessore per lo svolgimento di questo compito.
Lo svolgersi delle operazioni di trasferimento e la sincronizzazione fra le va- rie parti sono coordinate dal Gestore del Flusso di Dati (DataFlow Manager), cosituito da un insieme di circa 35 elaboratori.
Con riferimento sia alla figura 3.1 che alla 3.4, vediamo le relazioni che inter- corrono fra Sistema di Acquisizione e Selezione di Alto Livello. I dati degli eventi accettati dalla Selezioni di Livello 1 sono spediti dalla elettronica di lettura del
rivelatore (nella fattispecie i ROD) ai ROS e accumulati in buffer ROB. In paralle- lo, alcune informazioni che riguardano la disposizione delle Regioni di Interesse2
identificate dal Livello 1 sono inviate alla Supervisione del Livello 2 (il processo principale per la gestione delle operazioni di LVL2, indicato in figura 3.1 con la sigla L2SVs) per guidare l’ulteriore selezione degli eventi. La figura 3.5 mostra la relazione fra le varie componenti della Selezione di Alto Livello (cfr. 2.2.10), con l’indicazione dei messaggi utilizzati per l’esecuzione delle operazioni.
<<subsystem>> LVL2Supervisor <<subsystem>> LVL2Processing Unit <<subsystem>> ROS <<subsystem>> EventBuilding <<subsystem>> DataBaseLoader <<subsystem>> EventHandler <<subsystem>> EventFilterIO 4:send(LVL2Decision) 2:LVL2Selection() 8:EFSelection() 1:send(LVL1Result) 3.2:send(LVL2Decision) 5.1:Request(EventFragments) 2.1:Request(EventFragments) 3.1:Send(LVL2DetailedResult) 2.2:Send(EventFragments) 6:Send(Event) 7:Send(Event) 9:Send(Event) 10:Send(Event) 5.2:Send(EventFragments) LVL2 Selection and EF Selection accepts or rejects event.
Figura 3.5:Interazione fra le componenti della Selezione di Alto Livello [1].
Il Supervisore del Livello 2 spedisce i risultati del Livello 1 agli elaboratori dedicati (identificati, in figura 3.1 con la sigla L2P, LVL2 Processors), dove la selezione avviene effettivamente. Utilizzando i risultati del Livello 1 come guida, gli algoritmi specializzati del Livello 2 richiedono ai ROS solo un sottoinsieme dei dati disponibili per effettuare la selezione sugli eventi. In questo modo solamen- te una frazione corrispondente a qualche centesimo della massa di informazione totale deve essere spostato effettivamente al Livello 2, riducendo cos`ı la banda ne- cessaria per il trasferimento. Quando un evento viene accettato anche dal Livello 2, i dettagli della selezione sono spediti ai ROS per essere inclusi nella format- tazione. Inoltre il Supervisore viene messo al corrente della decisione, e questi provvede ad informarne l’EB, lo stadio finale della formattazione. All’interno
2La Regione di Interesse(Region Of Interest o ROI) `e una regione limitata inη e φ, indica-
ta dalla Selezione di Livello 1, che contiene candidati per oggetti che necessitano una ulteriore analisi.
dell’EB, un SFI assembla l’evento accettato in un unico blocco. L’evento assem- blato `e quindi passato alla Selezione di Livello 3, dove vengono applicati algo- ritmi post-acquisizione guidati dalle informazioni dei Livelli 1 e 2 per raffinare ulteriormente la selezione degli eventi.
Il lavoro computazionale effettuato dal Livello 3 `e veramente imponente e a questo scopo saranno dedicate le risorse maggiori in termini di numero di proces- sori (circa 3200, pi`u del triplo di quelli del Livello 2) e connessioni di rete (circa 1700 porte per la rete EFN) utilizzate.
A conclusione del processo di raffinamento finale gli eventi sono trasferiti all’SFO per essere memorizzati su supporti permanenti.