Il sistema di selezione dei muoni per il trigger del

Transcript

Il sistema di selezione dei muoni per il trigger del
Università degli Studi di Bologna
FACOLTÀ DI SCIENZE MATEMATICHE FISICHE E NATURALI
Dipartimento di fisica
Corso di laurea in fisica
Il sistema di selezione dei muoni
per il trigger del rivelatore CMS
Tesi di laurea di:
Luigi Guiducci
Relatore:
Chiar.mo Prof. Antonio Maria Rossi
Correlatori:
Dott. Alessandro Montanari
Dott. Fabrizio Odorici
I Sessione
Anno accademico 2001-2002
Università degli Studi di Bologna
FACOLTÀ DI SCIENZE MATEMATICHE FISICHE E NATURALI
Dipartimento di fisica
Corso di laurea in fisica
Il sistema di selezione dei muoni
per il trigger del rivelatore CMS
Tesi di laurea di:
Luigi Guiducci
Relatore:
Chiar.mo Prof. Antonio Maria Rossi
Correlatori:
Dott. Alessandro Montanari
Dott. Fabrizio Odorici
I Sessione
Anno accademico 2001-2002
CMS – trigger – muoni – VHDL – processori digitali
Indice
Introduzione
xi
1 L’esperimento CMS a LHC
1
1.1
Il collisionatore LHC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1.2
Fisica a LHC: il Modello Standard ed il bosone di Higgs
. . . . . . . . . .
5
1.3
Il rivelatore CMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
1.4
I rivelatori per muoni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.4.1
Il sistema di tubi a deriva del barrel . . . . . . . . . . . . . . . . . . 13
1.4.2
Il sistema di CSC degli endcap . . . . . . . . . . . . . . . . . . . . . 18
1.4.3
Le camere a piani resistivi . . . . . . . . . . . . . . . . . . . . . . . 19
2 Il sistema di trigger dei muoni
2.1
Generalità . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.1.1
2.2
21
Sincronizzazione e latenza del sistema di trigger . . . . . . . . . . . 22
Il trigger di primo livello dei muoni . . . . . . . . . . . . . . . . . . . . . . 23
2.2.1
Struttura del sistema di trigger dei muoni . . . . . . . . . . . . . . 26
2.3
Il trigger locale delle camere a deriva . . . . . . . . . . . . . . . . . . . . . 27
2.4
Il trigger regionale delle camere a deriva . . . . . . . . . . . . . . . . . . . 30
2.5
2.4.1
I Sector Processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.4.2
Il Track Finder in η . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.4.3
Wedge Sorter e Barrel Sorter . . . . . . . . . . . . . . . . . . . . . . 36
Trigger di CSC, RPC e globale
2.5.1
. . . . . . . . . . . . . . . . . . . . . . . . 36
Il trigger delle CSC . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
i
ii
INDICE
2.6
2.5.2
Il trigger delle RPC . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.5.3
Il trigger globale dei muoni . . . . . . . . . . . . . . . . . . . . . . . 38
Prestazioni del sistema di trigger dei muoni . . . . . . . . . . . . . . . . . . 39
3 Requisiti di fisica e funzionalità del Wedge Sorter
3.1
Interesse per trigger di coppie di muoni . . . . . . . . . . . . . . . . . . . . 44
3.1.1
3.2
3.3
Decadimento in muoni del bosone di Higgs . . . . . . . . . . . . . . 44
Tracce fantasma (ghost) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.2.1
Ghost nel trigger locale . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.2.2
Ghost generati dal trigger regionale . . . . . . . . . . . . . . . . . . 51
Requisiti e algoritmo del Wedge Sorter . . . . . . . . . . . . . . . . . . . . 53
3.3.1
Simulazione dell’algoritmo di soppressione dei ghost del Wedge Sorter 55
3.3.2
Segnali e sincronizzazione del Wedge Sorter . . . . . . . . . . . . . 56
4 Progettazione del Wedge Sorter
4.1
4.3
61
L’architettura del trigger regionale . . . . . . . . . . . . . . . . . . . . . . 61
4.1.1
4.2
43
I moduli del trigger regionale dei tubi a deriva . . . . . . . . . . . . 62
Scelta tecnologica per il Wedge Sorter . . . . . . . . . . . . . . . . . . . . . 64
4.2.1
Tecnologie disponibili . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.2.2
Valutazioni comparative delle tecnologie . . . . . . . . . . . . . . . 66
4.2.3
Dispositivi programmabili . . . . . . . . . . . . . . . . . . . . . . . 67
Metodologia, sviluppo e verifica del progetto . . . . . . . . . . . . . . . . . 69
4.3.1
Elementi di portabilità del progetto . . . . . . . . . . . . . . . . . . 69
4.3.2
Metodologia di sviluppo . . . . . . . . . . . . . . . . . . . . . . . . 71
4.3.3
Architettura del Wedge Sorter . . . . . . . . . . . . . . . . . . . . . 75
4.3.4
Architettura del Sorter Core . . . . . . . . . . . . . . . . . . . . . . 78
4.3.5
Codice generato automaticamente . . . . . . . . . . . . . . . . . . . 80
4.3.6
Emulatore C++ del Wedge Sorter . . . . . . . . . . . . . . . . . . . 81
4.4
Risultati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.5
Scheda VME per il Wedge Sorter . . . . . . . . . . . . . . . . . . . . . . . 84
INDICE
iii
Conclusioni
87
Appendice A
Accesso JTAG al dispositivo
89
Appendice B
Supporto C++ alla progettazione
93
Appendice C
Caratteristiche del dispositivo Altera Apex20KE
97
iv
INDICE
Elenco delle tabelle
1.1
Parametri funzionali di LHC . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1
Rapporti di decadimento di Higgs di masse 135, 160 e 250 GeV con una
4
coppia di muoni nello stato finale. . . . . . . . . . . . . . . . . . . . . . . . 46
3.2
Risultati sulla ricostruzione di muoni singoli in presenza dell’algoritmo di
cancellazione dei ghost del Wedge Sorter. . . . . . . . . . . . . . . . . . . . 55
3.3
Dati inviati dai Sector Processor al Wedge Sorter . . . . . . . . . . . . . . 57
3.4
Descrizione dei valori di qualità delle tracce . . . . . . . . . . . . . . . . . 58
4.1
Moduli del trigger regionale dei tubi a deriva . . . . . . . . . . . . . . . . . 62
4.2
Tabella comparativa dei dispositivi Xilinx e Altera. . . . . . . . . . . . . . 68
4.3
Funzioni dell’emulatore C++ del Wedge Sorter
4.4
Confronto dei risultati sui due dispositivi Xilinx e Altera . . . . . . . . . . 82
v
. . . . . . . . . . . . . . . 81
vi
ELENCO DELLE TABELLE
Elenco delle figure
1.1
Catena di acceleratori del CERN. . . . . . . . . . . . . . . . . . . . . . . .
2
1.2
Sezione del dipolo di LHC. . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.3
Struttura dei pacchetti di protoni nel fascio di LHC . . . . . . . . . . . . .
4
1.4
I 4 esperimenti a LHC . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
1.5
Sezione d’urto di alcuni canali inelastici per interazioni p-p. . . . . . . . . .
6
1.6
Modi principali di produzione dell’Higgs e corrispondenti sezioni d’urto. . .
7
1.7
Larghezza intrinseca del bosone di Higgs . . . . . . . . . . . . . . . . . . .
8
1.8
Vista prospettica del rivelatore CMS. . . . . . . . . . . . . . . . . . . . . .
9
1.9
Calorimetro elettromagnetico di CMS . . . . . . . . . . . . . . . . . . . . . 11
1.10 Sezione di un tubo a deriva. . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.11 Sezione di una stazione per muoni del barrel. . . . . . . . . . . . . . . . . . 15
1.12 Sezione trasversale del rivelatore CMS. . . . . . . . . . . . . . . . . . . . . 15
1.13 Tecnica del meantimer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.14 Disposizione delle stazioni di CSC per muoni in avanti e orientamento dei
fili e delle strip nelle stazioni. . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.1
Schema logico del trigger di CMS . . . . . . . . . . . . . . . . . . . . . . . 22
2.2
Frequenze attese di eventi ad uno e due muoni . . . . . . . . . . . . . . . . 24
2.3
Curve di efficienza per i tagli di trigger sul PT dei muoni. . . . . . . . . . . 25
2.4
Schema complessivo del trigger di primo livello per muoni. . . . . . . . . . 26
2.5
Schema del trigger locale dei tubi a deriva. . . . . . . . . . . . . . . . . . . 28
2.6
Schema logico del Trigger Regionale dei tubi a deriva. . . . . . . . . . . . . 31
vii
viii
ELENCO DELLE FIGURE
2.7
Schema logico del Sector Processor dei tubi a deriva. . . . . . . . . . . . . 32
2.8
Settori da cui un SP riceve segmenti di traccia.
2.9
Schema logico dell’Eta Track Finder. . . . . . . . . . . . . . . . . . . . . . 35
. . . . . . . . . . . . . . . 33
2.10 Principio di funzionamento del trigger locale delle CSC. . . . . . . . . . . . 37
2.11 Principio di funzionamento del trigger delle RPC. . . . . . . . . . . . . . . 38
2.12 Risoluzione sul PT del trigger dei tubi a deriva. . . . . . . . . . . . . . . . 40
2.13 Efficienze di GMT, CSC, DT e RPC in funzione di η. . . . . . . . . . . . . 41
2.14 Efficienze di GMT, DT e RPC in funzione di φ nel barrel. . . . . . . . . . 41
2.15 Efficienza di GMT, CSC e RPC in funzione di φ nell’endcap. . . . . . . . . 41
2.16 Efficienze di GMT, DT e RPC in funzione di PT nel barrel. . . . . . . . . . 42
2.17 Efficienze di GMT, CSC e RPC in funzione di PT negli endcap. . . . . . . 42
2.18 Percentuali di falsi doppi muoni di GTM, CSC, RPC e DT in funzione di η 42
3.1
Frazioni di decadimento del bosone di Higgs in funzione della massa . . . . 45
3.2
Distribuzione ∆η∆φ tra i due muoni per MH 0 = 135 GeV
. . . . . . . . . 47
3.3
Distribuzione ∆η∆φ tra i due muoni per MH 0 = 160 GeV
. . . . . . . . . 48
3.4
Distribuzione ∆η∆φ tra i due muoni per MH 0 = 250 GeV
. . . . . . . . . 48
3.5
Correlazioni di spin in H 0 → W + W − → µ+ νµ µ− ν¯µ . . . . . . . . . . . . . 49
3.6
Evento simulato di H 0 → Z 0 Z 0 → µ+ µ− µ+ µ− , per MH 0 = 150 GeV.
3.7
Esempi di generazioni di ghost nei Sector Processor dei tubi a deriva. . . . 52
3.8
Efficienza di identificazione di coppie di muoni in funzione della loro sepa-
. . . 49
razione angolare. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.9
Blocchi logici del Wedge Sorter . . . . . . . . . . . . . . . . . . . . . . . . 59
4.1
Sala sperimentale e counting room sotterranee di CMS . . . . . . . . . . . 62
4.2
Struttura del trigger regionale . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.3
Opzioni tecnologiche disponibili . . . . . . . . . . . . . . . . . . . . . . . . 65
4.4
Esempio del risultato della compilazione di codice VHDL per un dispositivo
programmabile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.5
Metodologia di sviluppo e controllo del progetto. . . . . . . . . . . . . . . . 72
ELENCO DELLE FIGURE
ix
4.6
Ambiente di lavoro di Quartus. . . . . . . . . . . . . . . . . . . . . . . . . 74
4.7
Schema completo del Wedge Sorter . . . . . . . . . . . . . . . . . . . . . . 76
4.8
Schema del Sorter Core
4.9
Rappresentazione schematica della scheda del Wedge Sorter. . . . . . . . . 85
5.1
Schema del funzionamento del sistema di Boundary Scan JTAG. . . . . . . 90
5.2
Struttura della catena di registri di configurazione.
5.3
Struttura interna di un registro di configurazione. . . . . . . . . . . . . . . 92
5.4
Applicazioni C++ per lo sviluppo di progetto . . . . . . . . . . . . . . . . 93
5.5
Applicazione C++ per la generazione del codice VHDL combinatorio. . . . 94
5.6
Applicazione C++ per la generazione dei vettori di test. . . . . . . . . . . 94
5.7
Schema funzionale di un blocco logico del dispositivo Altera Apex. . . . . . 98
5.8
Struttura di un Logic Array Block del dispositivo Apex. . . . . . . . . . . . 99
5.9
Struttura di un megaLAB del dispositivo Apex. . . . . . . . . . . . . . . . 99
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
. . . . . . . . . . . . . 91
5.10 Struttura interna del dispositivo Apex di Altera. . . . . . . . . . . . . . . . 100
x
ELENCO DELLE FIGURE
Introduzione
Il collisionatore LHC (“Large Hadron Collider”) in costruzione al CERN di Ginevra accelererà protoni fino ad una energia nel centro di massa di 14 TeV. A questa energia sarà
possibile cercare risposte a quesiti ancora aperti, come l’esistenza del bosone di Higgs,
particella prevista dal Modello Standard e non ancora rivelata sperimentalmente, o fenomeni previsti da modelli più generali, come le teorie supersimmetriche. Le sezioni d’urto
dei rari processi cercati sono però diversi ordini di grandezza inferiori alla sezione d’urto
totale protone-protone a queste energie. Per poter produrre questi processi con sufficiente
statistica, LHC raggiungerà luminosità molto elevate, e i fasci di protoni si incroceranno
in ogni punto di interazione ad una frequenza di 40 MHz. Un efficiente sistema di trigger
è necessario per poter separare gli eventi interessanti dagli eventi di fondo.
Il rivelatore CMS (Compact Muon Solenoid), uno dei quattro esperimenti che saranno
disposti lungo la circonferenza di LHC, è stato progettato per avere un’alta efficienza nella
rivelazione e nella misura di muoni ad alto impulso trasverso in quanto essi costituiscono
una firma lasciata nello stato finale da molti processi fisici interessanti. CMS utilizza un
complesso sistema di trigger, organizzato su due livelli, che riduce a 100 Hz la frequenza di
eventi destinati all’acquisizione, per un fattore di riduzione totale superiore a 105 . Esso è in
grado di ricostruire le tracce dei muoni che attraversano il rivelatore e calcolarne l’impulso
trasverso. Il sistema poi decide se l’evento è da ritenersi interessante in base all’impulso
trasverso dei muoni rivelati e ad altre condizioni che si verificano nei calorimetri.
Il lavoro discusso in questa tesi si inserisce nell’ambito del sistema di trigger per la
selezione dei muoni ricostruiti nella regione del barrel. Il sistema di trigger dei muoni
è composto da varie unità di elettronica, che a partire dai segnali raccolti dai singoli
xi
xii
Introduzione
sottorivelatori ricostruiscono, in fasi successive, segmenti di traccia, selezionano i migliori,
e li combinano fino a formare delle tracce complete. I candidati muoni cosı̀ ottenuti sono
sottoposti ad un processo finale di selezione, effettuato in due passi successivi da unità
separate. In questo lavoro il candidato ha progettato una di queste unità, chiamata Wedge
Sorter. Il Wedge Sorter è un modulo di elettronica che si occupa della selezione delle tracce
ricostruite, su una porzione del rivelatore, in base alla qualità della ricostruzione e al valore
dell’impulso trasverso. Oltre a ciò, ha l’importante compito di ridurre il fondo costituito
da tracce erroneamente ricostruite dagli stadi precedenti.
Nel primo capitolo sono introdotte le caratteristiche principali dell’acceleratore LHC
e del rivelatore CMS, dando particolare risalto al sistema di rivelatori per i muoni.
Il secondo capitolo descrive il sistema di trigger di CMS, in particolare quello di primo
livello dei muoni, nel cui ambito si inserisce questo lavoro.
Nel terzo capitolo sono introdotti i requisiti di fisica che deve soddisfare l’algoritmo del
Wedge Sorter. In particolare è messa in rilievo l’importanza di avere la massima efficienza
d’identificazione per coppie di muoni spazialmente vicini attraverso l’esempio del bosone
di Higgs, che in alcuni casi significativi presenta nello stadio finale topologie di questo
tipo. È quindi descritta la procedura con cui è possibile ridurre il fondo costituito dalle
tracce erroneamente ricostruite dagli stadi precedenti del trigger. Infine, sono riportati i
risultati di simulazioni volte a verificare l’efficacia dell’algoritmo studiato.
Il quarto capitolo è dedicato alla progettazione del dispositivo che implementa gli algoritmi illustrati precedentemente. Il progetto, realizzato in linguaggio VHDL, è descritto
nelle sue caratteristiche principali. Inoltre sono riportati i criteri ed i risultati della valutazione delle tecnologie attualmente disponibili per la realizzazione di un dispositivo
integrato. È stato scelto di utilizzare circuiti integrati programmabili (FPGA) e sono state analizzate le prestazioni ottenibili su alcuni dispositivi commerciali, fino ad arrivare ad
una precisa scelta tecnica. Questa scelta consente di implementare l’algoritmo del Wedge Sorter su un unico dispositivo programmabile, con ottimi margini rispetto ai requisiti
imposti al sistema.
Capitolo 1
L’esperimento CMS a LHC
1.1
Il collisionatore LHC
LHC (Large Hadron Collider ) sarà un collisionatore protone-protone in grado di raggiun√
gere un’energia nel centro di massa di s = 7+7 TeV. Il progetto LHC è stato approvato
nel 1994 dal CERN di Ginevra ed l’entrata in funzione è prevista nel 2007. L’acceleratore è stato progettato per occupare il tunnel di 27 km precedentemente utilizzato dal
collisionatore elettrone-positrone LEP e utilizzerà, per l’iniezione di protoni, il sistema di
acceleratori già presente al CERN (Fig. 1.1). Oltre a collisioni protone-protone, saranno studiate collisioni di ioni pesanti, come, ad esempio, ioni di piombo con un’energia nel
centro di massa di 5.5 TeV per coppia di nucleoni [1].
L’elevata luminosità di progetto di LHC, necessaria per lo studio di processi rari, è di
1034 cm−2 s−1 e sarà raggiunta gradualmente nei primi anni di esercizio: il valore previsto
per l’inizio della presa dati è di 1033 cm−2 s−1 . Tali valori sono raggiunti grazie alla buona
qualità dei fasci, alla elevata densità di protoni in ogni pacchetto e alla grande frequenza
di incrocio dei fasci (bunch crossing, BX ). Quest’ ultima caratteristica in particolare pone
stringenti requisiti al sistema di acquisizione e trigger (cfr. § 2.1) in quanto gli eventi si
susseguiranno ogni 25 ns (periodo cu corrisponde un frequenza di BX pari a 40 MHz).
A causa dell’elevata sezione d’urto totale (§ 1.2), inoltre, ad ogni BX avvengono circa 15
interazioni tra i protoni dei due pacchetti (sovrapposizione, o pile-up, degli eventi), e per
ognuna di esse sono prodotte in media circa 75 particelle cariche. L’elevata molteplicità e
1
2
L’esperimento CMS a LHC
la frequenza degli eventi impongono requisiti molto stringenti ai rivelatori e alla capacità
dei sistemi di trigger e acquisizione.
Per mantenere i protoni lungo la circonferenza dell’acceleratore a queste energie saranno impiegati magneti dipolari superconduttori, in grado di generare un campo di circa
8,33 Tesla. In Fig. 1.2 è mostrata la sezione trasversa di un dipolo. Si può notare la presenza di due tubi separati, in quanto sono necessari campi magnetici di verso opposto per
Figura 1.1: La catena di acceleratori del CERN (LINAC-PS-SPS-LHC).
1.1 Il collisionatore LHC
3
Figura 1.2: Sezione trasversa del magnete dipolare superconduttore di LHC.
i due fasci. L’accelerazione dei protoni e il recupero dell’energia persa per emissione di
radiazione di sincrotrone sarà compito di cavità superconduttrici a radiofrequenza. I parametri principali di LHC sono mostrati in tabella 1.1 La frequenza di LHC di 40 Mhz
corrisponde ad un periodo di 25 ns. Un orbita in LHC consiste di 3564 periodi. Non tutti i periodi contengono un pacchetto di protoni. I pacchetti sono raggruppati in 39 treni
di 72 pacchetti ciascuno (Fig. 1.3). La struttura degli spazi tra i treni è utilizzata per
ottenere una sincronizzazione assoluta.
A LHC sono previsti quattro punti in cui i fasci circolanti in direzione opposta si
incroceranno, a cui corrispondono quattro esperimenti in fase di costruzione (Fig. 1.4). I
rivelatori CMS e ATLAS sono rivelatori progettati principalmente per lo studio completo
di interazioni protone-protone. Essi hanno quindi finalità simili, ma le scelte progettuali
sono diverse. ALICE è un rivelatore dedicato allo studio delle collisioni tra ioni pesanti,
mentre LHCb si dedicherà allo studio degli adroni B e della violazione della simmetria
CP.
4
L’esperimento CMS a LHC
Circonferenza
Massima luminosità
Campo di dipolo alla massima energia
Tempo di accelerazione
Energia del fascio all’iniezione
Energia del fascio alla collisione
Numero di pacchetti
Protoni per pacchetto (massima luminosità)
Spazio tra i pacchetti
Frequenza di BX
Dim. trasverse del fascio alla collisione
Lunghezza del pacchetto
Vita media del fascio
26.659
∼ 10 cm s = 10 Hz/nb
8.33 T
20 min.
450 GeV
7 TeV
2835
1011
7.48 m ⇔ 24.95 ns
40.08 MHz
15.9 × 15.9 µm2
7.5 cm ⇔ 0.25 ns
∼ 22 h
34
−2 −1
Tabella 1.1: Principali parametri funzionali di LHC.
Figura 1.3: Struttura del fascio di protoni di LHC. È composto da 39 treni, ciascuno contenente 72 pacchetti. Il numero di pacchetti mancanti tra un treno ed il successivo consente una
sincronizzazione assoluta dei sistemi elettronici con il fascio.
1.2 Fisica a LHC: il Modello Standard ed il bosone di Higgs
5
Figura 1.4: I 4 esperimenti a LHC
1.2
Fisica a LHC: il Modello Standard ed il bosone
di Higgs
All’energia di collisione di LHC,
√
s = 14 T eV , è possibile ottenere interazioni tra i
costituenti fondamentali del protone, i partoni (quark e gluoni), con energie dell’ordine
di qualche TeV. Tra gli obiettivi principali dello studio di eventi a queste energie sono:
• la ricerca del bosone di Higgs, il bosone scalare responsabile del meccanismo per cui,
secondo il Modello Standard, le particelle acquistano massa;
• la ricerca di eventuali nuove particelle e lo studio di possibili deviazioni o estensioni
del Modello Standard.
Le sezioni d’urto dei principali processi previsti ad LHC sono rappresentate in Figura
1.5 dove sono indicate anche le frequenze di produzione corrispondenti alla luminosità di
progetto di LHC. Sono indicate anche le zone di energia indagate da esperimenti presenti
6
L’esperimento CMS a LHC
in altri acceleratori. A fronte di una sezione d’urto inelastica totale di circa 56 millibarn
molti canali di nuova fisica hanno sezioni d’urto dell’ordine del picobarn o inferiori.
Il Modello Standard (SM) è una teoria di campo relativistica e quantistica che descrive
le interazioni tra i costituenti fondamentali della materia: quark e leptoni. Si tratta di
una teoria di Gauge, cioè una teoria in cui le forze fondamentali sono spiegate come il
prodotto di simmetrie locali dei campi. La teoria comprende 12 fermioni fondamentali (6
leptoni e 6 quark, divisi in tre famiglie) e 12 bosoni vettori, responsabili delle interazioni:
il fotone, i W + /W − , la Z 0 e 8 gluoni. Il Modello Standard spiega molti aspetti della
Tevatron
SSC (cancelled)
SppS
LHC
σ tot
E710
10
9
UA4/5
µb
E
>0.03
s
UA1
10
>0.25 TeV
σ (W
10
ν)
10
UA1/2
(p p)
σt t
m
top=
CDF
174 GeV
10
m top = 200 GeV
m
z'
-1
σ z'
= 1 TeV
σ Higgs
mH = 500 GeV
0.001
3
CDF (p p)
1 nb
1 pb
5
σ jet
jet
T
CDF
34
1
T
7
Events / sec for
σ (proton - proton)
E
σ jet
jet
10
= 10 cm-2 sec -1
σb b
1 mb
0.01
10
0.1
s
1.0
10
-3
100
TeV
Figura 1.5: Sezioni d’urto inelastiche per collisioni p-p in funzione dell’energia dei protoni nel
centro di massa. Sulla destra del grafico sono riportate le frequenze di produzione corrispondenti
alla luminosità di progetto di LHC.
1.2 Fisica a LHC: il Modello Standard ed il bosone di Higgs
7
fisica subnucleare, e molte delle previsioni sono state confermate sperimentalmente. Una
previsione non ancora confermata è l’esistenza della particella scalare nota come bosone
di Higgs.
Non è possible introdurre nella teoria termini di massa sia per i bosoni vettori che per
i fermioni fondamentali senza perdere l’invarianza di Gauge e quindi la validità della teoria stessa. Un modo per conferire indirettamente massa ai campi presenti è la cosiddetta
rottura spontanea di simmetria (SSB). Essa prevede la presenza di un campo avente un
valore di aspettazione non nullo in tutto lo spazio e ciò porta alla previsione dell’esistenza di una particella scalare, il bosone di Higgs appunto. La teoria non prevede quale sia
la massa di questa particella, ma considerazioni teoriche indicano un limite superiore di
circa 600-800 GeV. La ricerca diretta condotta al LEP esclude una massa inferiore ai 113
GeV, mentre misure indirette basate su fit dei parametri del Modello Standard indicano
come probabile un limite superiore alla massa dell’Higgs di circa 200 GeV [2]. In questo
intervallo di massa sarà possibile produrre la particella a LHC. In Fig. 1.6 sono mostrati i principali processi che contribuiscono alla produzione dell’Higgs alle energie di LHC
e le sezioni d’urto di tali processi in funzione della massa dell’Higgs stesso. Il processo
dominante per valori di massa non troppo grandi è la gluon fusion che avviene per mez-
Figura 1.6: Diagrammi di Feynman dei principali processi di produzione del bosone di Higgs a
LHC (a sinistra) e sezioni d’urto corrispondenti in funzione della massa dell’Higgs (a destra).
8
L’esperimento CMS a LHC
Figura 1.7: Larghezza intrinseca del bosone di Higgs in funzione della sua massa.
zo dello scambio di quark top. Per MH grandi diventa importante anche il contributo
della WW/ZZ fusion. In ogni caso la sezione d’urto di produzione dell’Higgs è estremamente piccola, dell’ordine della decina di picobarn al massimo. In Fig. 1.7 è mostrata la
larghezza intrinseca del bosone di Higgs. Come si può vedere essa è molto piccola (inferiore ai dieci MeV) fina a MH ' 150 GeV, mentre sale rapidamente per valori di massa
superiori. Questo, assieme alla sensibile diminuzione delle sezioni d’urto, rende particolarmente difficile l’individuazione del picco di risonanza per masse molto elevate. Altre
caratteristiche riguardanti i decadimenti dell’Higgs e la rivelazione dei rispettivi prodotti
sono trattate nel § 3.1.1.
1.3
Il rivelatore CMS
Il rivelatore CMS (“Compact Muon Solenoid ”) è stato progettato per fornire le migliori
prestazioni possibili nell’identificazione di muoni ed elettroni, usati come elementi fondamentali per filtrare gli eventi fisici interessanti [3]. In figura 1.8 è mostrata una rappresentazione del rivelatore. Si noti in particolare il sistema di riferimento, che sarà utilizzato
anche nel seguito: i fasci si muoveranno lungo l’asse z; nel piano longitudinale si usa la
1.3 Il rivelatore CMS
9
coordinata pseudorapidità η definita nel modo seguente:
η = − ln tan θ/2
dove θ l’angolo polare. Nel piano trasverso si utilizzano le coordinate polari (r, φ), con r la
distanza dal punti di incrocio dei fasci e φ l’angolo azimutale. La zona cilindrica centrata
sul punto di incrocio dei fasci è chiamata barrel, mentre le strutture a forma di disco che
completano l’ermeticità del rivelatore in avanti sono chiamate endcap. Nella figura 1.12 è
mostrata la sezione trasversale del rivelatore. L’elemento centrale del rivelatore CMS è un
solenoide superconduttore lungo circa 13 m, di 3 m di raggio, in grado di generare al suo
interno un campo di 4 T. All’interno di esso si trovano, partendo dal punto di interazione,
il rivelatore di tracce (tracker ), il calorimetro elettromagnetico e il calorimetro adronico.
All’esterno del solenoide si trova il sistema di rivelatori di muoni del barrel, costituito
Figura 1.8: Vista prospettica del rivelatore CMS.
10
L’esperimento CMS a LHC
da numerosi rivelatori intervallati al ferro del giogo di ritorno del campo magnetico. La
geometria della loro disposizione consiste di settori di 30o ; 12 settori allo stesso z formano
una ruota. Cinque ruote adiacenti lungo z formano l’intero barrel. L’insieme di 5 settori a
φ costante forma un wedge. I rivelatori di muoni sono trattati con maggiore dettaglio nel
§ 1.4. Alle estremità sono presenti due strutture discoidali (endcap) in ferro, che chiudono
il circuito magnetico del barrel e che contengono il sistema per i muoni prodotti in avanti.
I calorimetri in avanti completano l’ermeticità del rivelatore nella misura dell’energia,
coprendo la zona 3 . |η| . 5.
L’uso di un campo magnetico cosı̀ intenso consente una buona risoluzione nella misura
dell’impulso trasverso, PT , nel rivelatore di tracce. Il posizionamento dei calorimetri
all’interno del solenoide consente di avere pochissimo materiale tra essi ed il vertice di
interazione, migliorando la risoluzione in energia.
Il rivelatore di tracce
Il rivelatore centrale di tracce è formato da due sottosistemi. La parte centrale, a 37 mm
dal vertice di interazione, è costituita da rivelatori a pixel di silicio, aventi il compito
principale di risolvere i vertici secondari originati per esempio nel decadimento di adroni
contenenti quark b. Più esternamente sono presenti rivelatori a microstrip di silicio. La
risoluzione sulla misura del PT per una particella di circa 10 GeV varia dallo 0.8 al 2 %
in funzione di η. Nel complesso il tracker contiene circa 107 canali e ricopre un area di
ben 223 m2 con sensori in silicio [4],[5].
Il calorimetro elettromagnetico
Il calorimetro elettromagnetico di CMS (Fig. 1.9) è un calorimetro omogeneo a scintillazione. È costituito da cristalli ad alta densità e ridotto raggio di Moliere, realizzati in
PbWO4 il quale fornisce un rapido tempo di decadimento dell’emissione luminosa. I cristalli del barrel hanno una sezione frontale quadrata di 22×22 mm2 ed una profondità di
230 mm, corrispondente a circa 26 lunghezze di radiazione. Negli endcap la sezione è di
24.7×24.7 mm2 e la lunghezza 220 mm. Lo studio del canale di decadimento H → γγ, per
1.3 Il rivelatore CMS
11
Figura 1.9: Vista del calorimetro elettromagnetico di CMS: a sinistra la parte del barrel, a
destra gli endcap.
un Higgs di massa inferiore ai 140 GeV, rende molto importante la risoluzione in energia,
per poter ricostruire la massa dell’Higgs in presenza del notevole fondo elettromagnetico prodotto. Anche la risoluzione angolare è importante, in quanto i due fotoni possono
essere spazialmente vicini perché l’Higgs è prodotto con una elevata velocità.
Il calorimetro di CMS raggiunge prestazioni eccellenti, avendo una risoluzione in
energia nel barrel e negli endcap rispettivamente:
σ
2.7% 0.210
= √ ⊕
⊕ 0.55%
E
E
E
σ
5.7% 0.245
= √ ⊕
⊕ 0.55%
E
E
E
con l’energia E in GeV. I tre termini di ciascuna espressione sono sommati in quadratura essendo contributi indipendenti. Il primo termine è stocastico, e tiene conto delle
fluttuazioni sia sul contenimento dello sciame elettromagnetico che della fotostatistica. Il
secondo è legato al rumore dell’elettronica e al pile-up degli eventi. Il terzo è un termine
√
costante. La risoluzione nella misura angolare è di circa 45 mrad/ E [6].
Il calorimetro adronico
Il calorimetro adronico [7] è fondamentale per lo studio di stati finali adronici e per
la misura di energia mancante, Emis . Per avere una buona risoluzione sulla misura di
Emis è necessario un calorimetro ermetico fino a grande η (|η| < 5). La copertura in η
12
L’esperimento CMS a LHC
è raggiunta per mezzo di tre parti: il calorimetro adronico del barrel (|η| < 1.4), degli
endcap (1.3 < |η| < 3.0), e il calorimetro in avanti che completa la copertura fino a |η| = 5.
I calorimetri del barrel e degli endcap sono calorimetri a campionamento, ed essendo
situati nel campo magnetico del solenoide è utilizzato per l’assorbitore un materiale non
magnetico: una lega di rame e zinco con una minima parte di acciaio. Questo materiale ha
una corta lunghezza di interazione nucleare (λCu = 15 cm), permettendo la realizzazione
di un sistema compatto, ed un basso numero atomico (ZCu = 29), in modo da limitare lo
scattering multiplo dei muoni. Il materiale attivo è costituito da uno scintillatore plastico
di 4 mm di spessore intervallato agli strati di assorbitore. Scintillatori addizionali sono
posti immediatamente oltre il solenoide e prima della prima stazione per muoni, per la
rivelazione di sciami di alta energia che non sono contenuti nel calorimetro. I calorimetri in
avanti sono collocati in un ambiente fortemente radioattivo, caratteristica che condiziona
la scelta dei materiali. Sono calorimetri a campionamento in cui è utilizzato del ferro come
assorbitore e fibre di quarzo come materiale attivo. Il ferro è scelto in quanto si attiva
meno facilmente del rame, e le fibre di quarzo, di cui si sfrutta l’emissione Cerenkov,
possono sopportare dosi di radiazioni fino a 30 Grad senza che la loro trasparenza sia
apprezzabilmente alterata.
Le risoluzioni delle varie parti del calorimetro adronico possono essere parametrizzate
secondo le seguenti espressioni, contenenti un contributo stocastico ed uno costante:
barrel :
endcap :
f orward :
σ
65%
= √ ⊕ 5%
E
E
83%
σ
= √ ⊕ 5%
E
E
100%
σ
= √ ⊕ 5%
E
E
dove l’energia E è in GeV.
1.4
I rivelatori per muoni
Il rivelatore CMS è specificamente ottimizzato per la rivelazione dei muoni, perchè la
presenza di muoni di alto impulso trasverso (PT ) caratterizza molti degli eventi ritenuti
1.4 I rivelatori per muoni
13
interessanti a LHC. Il sistema deve essere in grado di ricostruire le traiettorie e misurare
l’impulso dei muoni per selezionare questi eventi. Sono utilizzate tre diverse tecniche di
rivelazione: tubi a deriva (DT ) nel barrel, camere a strip catodiche (CSC ) negli endcap,
camere a piani resistivi (RPC ) sia nel barrel che negli endcap.
1.4.1
Il sistema di tubi a deriva del barrel
Nella regione del barrel sono utilizzati tubi a deriva. La lunghezza del massimo percorso di deriva è stata scelta di 2 cm, corrispondenti a 350-400 ns. Tubi a deriva di questa
dimensione possono accettare un flusso di particelle fino a 200 Hz/cm2 . Queste caratteristiche sono state studiate perchè i rivelatori siano usati dal sistema di trigger dei muoni.
Il numero di canali necessario per coprire con la voluta accettanza tutta la regione del
barrel è di circa 195000. I tubi a deriva di sezione rettangolare di 13×40 mm2 (Fig. 1.10)
sono disposti parallelamente alla direzione dei fasci per la misura dell’angolo azimutale φ
e perpendicolarmente per la misura della coordinata z. I tubi per la misura di φ sono lunghi circa 2.5 metri e quelli per la misura di z hanno una lunghezza compresa tra circa 2 e
4 metri a seconda della posizione. Essi saranno riempiti con una miscela composta dall’
85% di argon ed il 15% di CO2 . Questa miscela è stata scelta in quanto non è infiammabile, consente tempi di deriva costanti lungo tutta la larghezza del tubo, e non contiene
composti organici, i quali potrebbero migliorare il guadagno e quindi l’ampiezza del segnale sul filo ma porterebbero ad un più rapido invecchiamento della superficie anodica.
Figura 1.10: Sezione di un tubo a deriva per muoni del barrel.
14
L’esperimento CMS a LHC
Figura 1.11: Sezione di una stazione dei tubi a deriva per muoni del barrel. All’esterno è
mostrato il ferro del giogo di ritorno del magnete in cui la stazione è posizionata. I superlayer
per la misura di φ sono mostrati in sezione trasversa. È visibile anche l’honeycomb di alluminio,
che, oltre a sostenere meccanicamente la stazione, separa il superlayer più interno dagli altri.
Quattro strati di tubi a deriva costituiscono un superlayer (SL). Tre SL formano un
stazione (Fig. 1.11); due di essi misurano la posizione dei segmenti in φ, il terzo lungo
z. Il SL per φ più interno è separato dagli altri di 20 cm: questo consente una miglior
precisione nella misura della direzione delle tracce, grazie al braccio di leva formato tra i
due SL in φ.
La disposizione delle stazioni nel giogo di ritorno, visibile nella sezione della figura
1.12, consiste di settori di 30o che formano ruote; cinque ruote allineate lungo la direzione dei fasci costituiscono l’intero barrel e coprono la zona |η| . 1. In ogni settore
sono poste quattro stazioni di dimensione crescente dall’interno all’esterno (denominate
MB1. . . MB4). Come visto in precedenza, in ognuna di esse sono utilizzati 8 piani di tubi
a deriva per la coordinata φ e 4 per z. La maggiore precisione nella misura di φ è necessaria in quanto la curvatura nella proiezione (r, φ) è utilizzata per la determinazione
dell’impulso trasverso, mentre nella proiezione (r, z) le tracce sono approssimativamente
rettilinee. Per evitare zone non sensibili, le stazioni di ogni settore sono leggermente sfal-
1.4 I rivelatori per muoni
15
Figura 1.12: Sezione trasversale del rivelatore CMS.
sate, e solo in piccoli intervalli dello spazio (φ, η) del barrel un muone non attraversa più
di due stazioni [9].
L’unità fondamentale per la ricostruzione di un segmento di una traccia è il superlayer.
I tubi a deriva di due strati adiacenti di un SL sono sfalsati di 20 mm, cioé metà della
larghezza di un tubo. Questo consente di non avere regioni insensibili e di utilizzare
una tecnica di ricostruzione dei segmenti di traccia detta meantimer [8]. Per semplicità
si possono considerare solo tre piani di celle di altezza h, attraversate da una traccia
incidente con un angolo ψ (Fig. 1.13). Con le ipotesi che la velocità di deriva degli
elettroni nella cella sia costante e che la traiettoria del muone sia rettilinea, se d è il punto
di impatto sul primo tubo e TM AX il tempo massimo di deriva (di mezza cella) di hanno
le seguenti relazioni:
5
T1 = d + h tan ψ
2
3
T2 = TM AX − d − h tan ψ
2
1
T3 = d + h tan ψ
2
16
L’esperimento CMS a LHC
Figura 1.13: La tecnica del meantimer per verificare l’allineamento del segnale da piani diversi
di tubi a deriva. Vedi il testo per la spiegazione delle relazioni che legano i valori mostrati.
Quindi
T1 +2T2 +T3
2
= TM AX indipendentemente da ψ. Verificando la validità di questa
relazione per gli hit nei tre piani si può quindi stabilire un allineamento dei segnali e il
momento del passaggio, dato che la relazione diventa valida sempre dopo un tempo TM AX .
La risoluzione temporale ottenuta sul segnale anodico è di circa 4 ns. Il raggiungimento
di questo valore pone diversi problemi in quanto è necessaria una notevole precisione
su tutta la struttura affinchè il campo di deriva sia della forma voluta, cioé quella che
garantisce una velocità di deriva costante. Questa risoluzione è però necessaria affinchè
il sistema di trigger dei DT possa essere in grado di identificare con il metodo precedente
a quale finestra di 25 ns (ovvero a quale BX) appartiene il muone rivelato. Considerato
che la velocità di deriva nella miscela prevista è di circa 54 µm/ns, la risoluzione spaziale
della camera è di circa 200 µm.
1.4 I rivelatori per muoni
17
Misura dell’impulso dei muoni nel barrel
È importante avere una buona risoluzione sulla misura del PT dei muoni tramite il sistema
ad essi dedicato, in quanto questa informazione è elaborata dagli algoritmi del sistema di
trigger. All’interno del solenoide il sistema di tracciamento basato su rivelatori a pixel
e microstrip di silicio consente di misurare il PT con una risoluzione dell’ordine dell’ 1%
per una particella con impulso trasverso di 10 GeV. Il sistema di rivelatori dedicati ai
muoni non possono raggiungere questa risoluzione a causa della quantità di ferro del
giogo di ritorno che la particella attraversa, subendo scattering coulombiano multiplo,
bremsstrahlung, emissione di δ rays. L’utilizzo del tracker all’interno del sistema di trigger
è però impossibile, a causa del numero di canali presenti (∼ 107 ) e della complessità e
quindi della lentezza degli algoritmi di ricostruzione.
La misura dell’impulso del muone per mezzo delle stazioni dei muoni può avvenire in
due modi: con la misura dell’angolo di impatto del muone sulla prima stazione e con la
misura della curvatura della traiettoria che attraversa più stazioni. Nel primo caso, si
ha a disposizione una sola misura, ma il muone non ha ancora attraversato i vari metri
di ferro che costituiscono il giogo di ritorno del magnete con le conseguenti fluttuazioni
nella perdita di energia e scattering multiplo. Nel secondo caso questi effetti tendono
a peggiorare la misura ma la possibilità di avere un certo numero di punti di misura
della direzione della traccia e l’uso del campo magnetico di ritorno rende possibile il
raggiungimento di una risoluzione confrontabile. È possibile stimare il limite imposto
dallo scattering multiplo alla misura del PT del muone effettuata utilizzando l’angolo di
impatto sulla prima stazione. La stima della deviazione media rispetto alla traiettoria
originaria è data da
θM CS =
p
0.0136
< θ2 >⊥ '
Pβ
r
x
[rad]
Lrad
dove P è l’impulso in GeV, β è il fattore relativistico v/c e x/Lrad è il numero di lunghezze
di radiazione di materiale attraversato, circa 120 all’altezza della prima stazione – tale
valore è dovuto quasi totalmente al materiale utilizzato per i calorimetri. La misura del
PT si basa sulla curvatura della traiettoria nel campo costante e assiale presente all’interno
18
L’esperimento CMS a LHC
della bobina:
PT = 0.3BRcurv [GeV ]
dove B è il campo magnetico in tesla e Rcurv il raggio di curvatura della traccia in metri,
ottenuto da
Rcurv =
Rcoil
2 sin θcurv
Rcoil è il raggio del solenoide (3 m) e θcurv l’angolo di impatto sulla prima stazione misurato
rispetto alla direzione radiale. Per un muone emesso a η ' 0 si ha PT ' P . Dalle formule
precedenti si ottiene il limite di risoluzione sul PT :
(M CS)
δPT
PT
0.0136
'
0.3BR
r
x
Lrad
Si ottiene quindi un limite attorno al 9-10 % sulla misura dell’impulso trasverso effettuata
in questo modo.
In definitiva, la risoluzione ottenuta tramite la misura del PT usando le stazioni dei
muoni è in effetti di poco superiore a quella qui stimata, rimanendo inferiore al 10 % nel
barrel a PT ' 25 GeV per una ricostruzione effettuata sfruttando la piena risoluzione
delle camere. Il trigger di primo livello è in grado di misurare il PT on-line, alla frequenza
di incrocio dei fasci di 40 MHz, con una risoluzione compresa tra il 10 ed il 20 % per
PT < 100 GeV nel barrel.
1.4.2
Il sistema di CSC degli endcap
Nella zona degli endcap non è possibile utilizzare tubi a deriva, a causa della presenza
di un campo magnetico intenso e del flusso medio di particelle cariche più elevato. Sono
invece utilizzate camere a strip catodiche (CSC) che hanno percorsi di deriva più brevi
rispetto ai tubi a deriva. Le CSC sono disposte in quattro stazioni separate dal ferro del
giogo di ritorno e le camere sono di forma trapezoidale e disposte in anelli concentrici centrati sulla linea dei fasci (Fig. 1.14 a sinistra). Ogni CSC ha 6 strati di fili anodici e 6 piani
di strip catodiche disposti come si può vedere nella parte destra di Fig. 1.14. Il processo
di moltiplicazione degli elettroni di deriva induce un segnale sia sull’anodo che sulle strip
1.4 I rivelatori per muoni
19
Figura 1.14: Disposizione delle stazioni di CSC per muoni in avanti (a sinistra) e orientamento
dei fili e delle strip nelle stazioni (a destra).
catodiche, quindi ciascun piano dei rivelatori misura contemporaneamente le due coordinate (r tramite i fili, φ tramite le strip). La risoluzione ottenuta è dell’ordine di 75 µm
per le stazioni più interne, circa 150 µm per le altre. Il sistema conta complessivamente
più di 480000 canali [9].
1.4.3
Le camere a piani resistivi
Per aumentare la ridondanza del sistema sono previsti piani di RPC sia nel barrel che
negli endcap. Le RPC sono camere a gas a facce piane parallele realizzate in bachelite
(resistività elevata, ∼ 1010 -1011 Ωcm) distanziate di pochi millimetri. I due piani sono
ricoperti di grafite ed è applicata una differenza di potenziale. La lettura del segnale
elettrico prodotto dal passaggio di una particella carica è effettuata mediante strip di
alluminio isolate dai piani di grafite. Le RPC non hanno una buona risoluzione spaziale
rispetto a DT e CSC, ma il loro rapido tempo di risposta (una risoluzione temporale ≤ 3
ns) è molto utile per il sistema di trigger e per l’identificazione del BX. Dato che non
necessitano di complessi dispositivi di lettura dei segnali, questa può avvenire con una
notevole segmentazione, in modo che possa essere effettuata una non precisa ma rapida
misura della curvatura delle tracce e quindi del PT . Saranno utilizzati 6 piani di RPC nel
barrel e 4 negli endcap [9].
20
L’esperimento CMS a LHC
Capitolo 2
Il sistema di trigger dei muoni
2.1
Generalità
Le sezioni d’urto dei fenomeni studiati a LHC sono state mostrate in Fig. 1.5, e nel § 1.2
è stato illustrato come le sezioni d’urto dei fenomeni interessanti siano diversi ordini di
grandezza inferiori alla sezione d’urto totale inelastica pp all’energia di LHC. Gran parte
delle collisioni, quindi, produrranno eventi poco interessanti, considerati fondo.
È compito del sistema di trigger selezionare i rari eventi interessanti tra gli eventi
di fondo. Il sistema di acquisizione può processare e memorizzare fino a 100 eventi al
secondo, una frequenza sufficiente a contenere gli eventi interessanti, corrispondente ad
un fattore di riduzione totale di circa 105 . In Fig. 2.1 è mostrato lo schema logico del
trigger di CMS. Esso è suddiviso in più livelli, e ciascun livello compie una parte della
riduzione. Il trigger di primo livello, realizzato con processori appositamente costruiti,
riduce di un fattore di circa 103 il numero di eventi passati ai successivi livelli. Sarà a
disposizione una banda massima di 100 kHz. Considerando un margine di sicurezza, il
sistema di trigger di primo livello deve poter sostenere una frequenza di eventi accettati
di circa 30 kHz. Il sistema di trigger di alto livello è costituito da un insieme di processori
commerciali e da programmi per la selezione che effettuano ulteriori tagli fino a ridurre
gli eventi in acquisizione al di sotto della frequenza massima, stabilita essere 100 Hz.
21
22
Il sistema di trigger dei muoni
Detectors
Front-end
pipelines
40 MHz
~ 3 µs
~ 107 channels
Trigger
level 1
Custom
processors
~ 30 kHz
Read-out buffers
~ 1000 x 105
~s
event buffers
Event builder
large switch
Event filter farm
~ 106 MIPS
capability
~s
High Level
Triggers
100 Hz
Figura 2.1: Schema logico del trigger di CMS. Il primo livello, basato su elettronica appositamente realizzata, analizza ogni BX, sincronizzando le operazioni alla frequenza di incrocio dei
fasci di 40 MHz. Seleziona circa 30 kHz di eventi. Le informazioni provenienti da ogni rivelatore sono strutturate e riunite in modo da ricostruire un evento completo (event builder ). Ai
livelli successivi, algoritmi di trigger complessi sono eseguiti su processori commerciali, fino a
selezionare un massimo di 100 eventi al secondo per la memorizzazione.
2.1.1
Sincronizzazione e latenza del sistema di trigger
Come mostrato nel § 1.1, per raggiungere una elevata luminosità in LHC i pacchetti di
protoni si susseguono a brevissima distanza. Il tempo disponibile tra due successivi BX,
25 ns, è troppo breve perché il trigger di primo livello possa fornire la decisione di accettare
o rigettare l’evento. Per questo viene utilizzata una tecnica di pipeline. I dati completi e
alla piena risoluzione sono letti da tutti i sistemi di rivelatori e vengono posti dal sistema
di acquisizione in memorie a scorrimento (FIFO). In parallelo il sistema di trigger di
primo livello elabora una parte delle informazioni messe a disposizione dai rivelatori per
stabilire se si tratti di un evento interessante. In questo modo gli algoritmi di trigger
possono impiegare più di un BX per l’elaborazione. Il tempo massimo a disposizione è
2.2 Il trigger di primo livello dei muoni
23
determinato dalla quantità di dati che è necessario mantenere memorizzati nelle FIFO. In
modo particolare il tracker centrale richiede una grande quantità di memorie analogiche
ed è previsto che il limite sia di 128 BX, corrispondenti a 3.2 µs [10]. Tutta la struttura è
segmentata in unità che trattengono i dati per il tempo disponibile tra due BX successivi.
In questo modo è possibile elaborare un nuovo evento ogni 25 ns anche se il tempo totale
necessario per l’elaborazione è molto superiore. Dopo il numero stabilito di passi, il
sistema di trigger fornisce eventualmente la decisione di accettare l’evento, il che equivale
a passare i dati dalle FIFO di lettura allo stadio successivo.
2.2
Il trigger di primo livello dei muoni
La selezione degli eventi interessanti è basata sulle informazioni dei sistemi per muoni
e dei calorimetri. In questo modo possono essere identificati muoni, elettroni, fotoni,
jets adronici ed energia trasversa mancante, e ne vengono misurate le proprietà, come
posizione, energia, impulso. Gli algoritmi applicati, poi, verificano se sono soddisfatte
delle particolari condizioni. Gli eventi di fisica interessante si differenziano da quelli di
fondo per la produzione nello stato finale di particelle ad elevato impulso trasverso in
quanto derivanti dai decadimenti di particelle di elevata massa. Per questo una efficace
selezione di questi eventi è ottenibile richiedendo nello stato finale oggetti aventi un PT
superiore ad una data soglia. Inoltre possono essere richieste condizioni topologiche, ad
esempio la presenza di un muone separato da eventuali jets.
In Fig. 2.2 si possono vedere le frequenze attese di eventi ad uno e due muoni. Sono
riportate le curve delle frequenze totali e dovute ai singoli processi principali in funzione
dell’impulso trasverso PT . Il sistema di trigger identifica e misura l’impulso e la posizione dei muoni. Per capire come selezionare efficacemente gli eventi interessanti, bisogna
comprendere la differenza tra lo spettro dei muoni prodotti da eventi di minimum bias e
quello di muoni derivanti da processi interessanti. Si può notare come la frequenza degli
eventi di minimum bias scenda molto rapidamente all’aumentare del momento trasverso, in quanto è poco probabile produrre muoni di elevato impulso trasverso in processi di
questo tipo. La frequenza di eventi con Z 0 e W hanno un andamento molto più piatto, e
24
Il sistema di trigger dei muoni
Figura 2.2: Frequenze attese di eventi ad uno (a sinistra) e due (a destra) muoni nello stato
finale, per una luminosità di 1034 cm−2 s−1 . Questi eventi sono generati con simulazioni dei
processi fisici, e i dati mostrati non includono la simulazione della risposta dei rivelatori. Sono
mostrate le frequenze totali e dei principali canali di produzione in funzione del PT .
questo è molto utile ai fini del trigger, in quanto Z e W sono coinvolti in molti canali di
fisica interessante. Come si può vedere, gli eventi a due muoni, oltre ad avere una diminuzione progressiva della frequenza di minimum bias più pronunciata, si presentano con
una frequenza complessiva molto più bassa rispetto a gli eventi con un singolo muone. Se
assumiamo che il sistema di trigger dei muoni debba selezionare eventi ad una frequenza
di 15 kHz, corrispondente alla metà del totale previsto per il trigger di primo livello (30
kHz divisi tra trigger calorimetrico e dei muoni), vediamo che nel caso di singoli muoni
è necessaria una soglia attorno ai 20 GeV, mentre gli eventi con due muoni si presentano con una frequenza attorno ad 1 kHz già per un PT di 5 GeV, che è il minimo impulso
misurabile dal sistema di muoni del barrel [11]. Poter usare una soglia più bassa significa
2.2 Il trigger di primo livello dei muoni
25
poter raggiungere anche efficienze più alte.
La risoluzione ottenuta sulla misura del PT naturalmente incide sull’efficacia dei tagli
effettuati: in Fig. 2.3 sono mostrate le efficienze di selezione su un campione di muoni
aventi un impulso trasverso compreso fra 0 e 100 GeV, ottenute effettuando tagli a diversi
valori di PT (PT >10, 20, 40 e 60 GeV). Una buona risoluzione nella misura del PT produce
un gradino netto nell’intorno del valore di taglio, che indica una selezione precisa. Si può
notare come la situazione sia peggiore per tagli in valori di PT più grandi, in quanto la
risoluzione sulla misura dell’impulso del muone peggiora a causa della minore curvatura
delle tracce. Con le risoluzioni ottenute in CMS (§ 2.6) un valore indicativo per il taglio
in PT su singoli muoni è di circa 20 GeV [12].
Figura 2.3: Efficienze ottenute applicando diversi tagli in PT ad un campione di muoni aventi
impulsi distribuiti uniformemente nell’intervallo di misura (curve di turn-on). Il “gradino” è
tanto più ripido quanto migliore è la risoluzione nella misura dell’impulso. Una buona risoluzione
è quindi necessaria per ottenere una elevata purezza del campione selezionato.
26
Il sistema di trigger dei muoni
2.2.1
Struttura del sistema di trigger dei muoni
Il trigger di primo livello dei muoni di CMS usa i tre sistemi di rivelatori per muoni:
tubi a deriva (DT), camere a strip catodiche (CSC) e camere a piani resistivi (RPC).
Le RPC hanno caratteristiche complementari rispetto a DT e CSC, e questo porta ad un
sistema molto robusto, completo e ridondante. I DT e le CSC hanno un’ottima risoluzione
spaziale, che consente una soglia netta in impulso. Le RPC consentono una superiore
risoluzione temporale, che porta ad una migliore identificazione del bunch crossing e ad
un naturale utilizzo specifico di trigger [13].
In Fig. 2.4 è mostrato lo schema del trigger per muoni. Come si può vedere, ai
tre sottosistemi di rivelatori corrispondono tre sistemi di trigger indipendenti. Inoltre
Figura 2.4: Schema complessivo del trigger di primo livello per muoni. Si può vedere come i tre
sistemi di rivelatori, RPC, CSC e DT, abbiano apparati di trigger separati per la ricostruzione
e la selezione di tracce, fino a che il Global Muon Trigger non riunisce le informazioni dei tre
sottosistemi, prima che i candidati muoni siano inviati al Global Trigger, il quale ha a disposizione
anche l’informazione calorimetrica.
2.3 Il trigger locale delle camere a deriva
27
i sistemi di trigger dei DT e delle CSC sono suddivisi nei trigger locali e regionali. I
trigger locali operano a livello di singole stazioni dei muoni e l’elettronica che li compone
è installata sul rivelatore. I trigger regionali operano la ricostruzione delle tracce complete
utilizzando l’informazione riportata dai trigger locali delle varie stazioni. Il Global Muon
Trigger seleziona quattro muoni utilizzando le informazioni dei sottosistemi, e li invia al
Global Trigger, che ha a disposizione anche l’informazione calorimetrica. Nel seguito sarà
descritto con maggiore dettaglio il trigger dei tubi a deriva, nel cui ambito si inserisce
questo lavoro. Brevi cenni riguardanti gli altri sistemi di trigger dei muoni saranno dati
nel § 2.5.
2.3
Il trigger locale delle camere a deriva
Il trigger locale delle camere a deriva è costituito dalle seguenti unità:
• BTI (Bunch and Track Identifier ), identificatore di tracce e del bunch crossing;
• TRACO (TRAck COrrelator ), correlatore di tracce;
• TS (Trigger Server ), selezionatore delle tracce migliori.
L’obiettivo del sistema è rivelare il passaggio di particelle cariche attraverso le camere,
misurare la posizione e l’angolo della loro traiettoria e identificare il BX in cui sono state
prodotte. In questo modo sono ricostruiti fino a due segmenti di traccia per ogni stazione
dei muoni. È compito del trigger regionale utilizzare questi segmenti per la ricostruzione
di tracce complete e la determinazione del loro impulso trasverso. La Fig. 2.5 mostra la
struttura complessiva del trigger locale; il ruolo dei singoli componenti e le informazioni
scambiate tra essi viene analizzato nel seguito.
BTI
Il Bunch and Track Identifier (BTI) ha il compito di associare al passaggio di una particella carica in un superlayer un segmento di traccia, che contiene le informazioni sulla
traiettoria della particella e sul BX in cui è stata prodotta. Ogni BTI è collegato a 9 celle
28
Il sistema di trigger dei muoni
BTI
full tracks
sel
1
h
9 A
5
7
3
4
BTI
9
TRACO
C
x 32
Server Board
TSS
D
8
25
5
B
x
6
2
TRACO
TRACO
BTI
2
previews
TSMD
9+2
30 bit
TSMS
TRACO
20 bit
Phi Trigger Board 1
2
3
4
Out 0
5
6
7
TRACO
Out 1
Out 2
Out 3
Out 4
Out 5
Out 6
Out 7
Out 8
Out 9
Out 10
previews
TSMD
16
sel
To Sector
Collector
25
full tracks
Out 11
Outer
Layer
D = 23.7 cm
BTI
X cor
x 32
K cor
Inner
Layer
In 0
In 1
In 2
2
TST
BTI
Theta Trigger Board 1
In3
2
Outer SL
Inner SL
TRIGGER SERVER
Figura 2.5: Schema del trigger locale dei tubi a deriva. I BTI ricevono il segnale dai fili di un
superlayer (SL) e ne verificano l’allineamento a formare segmenti di traccia, misurano posizione e
angolo e assegnano il BX. I TRACO correlano i segmenti trovati nei due SL in φ di una stazione
e inviano fino a due segmenti ciascuno al Trigger Server (TS). Il TS seleziona i due migliori
segmenti della stazione e li invia al trigger regionale. Dato che in ogni stazione è presente un
solo SL in θ, in questo caso i BTI inviano i segmenti direttamente al TS per la proiezione (z, θ).
di uno stesso SL; BTI adiacenti sono parzialmente sovrapposti (5 celle in comune) per evitare di avere zone con bassa efficienza di rivelazione. Utilizzando la tecnica del meantimer
(§ 1.4.1, [8]), i BTI sono in grado di trovare candidati “segmenti di traccia”, e assegnare
posizione, angolo rispetto alla direzione radiale e BX di provenienza. I segmenti possono
essere di alta qualità (HTRG, High Quality Trigger ) o bassa qualità (LTRG, Low Quality Trigger ) a seconda che siano formati dall’allineamento dei segnali di tutti e quattro
i piani di tubi a deriva o di solo tre su quattro. La posizione e l’angolo di incidenza sono misurati con una risoluzione di 1.25 mm e 60 mrad rispettivamente [14]. I BTI del
2.3 Il trigger locale delle camere a deriva
29
SL in z hanno un compito diverso, in quanto in questa proiezione le tracce sono approssimativamente rettilinee: ogni BTI verifica che un eventuale allineamento dei segnali dei
fili corrisponda alla direzione che punta al vertice di interazione. Solo in caso positivo, il
trigger è valido, e anche in questo caso può essere un HTRG o un LTRG. Per poter effettuare una corretta determinazione del BX di produzione del muone, i BTI analizzano lo
stato dei fili ad una frequenza doppia rispetto a quella di incrocio dei fasci, cioé ogni 12.5
ns. Per questo alle camere a deriva è richiesta una buona risoluzione temporale.
Il tempo necessario ai BTI per effettuare tutte le operazioni è di 22 BX (550 ns) che
è di poco superiore al tempo massimo di deriva delle cariche nei DT. I BTI sono identici
per tutti i SL, e il loro numero per SL dipende dalle dimensioni della camera. Per una
camera di 2 × 2 m2 sono presenti 150 BTI, cioé 50 per ogni SL.
TRACO
Compito del TRAck COrrelator è correlare i segmenti di traccia ottenuti dai BTI di due
diversi SL nel piano (r, φ) di una stazione. Ogni TRACO è connesso a 4 BTI del SL
interno e a 12 di quello esterno, come si può vedere in figura 2.5. Posizione e angolo dei
segmenti forniti dai BTI dei due superlayer sono confrontati per verificare quali possano
corrispondere ad una stessa traccia che ha attraversato la stazione. In questo caso viene
assegnato il valore dell’angolo con una risoluzione migliore di quella del singolo BTI. Ogni
TRACO cerca di ricostruire fino a due segmenti correlati, ed invia i loro parametri allo
stadio successivo, il Trigger Server (TS). La risoluzione è di 1 mm sulla posizione e 10
mrad sull’angolo [14]. Possono essere inviati al Trigger Server anche segmenti ricevuti
dai BTI che non sono stati correlati con segmenti appartenenti all’altro superlayer, in
questo caso la risoluzione angolare è di 60 mrad. Il TRACO impiega 5 BX per fornire il
primo segmento. Il secondo è inviato al successivo BX. Il numero di TRACO per stazione
dipende dalle sue dimensioni. Per le camere più grandi sono 24.
Per quel che riguarda la proiezione (θ, z), dal momento che in una stazione è presente
un solo SL per questa misura, non è necessaria la presenza dei TRACO, e le tracce
individuate dai BTI sono inviate direttamente al Trigger Server per θ.
30
Il sistema di trigger dei muoni
Trigger Server
Ogni stazione dei muoni è equipaggiata con un sistema TS per i segmenti di traccia del
piano (z, θ) (TSθ) e uno per quelli del piano (r, φ) (TSφ). Compito del TSφ [14] è selezionare i due migliori segmenti di traccia tra tutti quelli forniti dai TRACO di una stazione,
per poi inviarli al Trigger Regionale. Sono privilegiati i migliori segmenti, cioè costituiti
da HTRG, correlati, e con angolo di impatto minore (cioé un PT maggiore). Un algoritmo
controlla che due TRACO adiacenti non abbiano ricostruito lo stesso segmento, dato che
le zone da cui ricevono segmenti del superlayer esterno sono parzialmente sovrapposte.
Il TSφ impiega 5 BX per effettuare la selezione e inviare i segmenti al Trigger Regionale, ma dal momento che parte delle operazioni avvengono in parallelo a quelle svolte dai
TRACO, il sistema TRACO-TS ha una latenza complessiva di 7 BX.
Il TS per i SL in θ (TSθ) riceve direttamente dai BTI informazioni sulla presenza di
segmenti validi, cioè quelli che puntano al vertice di interazione. Ciascun segmento può
essere un HTRG o un LTRG. Il TSθ mappa queste informazioni in un certo numero di bit,
a ciascuno dei quali corrisponde una parte della stazione, e li invia al modulo che assegna
valori di η alle tracce (Eta Track Finder, § 2.4.2). In questo modo è a disposizione una
risoluzione pari a circa 32 cm sulla posizione di eventuali segmenti.
2.4
Il trigger regionale delle camere a deriva
Scopo del trigger regionale delle camere a deriva è utilizzare i segmenti di traccia forniti dai
TS in φ e θ per ricostruire delle tracce complete. In Fig. 2.6 ne è data una rappresentazione
schematica. I segmenti di traccia sono elaborati da moduli che cercano di effettuare
la ricostruzione, che è effettuata separatamente nelle due proiezioni: i Sector Processor
(SP) per la proiezione (r, φ) e l’Eta Track Finder (ETF) per (r, z). Ogni SP elabora
indipendentemente dagli altri i segmenti ricevuti dalle quattro stazioni di un settore del
rivelatore, mentre un modulo ETF opera su tutti gli hit ricevuti dai TSθ di un wedge.
2.4 Il trigger regionale delle camere a deriva
31
Figura 2.6: Schema del trigger regionale dei tubi a deriva. Il Trigger Locale, qui indicato con
trigger primitive generator, invia i segmenti trovati nelle stazioni in φ e le informazioni dei SL in
θ ai Sector Processor (SP) e all’Eta Track Finder (ETF); questi moduli ricostruiscono le tracce
di muoni. Ogni SP ricostruisce fino a due tracce, e l’ETF assegna loro anche il valore di η. I
dodici candidati ricostruiti dai 6 SP di un wedge sono inviati al sistema di selezione, costituito
da 12 Wedge Sorter ed un Barrel Sorter, i quali selezionano 4 muoni per il trigger globale.
Successivamente sono selezionati i migliori candidati traccia ricostruiti da un sistema
di selezione costituito da due livelli: 12 moduli Wedge Sorter, che effettuano la selezione
tra i candidati di un wedge, ed un modulo Barrel Sorter, che effettua la selezione finale
sull’intero rivelatore. Sono scelti un massimo di 4 muoni, che sono quindi inviati al trigger
globale dei muoni.
2.4.1
I Sector Processor
Il sistema di ricerca di tracce complete nella proiezione (r, φ) è suddiviso in maniera
corrispondente alla struttura del sistema di muoni di CMS (vedi Fig. 2.6): ad ogni settore
32
Il sistema di trigger dei muoni
del rivelatore corrisponde un Sector Processor (SP) [15]. Ogni ruota è quindi provvista
di 12 SP, con l’eccezione della ruota centrale. In essa ciascun settore è servito da due
SP, uno per le tracce che procedono nella direzione z > 0 e uno per la direzione opposta.
In totale sono quindi presenti 72 moduli di questo tipo. Compito dei Sector Processor è
la ricostruzione di tracce di muoni nella vista (r, φ) del barrel e, sfruttando la curvatura
provocata dal campo magnetico presente nel giogo di ritorno del magnete, misurarne
l’impulso trasverso oltre che l’angolo azimutale φ ed il segno della carica q. I Sector
Processor ricevono i segmenti selezionati dai TSφ. Ogni SP ricostruisce fino a due tracce,
utilizzando se necessario anche i segmenti situati in stazioni dei settori contigui.
In Fig. 2.7 è mostrata la struttura dell’algoritmo applicato dai SP. Avviene in tre
passi principali, da sinistra a destra in figura: estrapolazione, assemblaggio, assegnazione
dei parametri. L’unità di estrapolazione (EU) cerca di combinare in coppie i segmenti di
traccia provenienti da stazioni diverse; nel seguito si farà riferimento alle quattro stazioni,
Pairwise Matching
- Extrapolation
Track
Assembler
Pt-assignment
track segment
muon station 3
muon station 2
muon
station 1
pt assignment
extrapolation
window
track clas selector
muon station 4
pt
track found
(TS1, TS2, TS3, TS4)
extrapolation
result "1/0"
φ2 - φ1
TS1, TS2,
TS3, TS4
Figura 2.7: Schema logico del Sector Processor dei tubi a deriva. Prima vengono effettuate
tutte le possibili estrapolazioni tra i segmenti di stazioni differenti. In seguito il Track Assembler
verifica se estrapolazioni consecutive che hanno avuto successo possono unire più segmenti in
una traccia. Per le tracce cosı̀ ricostruite e selezionate, sono infine assegnati i parametri fisici:
PT , φ, carica, qualità.
2.4 Il trigger regionale delle camere a deriva
33
Figura 2.8: Oltre al settore di competenza, 5 settori adiacenti devono essere controllati nel
processo di estrapolazione. Ogni SP riceve dati sui segmenti di traccia dei settori contigui in
(η, φ).
dall’interno all’esterno, con i numeri da uno a quattro. Usando le coordinate e l’angolo di
bending di un segmento “sorgente”, la EU calcola quale dovrebbe essere la posizione di un
segmento originato dalla stessa traccia nella stazione successiva. Se, nei limiti di una data
tolleranza, un segmento è effettivamente presente nella posizione calcolata, la correlazione
tra i due è considerata valida. Esistono relazioni valide per il calcolo della estrapolazione
per tutte le coppie di stazioni, eccetto che per le estrapolazioni dalla stazione 3 alla 4, che
non possono essere realizzate in quanto l’angolo di bending all’altezza della terza stazione è
circa zero per tutte le tracce a causa della geometria del rivelatore e del campo magnetico.
Questa estrapolazione viene quindi effettuata in senso opposto (vedi Fig. 2.7 a sinistra).
La curvatura della traiettoria dei muoni causata dal campo magnetico porta alla possibilità che un muone attraversi più di un settore in φ, oltre che attraversare i confini
tra due ruote a seconda della pseudorapidità. La geometria del rivelatore è tale che una
traccia non può attraversare più di due settori. Il SP ha a disposizione anche i dati dei
segmenti trovati nei SP adiacenti in z e φ (Fig. 2.8) per poter effettuare estrapolazioni
non contenute nel proprio settore. Questo, se da un lato aumenta l’efficienza e la qualità
della ricostruzione quando la traccia non è interamente contenuta in un settore, dall’altro lato porta alla generazione di ghost, cioè duplicati della stessa traccia fisica. In questo
34
Il sistema di trigger dei muoni
caso può infatti succedere che i due SP consecutivi attraversati dallo stesso muone riescano a effettuare estrapolazioni valide, ricostruendo entrambi la traccia del muone. Questo
aspetto del funzionamento dei SP è approfondito nel § 3.2.2, in quanto è compito del
Wedge Sorter rimuovere queste doppie tracce.
Per ricostruire tracce complete anche nella zona di sovrapposizione tra il sistema dei
DT e quello delle CSC, i SP dei settori esterni ricevono dati sui segmenti trovati indipendentemente dal trigger locale delle CSC. Essi sono convertiti nella stessa scala e
nello stesso sistema di riferimento usati per i parametri dei segmenti del barrel, quindi le
estrapolazioni vengono effettuate nello stesso modo.
Per ogni segmento sorgente sono selezionate le due migliori estrapolazioni, in base alla
qualità dei segmenti ed alla bontà della estrapolazione.
L’unità di elaborazione successiva, il Track Assembler in Fig. 2.7, confronta i risultati
degli estrapolatori per verificare l’esistenza di una traccia. I segmenti che formano una
traccia devono essere tutti connessi da estrapolazioni valide. Per esempio, una traccia
formata da segmenti delle prime tre stazioni deve contenere estrapolazioni valide del
tipo 1-2,2-3 e anche 1-3. Tra tutti i candidati cosı̀ formati, viene selezionato il migliore,
in termini di numero e posizione dei segmenti usati. Vengono quindi cancellati tutti i
candidati che costituiscono una versione incompleta della traccia scelta, per esempio data
una traccia 1-2-3 possono essere trovate anche tracce 1-2, 2-3 e 1-3. Poi, con la stessa
procedura, è selezionata una seconda traccia.
In seguito la Assignment Unit di ogni SP riceve degli indirizzi che specificano quali
segmenti sono stati usati per formare le due tracce ricostruite. Questa unità, utilizzando
i dati relativi a posizione e angolo dei segmenti, assegna alle due tracce i valori di impulso
trasverso PT , angolo azimutale φ, segno della carica e qualità, secondo tavole di valori
generate tramite simulazioni del rivelatore e dell’algoritmo. La precisione in φ è di 2.5o ,
mentre in PT è utilizzata una scala non lineare. Per esempio, per un muone con impulso
trasverso tra 20 e 40 GeV la risoluzione in PT è di 5 GeV. Le codifiche con cui sono
assegnati i valori sono discusse nel § 3.3.2 in quanto questi dati sono ricevuti dal Wedge
Sorter per effettuare in seguito la selezione delle migliori tracce.
2.4 Il trigger regionale delle camere a deriva
2.4.2
35
Il Track Finder in η
I dati dei superlayer in θ sono inviati da tutti i TSθ di un wedge a una unità chiamata Eta
Track Finder (ETF). L’ETF, una cui rappresentazione schematica è fornita in Fig. 2.9,
ricerca la coincidenza di segnali provenienti dai diversi piani di stazioni, verificando che
possa esserci un allineamento degli hit in una traccia rettilinea. In questo modo vengono
ricostruite indipendentemente tracce in questa proiezione. Dopo aver cancellato tracce
parziali, costituite da una parte degli hit di una traccia più completa, è assegnato un
valore di η [16]. La risoluzione è di circa il 3% in pseudorapidità [17].
TS θ
TS θ
TS θ
TS θ
TS θ
Found ϕ-tracks
information
θ SL
segments
Output to
Wedge Sorter
Pattern
Finder
Sub-pattern
cancellation
η Values
Assignment
Values selection
for found ϕ-tracks
Figura 2.9: Struttura dell’Eta Track Finder. I segmenti, fino a 7 per stazione, fornite dai
TSθ sono analizzati alla ricerca di pattern corrispondenti a tracce rettilinee. Eventuali sottopattern sono cancellati, poi sono assegnati i valori di η a quelle rimaste. Dati relativi alle tracce
ricostruite in φ selezionano i corrispondenti valori di η in uscita.
36
Il sistema di trigger dei muoni
2.4.3
Wedge Sorter e Barrel Sorter
All’uscita di Sector Processor e Eta Track Finder il sistema ha ricostruito un massimo di
due tracce per ogni settore, per un totale di 144 tracce. Poiché il sistema di trigger globale
dei muoni accetta dal trigger regionale fino a quattro tracce, il trigger regionale effettua
un’ulteriore selezione tra i candidati ricostruiti, in due passi. Prima sono selezionati
i due migliori candidati tra quelli ricostruiti dai SP di uno stesso wedge, in base alla
qualità della ricostruzione e all’impulso trasverso. Questo compito è svolto da un modulo,
denominato Wedge Sorter, per ognuno dei 12 wedge del rivelatore. Esso si occupa, prima
della selezione, anche della cancellazione di ghost, duplicati di tracce che possono essere
formati in fase di ricostruzione dai SP se il muone ha attraversato il confine tra due
settori. I due muoni selezionati per ogni wedge in questo modo sono inviati al Barrel
Sorter, che si occupa di selezionare, tra i 24 candidati ricevuti, i migliori quattro. La
scelta di suddividere il processo di selezione in questo modo, in particolare di selezionare
prima due candidati per ogni wedge e poi i quattro candidati dell’intero barrel, permette
al sistema di operare in maniera efficace su eventi con topologie interessanti.
L’importanza della selezione di una coppia di muoni nello stesso wedge e la necessità
di un algoritmo di cancellazione di ghost sono trattate nel prossimo capitolo, in cui si
descrivono i compiti ed i requisiti del Wedge Sorter, la parte progettata in questo lavoro.
2.5
2.5.1
Trigger di CSC, RPC e globale
Il trigger delle CSC
Il sistema di trigger delle CSC ha il compito di ricostruire tracce di muoni nella zona
degli endcap di CMS. A ciascuna di esse assegna il valore del momento trasverso, della
pseudorapidità η e dell’angolo azimutale φ. Sono selezionate un massimo di quattro
tracce per il trigger globale dei muoni. Questi compiti sono resi particolarmente complessi
nelle zone a grande η a causa del fondo elevato. In Fig. 2.10 è mostrato il principio di
funzionamento del trigger locale delle CSC. Anodi e catodi delle camere sono letti da
elettronica separata. La quantità di carica indotta sulle strip catodiche è digitalizzata e
2.5 Trigger di CSC, RPC e globale
37
Figura 2.10: Principio di funzionamento del trigger locale delle CSC. Un sistema di confronto
della carica indotta sulle strip catodiche consente una precisa misura della posizione angolare (φ).
I fili anodici sono letti in gruppi di 10-15, e oltre a consentire una determinazione approssimativa
della coordinata radiale, permettono una precisa determinazione del BX.
utilizzata per ricavare la posizione del segmento in φ. La posizione radiale è determinata
con scarsa precisione dal segnale dei fili anodici, che sono letti in gruppi di 10-15. Il segnale
anodico è invece utilizzato proficuamente per determinare il BX di origine della traccia.
Il trigger regionale delle CSC è costituito da un Track Finder dal funzionamento simile
a quello visto per i tubi a deriva. Collega i segmenti individuati nei tre piani di stazioni
che compongono il sistema di CSC degli endcap. Ogni unità copre un settore di 30o , e
le informazioni di settori adiacenti non sono condivise in questo caso, data la limitata
curvatura che i muoni energetici hanno in questa zona del rivelatore. Sono individuate e
inviate al trigger globale dei muoni fino a tre tracce per ogni endcap. La risoluzione sul
PT è di circa il 30% per 5 < PT < 50 GeV [18], [19].
2.5.2
Il trigger delle RPC
Il trigger delle RPC ha lo scopo di selezionare otto tracce tra tutte quelle ricostruite ad
ogni BX: quattro per la zona del barrel, e quattro per gli endcap. Il sistema ricerca la
corrispondenza spaziale e temporale degli hits in quattro stazioni di RPC consecutive con
una serie di pattern precalcolati, costituendo cosı̀ dei candidati traccia (Fig. 2.11). Inoltre
38
Il sistema di trigger dei muoni
Figura 2.11: Principio di funzionamento del trigger delle RPC. Gli hits dei quattro piani di
RPC sono confrontati con un insieme di pattern a cui corrispondono tracce di impulso definito
che viene assegnato alle tracce riconosciute.
viene assegnato il bunch crossing di provenienza. Non è ottenuta una buona risoluzione
sull’impulso trasverso, a causa della povera risoluzione spaziale delle camere e dell’elevato
numero di pattern possibili che complica gli algoritmi di ricostruzione. L’ottima risoluzione
temporale delle RPC consente però una efficiente assegnazione del BX di appartenenza
del muone [20].
2.5.3
Il trigger globale dei muoni
Il Global Muon Trigger (GMT) riceve quattro 4 candidati dai DT, 4 dalle CSC e cerca di
combinarli con i 4+4 candidati delle RPC. Le uscite del GMT, inviate al Trigger Globale
di CMS, sono costituite dalle quattro migliori tracce, in tutto il rivelatore, di ciascun
evento. La corrispondenza tra le tracce ricostruite dai due sottosistemi è cercata in base
alla vicinanza spaziale (in η e φ). In caso di esito positivo le informazioni dei sottosistemi
sono combinate in modo da ottimizzare la precisione della misura.
Un candidato diventa una “traccia” da inviare al trigger globale se:
• È visto sia dal sottosistema di RPC (barrel/endcap) che dai sottosistemi di DT
(barrel) e CSC (endcap), senza vincoli di qualità
2.6 Prestazioni del sistema di trigger dei muoni
39
• È visto da solo uno dei due sottosistemi, ma con alta qualità
Questo algoritmo permette di ottenere contemporaneamente una elevata efficienza e una
buona reiezione del fondo [21]. Il GMT riceve informazioni anche dai calorimetri: per
ogni regione di ∆φ × ∆η = 0.35 × 0.35 il trigger regionale del calorimetro invia al GMT
due bit: il primo (quiet bit) indica se la zona non è interessata da un forte deposito di
energia, mentre il secondo (MIP bit) indica se è stata rilasciata una quantità di energia
compatibile con il passaggio di una particella al minimo di ionizzazione. Questi bit servono
per stabilire se il muone è isolato o è all’interno di un jet.
2.6
Prestazioni del sistema di trigger dei muoni
In Fig. 2.12 è riportata la distribuzione della risoluzione sul PT in funzione del PT per i
muoni ricostruiti nel barrel tramite i DT. Come si può vedere, la risoluzione è migliore
a bassi PT , perchè si ha una misura migliore della curvatura della traccia, ma rimane
comunque compresa tra il 10 ed il 20 % per PT < 100 GeV.
Nelle Figure dalla 2.13 alla 2.18 sono riportate le curve di efficienza del GMT confrontate con quelle dei singoli sottorivelatori, in funzione di η, φ e impulso trasverso
[21]. L’efficienza è definita come la probabilità di ricostruire almeno una traccia in eventi
contenenti un solo muone.
In Fig. 2.13 si può vedere come l’efficienza di rivelazione sia di circa il 95-98 % su
quasi tutto l’intervallo di pseudorapidità coperto. I cali pronunciati di efficienza dei singoli
sottosistemi in corrispondenza di zone non coperte sono molto attenuati a livello del GMT
grazie alla combinazione delle informazioni dei diversi rivelatori.
In Fig. 2.14 e 2.15 è mostrata l’efficienza in funzione di φ per il barrel e gli endcap. Si
notano, nel barrel, cali di efficienza ogni 300 circa, in corrispondenza dei confini tra settori.
Anche in questo caso la ridondanza del sistema fa sı́ che a livello del GMT l’efficienza sia
più uniforme.
In Fig. 2.16 e 2.17 è mostrata l’efficienza in funzione del PT . In questo caso i singoli
sottosistemi hanno già una efficienza quasi del tutto uniforme nell’intervallo mostrato.
40
Il sistema di trigger dei muoni
In Fig. 2.18 sono mostrate le percentuali di falsi doppi muoni. Si tratta della frazione
di eventi della simulazione in cui è stato generato un muone ma ne sono stati riportati
due dal sistema di trigger. Si può vedere il picco in corrispondenza di η ' 1, in cui
la sovrapposizione del sistema dei DT con le CSC porta alla formazione di un elevato
numero di ghost. Ancora una volta, il GMT, richiedendo una coincidenza tra i diversi
sottosistemi, riesce a ridurre la frequenza di ghost in queste regioni.
Figura 2.12: Risoluzione nella misura del PT , in funzione di PT , ottenuta dal trigger dei tubi a deriva.
2.6 Prestazioni del sistema di trigger dei muoni
41
Figura 2.13: Efficienza di rivelazione dei singoli sottosistemi e del GMT in funzione di η.
Figura 2.14: Efficienza di rivelazione dei singoli sottosistemi e del GMT in funzione di φ nel barrel.
Figura 2.15: Efficienza di rivelazione dei singoli sottosistemi e del GMT in funzione di φ negli endcap.
42
Il sistema di trigger dei muoni
Figura 2.16: Efficienza di rivelazione dei singoli sottosistemi e del GMT in funzione di PT nel barrel.
Figura 2.17: Efficienza di rivelazione dei singoli sottosistemi e del GMT in funzione di PT negli endcap.
Figura 2.18: Percentuale di falsi doppi muoni nei singoli sottosistemi e nel GMT in funzione di η.
Capitolo 3
Requisiti di fisica e funzionalità del
Wedge Sorter
Molti eventi di fisica interessante a LHC potranno essere identificati attraverso la presenza di una coppia di muoni tra i prodotti finali d’interazione. In alcuni casi i muoni si
possono anche presentare spazialmente vicini tra loro. Al fine di mantenere massima la
probabilità di identificare queste reazioni, il sistema di trigger deve garantire una elevata
efficienza nella identificazione di una coppia di muoni, anche nel caso si presentino vicini spazialmente. Ciò richiede una elevata ridondanza: una stessa zona del rivelatore può
essere analizzata da più di un componente del sistema di trigger. Questo può portare il
sistema a ricostruire più copie della stessa traccia (“ghost”, tracce fantasma). Il rischio
in questo caso è quello di saturare la massima frequenza disponibile di eventi accettati localmente con eventi ridondanti, a scapito una corretta ricostruzione ai livelli successivi.
Il secondo requisito per il sistema di trigger dei muoni è dunque l’individuazione e l’eliminazione dei ghost. A livello locale i ghost sono eliminati dal Trigger Server (§ 2.1). Uno
dei compiti principali del Wedge Sorter è la soppressione dei ghost generati dai Sector
Processor (§ 2.4.1), effettuata prima della selezione dei candidati da inviare al Barrel Sorter. Nei paragrafi seguenti sono mostrati alcuni casi che richiedono un efficiente trigger
di eventi con due muoni, in particolare alcuni decadimenti del bosone di Higgs previsto
dal Modello Standard. Si mostra inoltre come il Wedge Sorter risponda ai requisiti per la
loro corretta identificazione.
43
44
Requisiti di fisica e funzionalità del Wedge Sorter
3.1
Interesse per trigger di coppie di muoni
In figura 2.2, nel § 2.2, sono state illustrate le frequenze di produzione di muoni singoli e
di coppie di muoni. È stato mostrato come si stimano i tagli in impulso trasverso, e l’importanza per gli eventi con più di un muone, perché si presentano con una frequenza più
bassa e costituiscono un campione più ricco di fisica. Nel paragrafo seguente è analizzata
con maggiore dettaglio l’importanza della capacità del sistema di trigger nel risolvere coppie di muoni in un caso particolare: la ricerca del bosone di Higgs del Modello Standard
attraverso i suoi decadimenti con muoni nello stato finale.
3.1.1
Decadimento in muoni del bosone di Higgs
La ricerca del bosone di Higgs e la misura delle sue proprietà sono fra gli obiettivi primari
dell’esperimento CMS. In un vasto intervallo di masse possibili, il bosone di Higgs può
contenere muoni energetici tra i prodotti finali del suo decadimento, quindi il trigger dei
muoni è di fondamentale importanza per la ricerca di questi processi. In un lavoro dedicato
allo studio delle topologie che caratterizzano questi eventi [11] sono stati analizzati i
canali di decadimento, con muoni negli stati finali, per alcuni valori di massa dell’Higgs
particolarmente significativi: 135, 160 e 250 GeV. Come si può vedere in figura 3.1, le
frazioni di decadimento del bosone di Higgs nei diversi canali variano notevolmente con i
valori possibili di massa dell’Higgs. In particolare, la frazione principale di decadimenti
per un Higgs leggero (MH 0 . 135 GeV) è in bb̄, mentre al di sopra di questo valore di
massa divengono rapidamente dominanti i decadimenti in W W , per i quali il processo è in
soglia a MH 0 ' 160 GeV. Per valori superiori anche i decadimenti in ZZ divengono molto
importanti: per MH 0 = 250 GeV anche le Z 0 possono essere prodotte entrambe reali. Per
valori superiori di massa anche i decadimenti in quark top diventano importanti, anche se
le indicazioni dei più recenti risultati sperimentali tendono ad escludere valori di massa
elevati (MH 0 & 300 GeV) [2]. La scelta dei tre valori di massa suddetti consente uno
studio dettagliato dei processi principali possibili in tutto il range di masse.
Sono stati analizzati tutti gli eventi con almeno due muoni nello stato finale con
PT > 5 GeV (valore minimo rivelabile dal trigger [11]) e |η| < 1.1. La condizione su η
3.1 Interesse per trigger di coppie di muoni
45
equivale alla richiesta che il muone attraversi almeno due stazioni del barrel, in modo tale
che possa essere ricostruito indipendentemente dal trigger dei tubi a deriva. In tabella
3.1 sono riportati le frazioni di decadimento per gli eventi cosı̀ selezionati. La richiesta
di due muoni nel barrel, in particolare, porta ad una predominanza del numero di eventi
selezionati in cui l’Higgs decade in due Z 0 per MH 0 = 250 GeV, anche se i decadimenti
in ZZ sono sempre sfavoriti rispetto a quelli in WW. Infatti la probalilità di avere almeno
due muoni nello stato finale è più alta per un decadimento attraverso le Z 0 . Per MH 0 =
160 GeV ' 2MW possono essere prodotte due W reali, mentre non è possibile produrre
due Z 0 reali. Anche in Fig. 3.1 è possibile vedere il picco nella produzione di W e la
135
1
_
bb
160
250
WW
BR(H)
ZZ
10
-1
+ −
ττ
_
cc
tt-
gg
10
-2
γγ Zγ
10
-3
50
100
200
MH [GeV]
500
1000
Figura 3.1: Frazioni di decadimento del bosone di Higgs nel Modello Standard in funzione della
sua massa. Per bassi valori di massa è predominante il decadimento in bb̄, per via dell’accoppiamento dell’Higgs con la massa elevata del quark b. A MH 0 = 160 GeV è possibile il decadimento
in W W reali, e si può notare in figura il picco per questo processo. Al di sopra di ∼ 180 GeV
è possibile anche il decadimento in ZZ reali, e per valori di massa superiori questi restano in
pratica gli unici decadimenti possibili, fino a MH 0 ' 340 GeV, valore per cui possono essere
prodotti due quark top.
46
Requisiti di fisica e funzionalità del Wedge Sorter
contemporanea soppressione della produzione di Z per MH 0 = 160 GeV. Questo spiega la
percentuale di decadimenti in Z 0 addirittura più bassa rispetto al caso MH 0 = 135 GeV,
dove predomina il decadimento in bb̄.
Una caratteristica molto importante degli eventi è la topologia con cui si presentano le
coppie di muoni. Nelle figure 3.2, 3.3, 3.4 sono riportate le distribuzioni delle differenze in
η e φ tra i due muoni a PT maggiore prodotti negli eventi simulati. Come si può notare,
per tutti e tre i valori di massa è presente un picco pronunciato per ∆φ ' 0, ∆η ' 0,
molto evidente per MH 0 = 135 GeV e 160 GeV, meno per MH 0 = 250 GeV.
Questo
picco è spiegato dalle seguenti considerazioni:
Boost dell’Higgs:
L’Higgs è in tutti i casi prodotto in moto lungo la direzione dei fasci con velocità molto elevata(β ∼ 0.73 − 0.77). Questo contribuisce alla “collimazione” delle
particelle prodotte nel decadimento.
Campione per MH 0 = 135 GeV (Fig. 3.2):
Per questo valore di massa sono dominanti i decadimenti in bb̄. I muoni possono
provenire dal decadimento di una J/ψ o dai decadimenti semileptonici:
B + → µ+ νµ
D̄0
b−→ µ− ν¯ + X
µ
B 0 → µ+ νµ
D−(∗)
b−→ µ− ν¯ + X
µ
MH 0 [GeV /c2 ]
135
160
250
H 0 → Z 0Z 0
13%
10%
62%
e coniugato di carica
H 0 → W +W −
29%
83%
38%
e coniugato di carica
H 0 → bb̄
51%
6%
0%
altri decadim.
7%
1%
0%
Tabella 3.1: Frazioni di decadimento del bosone di Higgs attese per alcuni valori di massa
dell’Higgs. Questi dati si ottengono selezionando gli eventi con almeno due muoni nello stato
finale e altre condizioni spiegate nel testo. Gli errori statistici sono circa dell’1%. [11]
3.1 Interesse per trigger di coppie di muoni
47
Il mesone B possiede una energia molto elevata, pari a circa la metà della massa
dell’Higgs, quindi i due muoni originati dai due decadimenti successivi di un B
tendono ad essere emessi nella stessa direzione. Questo spiega il pronunciato picco
a ∆φ ' ∆η ' 0. La struttura diffusa del resto della distribuzione è dovuta a muoni
non correlati, derivanti cioè dai decadimenti di particelle prodotte da quark b diversi
o da altri processi.
Campione per MH 0 = 160 GeV (Fig. 3.3):
In questo caso dominano i decadimenti in W W , perchè possono essere prodotti
entrambi reali (MW ± ' 80 GeV). In questo caso correlazioni di spin contribuiscono
all’emissione dei due muoni nella stessa direzione, in quanto i neutrini hanno elicità
definita (Fig. 3.5).
Campione per MH 0 = 250 GeV (Fig. 3.4):
In questo caso gli eventi con decadimento H 0 → W + W − costituiscono più di un
300
250
200
150
100
50
0
3
∆φ2.5
2
1.5
1
0.5
1.25 1.5
0.75 1
0.5
0 0.25
0
2.25
1.75 2 ∆η
Figura 3.2: Distribuzione delle differenze in η e φ tra i due muoni a PT maggiore per
MH 0 = 135 GeV .
48
Requisiti di fisica e funzionalità del Wedge Sorter
80
70
60
50
40
30
20
10
0
3
∆φ2.5
2
1.5
1
0.5
0
0
1.25 1.5
0.75 1
0.25 0.5
2.25
1.75 2 ∆η
Figura 3.3: Distribuzione delle differenze in η e φ tra i due muoni a PT maggiore per
MH 0 = 160 GeV .
40
35
30
25
20
15
10
5
0
3
∆φ2.5
2
1.5
1
0.5
1.25 1.5
0.75 1
0.5
0 0.25
0
2.25
1.75 2 ∆η
Figura 3.4: Distribuzione delle differenze in η e φ tra i due muoni a PT maggiore per
MH 0 = 250 GeV .
3.1 Interesse per trigger di coppie di muoni
49
H0
s=0
W-
W+
s=1
s=1
µ-
νµ
νµ
s=½
s=½
P
s=½
P
Figura 3.5: Correlazioni di spin in
H0
s=½
P
W +W −
µ+
P
µ+ νµ µ− ν¯µ :
→
→
nel sistema di riferimento in cui
l’Higgs è a riposo, i W sono prodotti con impulsi e spin opposti. Considerando la conservazione
dello spin e dell’impulso, dato che i neutrini hanno elicità sempre sinistrorsa e gli antineutrini
sempre destrorsa, l’impulso dei due muoni tende ad avere stessa direzione e verso.
File: H_150_mmmm_rphi.ps, Date: 13 August 1997
+ ++
++
++++
+ +++++
+
++
+
+
+
+++
+
+
+++
+
++++++
+++
+
+++
+
+
+
+
++
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
++++
+
+
+++
++
+
++++
++
+
+
++
+
+
+
+
+
+
+
+
++
+
+
+
++
+
++
++
+
+
++
+
++
+
+
+
++
++
++
+
++
++
+++
+
+
+
+
++
++
+++
++
++
+
++
+
+
+
+
+
+
+
+++
+
+
+
++
++
++
+
+
++
+
+++
+
+
++++
+
+
++
++
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
++
+
+
+
+
+
+
+
+
+
+
+
+
+
+
++
+
+
+
+
+
+
+
+++
++
+
+
+
+
+
+
+
++++
+
+
++
+
++
+++
++
+
+
++
++
++
+
++
+
+
+
+
++++
++
+
++
+
++
+
+
+
+
++
+
+
+
+
+
+
+
+
+
+
++
+
+
+
+
+
+
+
++++++
+
++
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
++
+
+
+
++
+
+
+
+++++
+
+
+
+++
+
+
+
++
++
+
+
+
+
+
+
+
+++
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
++
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
++
+
+
+
+
+
+
+
+
++
+
+
++
+++++
+
++
+++++
+++
++
++++++
++
+
++++
+++
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
++
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+++
++
++
++++
++
+++
++
+
+
+
+
+
++
+
++
+++
+++
+
+
+++
+
+
+
+
+
+
++
+
++
+
++
+
+
++
++++
+
+
+
+
+
+
+
+++
+++
++++++++
++
++++
+ +++
+ ++
H→µµµµ
mH = 150 GeV
++++
++ ++
+20 min bias
Northeastern University
++ +
++ +
+
+++++
+
+
+++
+
+++
++
++ ++
+
++
+ ++
+++
+++
+
Figura 3.6: Simulazione di un evento H 0 → Z 0∗ Z 0 → µ+ µ− µ+ µ− , per MH 0 = 150 GeV. Notare
come due dei quattro muoni siano molto vicini in φ.
50
Requisiti di fisica e funzionalità del Wedge Sorter
terzo del totale, e spiegano il picco a ∆φ ' ∆η ' 0, mentre il maggior numero di
eventi presenti con una topologia differente è dovuto al decadimento in ZZ reali, che
si verifica nella maggior parte degli eventi, e che non produce particolari correlazioni
nella direzione dei muoni dello stato finale.
In Fig. 3.6 è mostrato un evento di un Higgs di 150 GeV che decade:
H 0 → Z 0∗ Z 0 → µ+ µ− µ+ µ−
Proprio questo evento mostra come due muoni dello stato finale possano presentarsi molto
vicini in φ.
Risulta evidente dalle distribuzioni mostrate come si possa presentare la necessità di
rivelare due muoni anche molto vicini spazialmente. Questo ha portato alla progettazione di un sistema di trigger ridondante per garantire la massima efficienza per tale
topologia: a tal fine, molto spesso ci sono sovrapposizioni tra componenti del trigger, per
evitare di avere zone con bassa accettanza. Un effetto indesiderato prodotto da questa
configurazione è la formazione di duplicati della stessa traccia, chiamati “ghost”.
3.2
3.2.1
Tracce fantasma (ghost)
Ghost nel trigger locale
La formazione di ghost interessa, in misura e con meccanismi diversi, tutte le parti del
trigger. Nei BTI (§ 2.1), che formano segmenti di traccia usando i quattro piani di tubi a deriva di un superlayer, un segmento composto dei quattro hit (HTRG) può essere
accompagnato da allineamenti di tre hit (LTRG) validi nel BX precedente o nel successivo. La soppressione degli LTRG consecutivi ad un HTRG riduce la frequenza di questi
segmenti ghost. I TRACO, i cui principi di funzionamento sono stati illustrati nel § 2.1,
effettuano indipendentemente estrapolazioni tra i segmenti trovati nei due superlayer in
(r, φ) di una stazione. Ogni TRACO elabora l’informazione proveniente da una parte della stazione, e TRACO consecutivi condividono parte degli ingressi. Questo conduce alla
possibilità che uno stesso muone porti alla ricostruzione di due segmenti di traccia, da
3.2 Tracce fantasma (ghost)
51
parte di due TRACO adiacenti. I TS (§ 2.3) devono selezionare per i Sector Processor
due segmenti per stazione, e in presenza di ghost i SP potrebbero ricevere due segmenti
identici da una stazione, a scapito della efficienza nella ricostruzione di una eventuale seconda traccia vicina. Il riconoscimento e la cancellazione dei ghost generati dai TRACO
è svolto dal Trigger Server (§ 2.1). Avendo a disposizione contemporaneamente l’informazione generata dai diversi TRACO di una stazione, il TS è in grado di attivare degli
algoritmi di soppressione delle false tracce basati sul confronto dei segmenti ricostruiti da
TRACO adiacenti.
3.2.2
Ghost generati dal trigger regionale
Il Wedge Sorter si trova in una situazione simile a quella del TS. Oltre ad effettuare la
selezione dei due migliori muoni rivelati in un wedge, deve ridurre il numero di eventuali
ghost generati dai Sector Processor. Essi infatti operano indipendentemente per ogni
settore del rivelatore, ma per ricostruire efficacemente tracce che non sono contenute nel
settore effettuano estrapolazioni anche verso i settori adiacenti. Quindi può succedere che
due SP consecutivi presentino candidati che corrispondono allo stesso muone. In questo
caso, però, le due tracce sono costruite con uno o più segmenti in comune. In Fig. 3.7
sono mostrati alcuni esempi di generazione di questo tipo di ghost. Compito del Wedge
Sorter è riconoscere questa situazione attraverso il controllo dei segmenti utilizzati per
le tracce, e eliminare dal processo di selezione i ghost riconosciuti. In un evento con un
muone in cui un ghost della traccia non è stato cancellato il trigger riporta entrambe le
tracce, e l’evento contiene due muoni invece di uno soltanto. L’efficacia dell’algoritmo di
soppressione dei ghost è quindi valutata in base alle frequenze attese di eventi ad uno e
due muoni. La frequenza totale di eventi a due muoni è a parità di soglia sul PT circa
lo 0.5% del rate di muoni singoli, come si vede in Fig. 2.2. È ragionevole aspettarsi dal
trigger che il numero di eventi a due muoni dovuti alla mancata cancellazione di un ghost
non sia superiore al numero di eventi a due muoni “veri”. Quindi la frequenza di tracce
ghost non cancellate in eventi con muoni singoli non deve superare lo 0.5% del totale.
52
Requisiti di fisica e funzionalità del Wedge Sorter
MB4
ME/1/3
MB3
MB1
WHEEL+ 2
The wheel +1 SP will
reconstruct a T3-4 track
ME/1/1
The wheel 0 SP will
reconstruct a T1-2-3 track
Muon
trac
k cro
ssing
whee
l 0-1
boun
darie
s
WHEEL +1
ME/1/2
WHEEL 0
ME/2/1 - ME/2/2
MB2
MB4
ME/1/3
MB3
MB1
WHEEL+ 2
12
bo
un
da
rie
s
WHEEL +1
ME/1/2
WHEEL 0
ME/2/1 - ME/2/2
MB2
wh
ee
l
cr
os
sin
g
tra
ck
M
uo
n
The wheel +2 SP will
reconstruct a T2-3-4 track
ME/1/1
The wheel +1 SP will
reconstruct a T1-2 track
Figura 3.7: Esempi di generazione di ghost. Sono schematicamente rappresentate le stazioni dei muoni
viste in sezione (r, z); in questa proiezione una traccia è approssimativamente rettilinea. I segmenti
forniti dal trigger locale sono indicati con le frecce corte, poste su ciascuna stazione (in azzurro). Nei
casi riportati, la traccia attraversa il confine tra due ruote. In alto, sono trovati i primi due segmenti nel
settore centrale, e gli altri due nel primo settore. Il SP della ruota centrale (wheel 0 in figura) effettua
estrapolazioni con i primi tre segmenti, in quanto ha a disposizione dati dal SP consecutivo. Quest’ultimo
invece ricostruisce una traccia formata soltanto dagli ultimi due segmenti – i SP non ricevono dati da
settori a η minore. Si tratta quindi di due copie della stessa traccia fisica; una di esse (quella formata dal
minor numero di segmenti) sarà cancellata. Questa situazione può essere infatti individuata, grazie al
segmento che le due tracce hanno in comune. In basso è presente un caso simile, ma la traccia attraversa
il confine tra la prima e la seconda ruota, e in questo caso le due tracce sono formate rispettivamente
da 2 e 3 segmenti. È allo studio la possibilità di cancellare la traccia formata da tre segmenti in questo
caso, perchè le tracce contenenti i segmenti delle prime due stazioni forniscono una misura più precisa di
posizione e PT .
3.3 Requisiti e algoritmo del Wedge Sorter
3.3
53
Requisiti e algoritmo del Wedge Sorter
In base alle considerazioni riportate in precedenza i compiti del Wedge Sorter possono
essere cosı̀ schematizzati [15]:
1. Soppressione delle tracce ghost
Ciascun Sector Processor invia al Wedge Sorter, per ogni proprio candidato, un
valore di qualità e un indirizzo che codifica se e quali segmenti dalle stazioni 2,
3 e 4 sono stati usati nel ricostruire la traccia. La qualità di una traccia indica
quanti segmenti sono stati usati per formarla: ad un maggior numero di segmenti
corrisponde una qualità maggiore. Il Wedge Sorter confronta gli indirizzi delle tracce
provenienti da SP adiacenti (settori adiacenti in z) per riconoscere eventuali ghost.
Nel caso in cui riconosca che due tracce corrispondono ad una stessa traccia fisica,
predispone per la cancellazione quella di qualità inferiore cioè formata da un minor
numero di segmenti (eventuali eccezioni sono in fase di studio – vedi Fig. 3.7).
2. Selezione dei due migliori candidati
Il Wedge Sorter seleziona fino a due tracce dall’insieme di candidati forniti dai SP di
un wedge. Questa selezione deve essere basata sulla qualità delle tracce e sul valore
dell’impulso trasverso, privilegiando tracce di alta qualità e alto impulso. Il nucleo
computazionale centrale del progetto è quindi un sorter che seleziona i due migliori
candidati in base a questo criterio. Questa parte, prevedibilmente, rappresenta dal
punto di vista progettuale il componente più complesso del modulo.
Al di là delle funzionalità di soppressione dei ghost e selezione dei “migliori” candidati, è stata prevista una elevata flessibilità operativa dell’algoritmo. Questo è necessario
perché possano essere affrontate efficacemente condizioni non normali di funzionamento
dei rivelatori o dell’elettronica. Questa flessibilità è ottenuta mediante la configurabilità
di molte operazioni:
54
Requisiti di fisica e funzionalità del Wedge Sorter
1. Cancellazione incondizionata candidati
È possibile cancellare incondizionatamente qualsiasi candidato in modo indipendente. Questo può essere utile per far fronte a particolari modi di funzionamento anche
imprevisti dell’elettronica che precede il Wedge Sorter nella catena di elaborazione,
per esempio per disabilitare un intero settore rumoroso.
2. Soglie sui valori di qualità
È possibile impostare delle soglie minime per i valori di qualità, indipendenti per
ogni candidato: se la qualità non supera un valore di riferimento, la traccia non
prende parte al processo di selezione. Ciò può essere utile se si è in presenza di
molto rumore, fisico o strumentale, che per lo più è costituito da tracce di bassa
qualità (formate da pochi segmenti).
3. Configurazione della procedura di selezione
È possibile variare il modo in cui avviene la selezione delle due tracce modificando il
valore di qualità di ogni traccia prima della selezione. Questo può essere molto utile
nel caso di funzionamento anomalo di uno o più SP. Ad esempio, per affrontare il
caso in cui una intera stazione non funzioni, si può richiedere che le tracce formate
da 2 segmenti provenienti da un dato settore abbiano, nel processo di selezione, la
priorità normalmente assegnata a tracce formate da 3 segmenti e cosı̀ via.
Oltre a ciò, il Wedge Sorter ha delle restrizioni sul tempo a disposizione per effettuare
le operazioni. Sono disponibili 2 BX (50 ns) dal momento in cui i SP forniscono i dati delle
tracce ricostruite. I valori di qualità e gli indirizzi dei segmenti usati sono però ricevuti
un BX prima, in quanto questi dati sono già a disposizione prima che i SP abbiano
completato l’assegnazione degli altri parametri (PT , η, φ, q). Questa circostanza permette
di anticipare il riconoscimento dei ghost e le altre operazioni configurabili, in modo da
impiegare i 50 ns, corrispondenti ai due BX assegnati al Wedge Sorter, unicamente per
le operazioni di selezione. Si tratta di un ottimo vantaggio, in quanto questa parte è dal
punto di vista computazionale molto complessa.
3.3 Requisiti e algoritmo del Wedge Sorter
3.3.1
55
Simulazione dell’algoritmo di soppressione dei ghost del
Wedge Sorter
L’algoritmo di cancellazione dei ghost applicato dal Wedge Sorter è stato simulato nell’ambito di ORCA1 , il pacchetto software di ricostruzione di CMS [22],[23]. Sono stati
generati 30000 eventi contenenti muoni singoli, distribuiti uniformemente nella regione
del barrel e di PT compreso fra 5 e 100 GeV. Simulando il funzionamento del sistema di
trigger è possibile verificare come questi eventi sono ricostruiti. In particolare, in questo
caso, si è verificato che la frequenza di eventi a due muoni (in cui uno è certamente un
ghost) fosse resa sufficientemente bassa dall’algoritmo di cancellazione dei duplicati del
Wedge Sorter. I risultati sono riassunti in tabella 3.2.
Nessuna traccia
6.1%
1 traccia
93.4%
2 tracce
0.46%
> 2 tracce
0
Tabella 3.2:
Risultati sulla ricostruzione di muoni singoli in presenza dell’algoritmo di
cancellazione dei ghost del Wedge Sorter.
Come si può vedere, il numero di eventi in cui sono ricostruiti due muoni ovvero eventi
in cui una traccia ghost non è stata cancellata sono circa lo 0.46% del totale. Questo valore
soddisfa il criterio di riferimento di non superare la frequenza di veri eventi a due muoni,
pari a circa lo 0.5% di quella di eventi con un singolo muone – vedi § 2.2.
Inoltre, in Fig. 3.8, è mostrata l’efficienza nella ricostruzione di coppie di muoni veri in
funzione della distanza angolare reciproca. La larghezza del buco di efficienza per ∆φ ' 0
è dell’ordine di 2.50 , valore pari alla risoluzione nella misura angolare. L’efficienza quindi
è limitata dalla risoluzione del rivelatore e i sistemi del trigger regionale non peggiorano
in maniera significativa questo limite.
1
Object Oriented Reconstruction for CMS Analysis
56
Requisiti di fisica e funzionalità del Wedge Sorter
Figura 3.8: Efficienza nella ricostruzione di coppie di muoni in funzione della differenza tra le
coordinate φ. Come si può notare, il buco di efficienza (' 40%) per ∆φ = 0 ha una larghezza
dell’ordine di ∼ 2.5o corrispondente alla risoluzione sulla misura di φ fornita dal trigger. Il
trigger regionale quindi non peggiora in maniera significativa il limite nella capacità di risolvere
muoni vicini dato dalla risoluzione nella misura di φ.
3.3.2
Segnali e sincronizzazione del Wedge Sorter
Dal punto di vista hardware, l’elettronica di un Wedge Sorter sarà ospitata in una scheda VME [27] nei crate del trigger regionale [24]. Gli ingressi, le uscite e la struttura
dell’algoritmo sono definite in questo paragrafo; i dettagli della progettazione e dell’implementazione hardware del modulo saranno discussi nel prossimo capitolo. Ogni SP del
wedge invia fino a due tracce al Wedge Sorter, che quindi riceve fino a 12 candidati. Ogni
traccia consiste di 31 bit contenenti l’informazione schematizzata in Tab. 3.3.
3.3 Requisiti e algoritmo del Wedge Sorter
57
Impulso trasverso, PT
È codificato su una scala di 5 bit. La risoluzione non è riportata, in quanto la scala
non è lineare, ma approssimativamente logaritmica. Comunque è mediamente del
15.2% e raggiunge il 13.5% per tracce ricostruite con segmenti delle stazioni 1 e 2.
Angolo azimutale, φ
L’angolo è fornito con una precisione di 8 bit, scala lineare, per una risoluzione di
circa 2.5◦ .
Pseudorapidità, η
Il valore di η è rappresentato con 6 bits, con una risoluzione di circa il 2-3% per
|η| < 1.1. Un bit aggiuntivo è usato dall’ Eta Track Finder per indicare se il valore
è ad alta o bassa risoluzione.
Carica, q
Un bit che indica se il muone ha carica positiva o negativa.
Qualità
Tre bit indicano la qualità della traccia. Si tratta di un numero binario da 0 a 7, il
cui significato è illustrato in Tab. 3.4. Hanno qualità maggiore le tracce formate da
un maggior numero di segmenti. A parità di segmenti usati, una qualità più alta è
assegnata alle tracce formate da segmenti più interni, in quanto questi consentono
una migliore determinazione del PT .
Informazione
PT
φ
η
segno
qualità
indirizzi segmenti
Numero di bit
5
8
6+1qualità
1
3
7
Unità / precisione
non lineare (±5 GeV a PT = 30 GeV)
2.5◦
∼ 3%
–
–
–
Tabella 3.3: Dati inviati per ogni traccia dai Sector Processor al Wedge Sorter. Per una
spiegazione dettagliata si veda il testo.
58
Requisiti di fisica e funzionalità del Wedge Sorter
Valore di
qualità
Classi di
traccia
7
T1234
6
5
4
3
2
1
T123
T124
T134
T234
T12
T13
T14
T23
T24
T34
0
Null
Track
Tabella 3.4: Significato dei valori di qualità associati alle tracce ricostruite dai Sector Processor.
I numeri nelle “classi di traccia” indicano quali stazioni sono state usate, ad esempio T123 è
una traccia formata da segmenti delle prime tre stazioni. “Null Track” significa che non c’è
candidato.
Indirizzi segmenti
Indicano secondo una codifica ad hoc quali segmenti sono stati usati per assemblare
la traccia nelle stazioni 2, 3 e 4. Sono contemplate tutte le possibilità, incluse le
stazioni dei settori adiacenti in z e φ e la distinzione tra primo e secondo segmento
di ogni stazione.
La quantità complessiva di dati in ingresso e uscita sarà quindi:
IN GRESSI : 12 tracce × 31 bit/traccia = 372 bit
U SCIT E :
2 tracce × 31 bit/traccia = 62 bit
T otale
= 434 bit
In Fig. 3.9 sono mostrati i blocchi logici del Wedge Sorter, e la sequenza temporale
delle operazioni svolte. I primi dati ad essere ricevuti sono qualità e indirizzi dei segmenti
dei 12 candidati del wedge. Chiamiamo il ciclo di clock in cui ciò avviene BX-1, in
quanto a questo punto i SP non hanno ancora completato l’assegnazione dei parametri
delle tracce, che sono ricevuti dal Wedge Sorter al BX successivo. In questo primo BX,
il Wedge Sorter effettua tutte le operazioni di soppressione dei ghost, di filtraggio delle
basse qualità, di ricodifica e le altre operazioni configurabili. L’unità dedicata a queste
operazioni è chiamata in figura Identificatore di false tracce. I segnali di cancellazione
generati (fino a 12, uno per traccia) sono inviati alla unità Logica di Cancellazione e
Selezione che dopo aver eliminato i candidati segnalati si occupa di trovare i due candidati
migliori in base ai valori più grandi di qualità e impulso trasverso. Nel frattempo i dati
completi delle tracce sono mantenuti in pipeline, in attesa della selezione. La logica di
3.3 Requisiti e algoritmo del Wedge Sorter
59
selezione genera due vettori di selezione (Select 1 e Select 2 ) che indicano al Multiplexer
dell’unità Pipeline e Multiplexer quali tracce selezionare per l’uscita.
-2 BX
-1 BX
+0 BX
+1 BX
+2 BX
2 traccie, ruota –2
Pipeline e multiplexer
2 traccie, ruota –1
1a traccia
2 traccie, ruota –0
2 traccie, ruota +0
2 traccie, ruota +1
2 traccie, ruota +2
2a traccia
PT
Segnali di
cancellazione
Logica di
Cancellazione e
Selezione
Qualita’
Identificatore di
false tracce
Indirizzi segmenti
stazioni 2, 3 e 4
Select 1
Select 2
Figura 3.9: Schema a blocchi del Wedge Sorter. Nel primo BX sono effettuate le operazioni di
controllo delle false tracce (Identificatore di false tracce): istanze di cancellazione sono generate
per i ghost e per le tracce che soddisfano altre condizioni programmabili. Questi segnali indicano alla unità Logica di cancellazione e selezione quali tracce cancellare prima di effettuare la
selezione. Nel frattempo i dati completi delle 12 tracce sono mantenuti in pipeline. I due muoni
selezionati sono inviati in uscita (Pipeline e Multiplexer ).
60
Requisiti di fisica e funzionalità del Wedge Sorter
Capitolo 4
Progettazione del Wedge Sorter
La progettazione di un dispositivo hardware che realizzi le funzionalità richieste al Wedge
Sorter è condizionata da molti fattori. La scelta dei dispositivi dipende sia dalla natura
dell’algoritmo che dai requisiti legati alla collocazione del modulo, sia in senso architetturale che ambientale. Dopo aver discusso la scelta dei dispositivi adatti alla implementazione del Wedge Sorter, saranno illustrate le caratteristiche di metodologia, sviluppo e
verifica di un progetto in VHDL per un dispositivo programmabile. Saranno inoltre mostrati i risultati delle simulazioni di implementazione su alcuni dispositivi, i quali portano
ad una scelta precisa per la realizzazione hardware del Wedge Sorter.
4.1
L’architettura del trigger regionale
Come illustrato nel § 2.1 il trigger regionale dei tubi a deriva consiste nei moduli dedicati
alla ricostruzione di tracce nelle viste (r, φ) e (r, z) – Sector Processor e Eta Track Finder
– e in una struttura di selezione dei migliori candidati, composta dai Wedge Sorter e dal
Barrel Sorter. Ciascuno di questi sarà un modulo (scheda) indipendente. In tabella 4.1
sono riassunte le caratteristiche e il numero di questi moduli. Il trigger regionale sarà
fisicamente situato nella counting room sotterranea di CMS. In Fig. 4.1 si può vedere
la sala sperimentale (a destra) con il rivelatore visto in sezione trasversale, e la counting
room (a sinistra) nella quale sono posti i sistemi del trigger regionale e i dispositivi di
controllo e monitoraggio di tensioni, gas ecc.
61
62
Progettazione del Wedge Sorter
Modulo
Sector Processor
Eta Track Finder
Wedge Sorter
Barrel Sorter
Funzione
# unità
Ricostruz. tracce (r, φ)
72
Ricostruz. tracce (r, z)
12
Selezione µ wedge
12
Selezione µ barrel
1
Zona elab.
1 settore
1 wedge
1 wedge
intero barrel
Tabella 4.1: I moduli del trigger regionale dei tubi a deriva
Figura 4.1: Sale sotterranee del rivelatore CMS. A destra si può vedere una sezione trasversale
del rivelatore nella sua posizione nella sala sperimentale. A sinistra la counting room con i rack
dei trigger regionali, di controllo, gestione gas e tensioni. È visibile anche il percorso delle fibre
ottiche dalle balconate sul rivelatore alla counting room.
4.1.1
I moduli del trigger regionale dei tubi a deriva
Tutta l’elettronica del trigger locale (BTI, TRACO, TS) è posizionata sul rivelatore. I
dati prodotti, un grande numero di canali, sono raccolti e inviati per mezzo di fibre ottiche
alla counting room. Qui si trova il trigger regionale. È formato da 2 rack comprendenti tre
crate VME1 [27] ciascuno (Fig. 4.2); ogni crate alloggia tutta l’elettronica di due wedge.
1
Il VME è lo standard IEEE 1014-1987, IEC 821.
4.1 L’architettura del trigger regionale
63
Figura 4.2: Rack (a sinistra) e crate (a destra) del trigger regionale. Per semplicità è mostrata
solo metà delle schede presenti in un crate, cioè 6 SP, un ETF e un WS; nel resto del crate si
ripetono gli stessi moduli corrispondenti ad un altro wedge.
Il sistema di trigger per un singolo wedge del rivelatore consta dei seguenti moduli:
• 4 Sector Processor
• 2 Sector Processor equipaggiati per la connessione con il trigger delle CSC per la
zona di sovrapposizione
• 1 Eta Track Finder
• 1 Wedge Sorter
. Oltre a questi moduli, ogni crate contiene un controller VME, per il controllo dello stato dei vari moduli, ed un modulo per la ricezione e la distribuzione del clock di sistema.
64
Progettazione del Wedge Sorter
Ciascuna scheda sarà del formato 9U [27]. Il crate [24] avrà un backplane 2 comprendente,
oltre al bus standard VME, gran parte dei segnali che i moduli si scambiano. Altre connessioni invece sono realizzate tramite connettori e cavi sui pannelli frontali delle schede,
cosı̀ come sul pannello frontale sono ricevuti e trasmessi tutti i segnali che vengono/vanno
ad altri crate. Per quel che riguarda il Wedge Sorter, le tracce ricostruite dai SP sono ricevute sul backplane, assieme ad alcuni segnali globali di controllo e sincronizzazione. I
due candidati selezionati sono inviati al Barrel Sorter attraverso una connessione tramite
il pannello frontale. Le tracce ricostruite dall’ Eta Track Finder sono ricevute dal pannello frontale, anche se questo modulo si trova nello stesso crate, per risparmiare spazio sul
backplane.
4.2
4.2.1
Scelta tecnologica per il Wedge Sorter
Tecnologie disponibili
Nella progettazione di un modulo di elettronica si hanno a disposizione molte alternative. In Fig. 4.3 è schematizzato l’albero delle possibilità. La prima distinzione è tra
la realizzazione di un dispositivo integrato e l’utilizzo di componenti discreti, in cui la
funzionalità è raggiunta mediante numerosi dispositivi che realizzano le funzioni logiche
elementari. In questo caso, l’utilizzo di logica discreta non è nemmeno stata presa in considerazione in quanto la complessità dell’algoritmo e le prestazioni richieste, sono troppo
esigenti. I dispositivi integrati si dividono in due principali categorie: ASIC e dispositivi
programmabili. ASIC significa Application Specific Integrated Circuit, “Circuito integrato per applicazione specifica”. Si tratta quindi di microprocessori progettati e realizzati
appositamente per un compito specifico. In questi dispositivi l’implementazione su silicio del progetto è realizzata ad hoc da aziende specializzate. I dispositivi programmabili
invece sono circuiti integrati progettati per adattarsi a diverse necessità: contengono un
grande numero di unità programmabili per effettuare qualsiasi semplice operazione logica e un grande numero di interconnessioni tra queste unità, utilizzabili in modo molto
2
Letteralmente “piano posteriore”, questa parola si riferisce alla struttura delle connessioni elettriche
effettuate nel piano posteriore del crate tra le varie schede.
4.2 Scelta tecnologica per il Wedge Sorter
65
Scelta tecnologia realizzativa
Circuiti
integrati
Logica
discreta
Dispositivi
programmabili
ASIC
FPGA
pASIC
Figura 4.3: Schema delle scelte tecnologiche possibili nella realizzazione di un circuito digitale.
I quadri in verde formano il “percorso” fatto nella valutazione di questo progetto.
flessibile. In questo caso il progetto non viene tradotto in un insieme di transistor e connessioni da realizzare su silicio, ma in una serie di dati con i quali è possibile configurare
il dispositivo secondo le proprie necessità prima che esso sia utilizzabile. I dispositivi
programmabili possono essere pASIC (ASIC programmabili) o FPGA. I pASIC possono essere programmati una sola volta, dopo di che mantengono la funzionalità per un
tempo indeterminato, anche dopo interruzioni dell’alimentazione. FPGA significa Field
Programmable Gate Array e si tratta di dispositivi che possono essere programmati un
grandissimo numero di volte, in quanto questa operazione consiste in pratica nello scrivere valori in celle di memoria tipo RAM che specificano come devo essere utilizzati i blocchi
logici e le interconnessioni tra essi. Il mercato mondiale di questi dispositivi è dominato
66
Progettazione del Wedge Sorter
da due produttori principali, Altera e Xilinx, i quali realizzano dispositivi sempre molto
simili in quanto a prestazioni complessive ma decisamente diversi riguardo alla struttura
interna.
4.2.2
Valutazioni comparative delle tecnologie
Le differenze sostanziali tra ASIC e programmabili portano ad alcune considerazioni che
possiamo cosı̀ riassumere:
1. Prestazioni
Con ASIC e pASIC è possibile raggiungere prestazioni più elevate e densità maggiori
che non usando degli FPGA, anche se questi ultimi sono incorsi in una evoluzione
molto rapida negli ultimi anni. I risultati ottenibili possono essere valutati soltanto
simulando l’implementazione su una specifica tecnologia.
2. Costi
Dal punto di vista produttivo, gli ASIC sono realizzati da industrie specializzate
disponendo la logica necessaria sul wafer di silicio. Il costo iniziale per la preparazione degli strumenti necessari è molto elevato; d’altra parte il costo di realizzazione
del singolo dispositivo è molto basso. Gli ASIC sono quindi appropriati per produzioni su vasta o vastissima scala, dato che all’aumentare del numero di dispositivi
prodotti il prezzo per unità scende. Gli FPGA sono vantaggiosi per la realizzazione
di prototipi o comunque di un basso numero di unità, in quanto non esiste nessun
costo “iniziale”.
3. Resistenza alle radiazioni
Un’altra caratteristica che differenzia le famiglie, molto importante, riguarda la resistenza alle radiazioni. Particelle ionizzanti che attraversano i dispositivi possono
provocare errori di funzionamento e addirittura danni irreversibili. Da questo punto
di vista, gli ASIC e i pASIC sono nettamente in vantaggio: sono maggiormente resistenti alle radiazioni, sia per quel che riguarda i cosiddetti SEU (Single Event Upset,
4.2 Scelta tecnologica per il Wedge Sorter
67
errore da evento singolo) sia riguardo a danni permanenti. Questo soprattutto perché in un FPGA può essere modificato il contenuto della memoria di configurazione,
il che produce un modifica delle funzionalità del dispositivo anzicé un errore singolo,
costringendo ad una riconfigurazione.
Il numero di Wedge Sorter necessari è 12, uno per ogni wedge del rivelatore. Anche
considerando l’utilizzo di più di un microprocessore per modulo e la necessità di averne una
certa quantità di riserva, si tratta di un numero complessivo di dispositivi molto piccolo.
Compatibilmente con le prestazioni necessarie, quindi, l’utilizzo di ASIC è assolutamente
svantaggioso. Inoltre, essendo situati nella counting room, questi moduli non hanno
particolari requisiti di resistenza alla radiazione. Con queste considerazioni, l’uso di un
FPGA non ha nessuna controindicazione, anzi la sua flessibilità garantisce la possibilità
di modifiche ed evoluzioni del progetto in qualsiasi momento. Lo sviluppo del progetto è
stato quindi orientato verso l’utilizzo di questi dispositivi.
4.2.3
Dispositivi programmabili
Gli FPGA prodotti da ALTERA e XILINX sono di diversi tipi con prestazioni, capacità,
dimensioni differenti. La scelta, se possibile, è rivolta ad un dispositivo che consenta di
implementare l’intero algoritmo. La necessità di avere 450-500 pin a disposizione per
ingressi e uscite riduce il numero di prodotti che possono essere adatti. In Tab. 4.2
sono riportati i dispositivi di entrambi i produttori che possono soddisfare questo primo
requisito.
Ciascun modello è presente in diverse versioni che differiscono principalmente per dimensioni; per questo nella tabella sono indicati i valori massimi disponibili per quanto
riguarda il numero di pin e la logica presente nel dispositivo. La quantità di logica disponibile è indicata con il “numero di porte logiche equivalenti”. Questo parametro per
classificare la capacità di un dispositivo deriva dal campo della progettazione di ASIC.
Tipicamente, infatti, qualsiasi funzionalità circuitale è realizzata tramite porte N AN D a
due ingressi; il numero di porte di questo tipo necessario ad implementare interamente un
dato progetto definisce in modo abbastanza fedele la “dimensione” del progetto stesso.
68
Progettazione del Wedge Sorter
Max Logica disponibile
Famiglia
Produttore
Max Numero Pin
(migliaia di porte
logiche equivalenti)
Flex 10K/10KE
Virtex
Apex 20K/20KE/20KC
Apex 2
Virtex E
Virtex 2
Altera
Xilinx
Altera
Altera
Xilinx
Xilinx
450
512
808
1060
804
1108
250
1100
1500
3000
4000
8000
Tabella 4.2: Confronto tra i dispositivi prodotti da Xilinx e Altera. Sono riportati solo i
dispositivi con più di ∼ 450 ingressi/uscite. Per ogni famiglia esistono numerose versioni, per
questo sono indicati i valori massimi di quantità di logica e numero di pin disponibili in ciascuna
famiglia. Il numero di porte logiche equivalenti fornisce una indicazione della capacità dei
dispositivi, anche se l’implementazione di uno specifico algoritmo deve essere valutata tramite
simulazioni.
Nel caso degli FPGA è consuetudine stimare la capacità dei dispositivi con questo stesso
parametro, anche se in questo caso è meno adatto. Infatti l’implementazione non consiste nella realizzazione del circuito sul silicio ma nella configurazione di blocchi di logica
standard presenti in gran numero nel programmabile; si tratta quindi di un parametro
indicativo e adatto solo per fare confronti tra dispositivi dalle architetture non troppo
diverse. Come si può notare, entrambi i produttori forniscono dispositivi in un ampio
intervalli di dimensioni, pin disponibili, prestazioni. Per poter effettuare una scelta solo
dopo aver verificato le prestazioni ottenibili con dispositivi diversi, e anche per consentire eventuali modifiche architetturali future, lo sviluppo del progetto è stato orientato a
mantenere una massima portabilità. Con portabilità di un progetto si intende la sua adattabilità a diverse scelte tecnologiche. Deve essere possibile utilizzare lo stesso pacchetto
progettuale per una implementazione su dispositivi diversi, anche dei diversi produttori.
4.3 Metodologia, sviluppo e verifica del progetto
4.3
4.3.1
69
Metodologia, sviluppo e verifica del progetto
Elementi di portabilità del progetto
Le scelte riguardanti strumenti e metodi utilizzati che portano ad un progetto portabile
sono schematizzate nei seguenti punti:
Sviluppo in codice VHDL
Il VHDL3 è un linguaggio costruito per la progettazione di dispositivi integrati. Si tratta
di un linguaggio di alto livello, consente cioè costrutti complessi come cicli, scelte condizionali, suddivisione in componenti ecc. Essi sono utilizzati in maniera del tutto simile
alle corrispondenti istruzioni di linguaggi come il Pascal o il C. A ciascuno di essi può
corrispondere una struttura hardware più o meno standard. Il vantaggio rispetto alla
progettazione per mezzo di schematici è evidente: un progetto complesso e strutturato è
molto ben leggibile, documentabile e aggiornabile in modo comprensibile; inoltre la funzionalità è separata dall’implementazione. L’uso di schematici complessi, invece, richiede
una continua attenzione a questioni puramente tecniche che possono essere invece trattate
con efficacia in modo automatico dai software di sviluppo. Il codice VHDL, infatti, viene
compilato come un normale programma, con la differenza che il compilatore in questo caso estrae le funzionalità richieste, le converte in equazioni logiche, e traduce queste ultime
in modo da ottenere la corrispondente configurazione del dispositivo. A titolo di esempio, in Fig. 4.4 è mostrato come il compilatore di Xilinx traduce un semplice multiplexer
a quattro ingressi nelle strutture logiche implementabili in un dispositivo programmabile. Inoltre, il VHDL è uno standard IEEE4 (IEEE 1076) e questo è, direttamente una
garanzia di portabilità. Infatti i principali prodotti software per la progettazione, siano
essi legati ad una particolare famiglia di dispositivi o strumenti generici, includono praticamente senza eccezioni il supporto a questo linguaggio. Questo significa che la versione
3
VHSIC Hardware Description Language (dove VHSIC significa “Very High Speed Integrated
Circuit”), ovvero Linguaggio di Descrizione Hardware per Circuiti Integrati ad Altissima Velocità.
4
Institute of Electrical and Electronics Engineers, una associazione professionale e tecnica senza scopi
di lucro che si occupa principalmente della definizione di standard nel campo della ingegneria elettronica
ed elettrica [25].
70
Progettazione del Wedge Sorter
Figura 4.4: Esempio del risultato della compilazione di un semplice multiplexer (il codice
è mostrato nel § 4.3.5) su un dispositivo Xilinx. A sinistra è mostrato l’intero dispositivo;
ogni quadrato corrisponde ad un blocco di logica configurabile, e sono mostrate le connessioni
necessarie. A destra è mostrato lo schema interno del blocco di logica evidenziato in giallo.
VHDL del progetto in sviluppo è sufficiente perché possa essere generata la versione hardware richiesta dell’algoritmo. In linea di principio, una volta sviluppato il codice VHDL
di un dato progetto è quindi possibile implementarlo su numerosi dispositivi diversi con
nessuna o poche modifiche.
Il progetto VHDL del Wedge Sorter è stato implementato a livello di simulazione
con successo su alcuni dispositivi, sia Xilinx che Altera, in modo da poter avere una
valutazione specifica, caso per caso, dei diversi modelli di dispositivi programmabili messi
a disposizione dal mercato. I risultati ottenuti sono valutati e messi a confronto nel § 4.4.
Utilizzo mimino di librerie dei produttori
I produttore di dispositivi programmabili forniscono numerose librerie insieme ai loro
strumenti software per la progettazione. Le librerie contengono numerosi componenti utili al progettista, come multiplexer, decoder, registri e cosı̀ via, specificamente ottimizzati
4.3 Metodologia, sviluppo e verifica del progetto
71
per una implementazione sul dispositivo in considerazione. L’utilizzo di queste librerie è
abbastanza diffuso nel campo degli FPGA. Questo perchè il modo in cui un componente
complesso è realizzato, utilizzando la logica presente nel dispositivo, può influenzare notevolmente le prestazioni ottenibili. Le librerie, essendo sviluppate dagli stessi produttori,
contengono specifiche informazioni per aiutare il compilatore ad utilizzare le risorse nel
modo ottimale. D’altra parte, questo riduce la portabilità, in quanto il progetto contiene
parti strettamente legate al tipo di dispositivo scelto.
Codice combinatorio generato automaticamente
In alcuni casi componenti complessi legati all’algoritmo specifico del Wedge Sorter hanno
richiesto una attenzione particolare. In particolare grossi blocchi combinatori, in cui
ciascuna uscita è rappresentata da una equazione complessa degli ingressi, sono meglio
gestiti dai compilatori se sono immessi in qualche modo già semplificati, costituiti cioè da
lunghe equazioni booleane piuttosto che da poche istruzioni di alto livello. In questo caso
le notevoli doti di leggibilità e manutenibilità del VHDL non possono essere sfruttate per
il codice del Wedge Sorter. Sono quindi state sviluppate applicazioni scritte in C++ che
a partire da una descrizione di alto livello del componente scrivono su file le equazioni
logiche in VHDL corrispondenti. In questo modo si aumenta il controllo e l’aggiornabilità
del progetto. Una eventuale modifica alle funzionalità di uno di questi componenti avviene
attraverso la revisione del breve codice C++, che, rieseguito, produce la nuova versione
della descrizione hardware. Si evita cosı̀ di dover riscrivere anche migliaia di righe di
codice combinatorio rischiando di perdere il controllo delle funzionalità.
4.3.2
Metodologia di sviluppo
Nella progettazione è stato seguito un approccio articolato, rivolto a garantire il massimo controllo dell’algoritmo in sviluppo. In Fig. 4.5 ne viene data una rappresentazione
schematica. I requisiti che il Wedge Sorter deve soddisfare, delineati nel capitolo precedente, sono tradotti in un progetto VHDL nell’ambito degli strumenti software messi a
disposizione. In Fig. 4.6 è mostrato l’ambiente di lavoro del software Quartus della Alte-
72
Algoritmo Wedge Sorter
VHDL design
Progettazione del Wedge Sorter
SW test
HW test
Generatore eventi (C++)
Pattern Unit
Simulatore
VHDL
o
Gate-level
Emulatore (C++)
Dispositivo
Patter Unit
Analizzatore Output
Figura 4.5: Schema della metodologia di sviluppo e controllo del progetto. Dalle funzionalità
richieste sono sviluppati codice VHDL e un emulatore software (C++) che realizzi le stesse
funzionalità (sinistra e centro). Con appositi strumenti software, i risultati della simulazione del
progetto possono essere confrontati con quelli derivanti dall’emulatore. Lo stesso emulatore, poi
può essere utilizzato per il controllo delle funzionalità del dispositivo nella fase di test hardware
(a destra), dove un modulo dedicato (Pattern Unit, [28]) fornisce ingressi al dispositivo e ne
legge le uscite.
ra. Contemporaneamente le stesse funzionalità sono descritte da un emulatore sviluppato
in C++. L’uso del C++ consente una descrizione a oggetti e di alto livello dell’algoritmo
in fase di implementazione. Allo stesso tempo, però, l’emulatore è strutturato in modo da avere ingressi e uscite identiche a quelle del dispositivo hardware in progettazione.
In questo modo si può procedere ad uno sviluppo parallelo di VHDL ed emulatore effettuando il confronto incrociato delle funzionalità. Una applicazione (Generatore di eventi )
sviluppata appositamente genera ingressi casuali o mirati, che sono elaborati dall’emulatore e i risultati sono memorizzati su file. Il codice VHDL è simulato con strumenti messi
a disposizione dal software di progettazione. Questa simulazione può essere funzionale o
gate-level. Con funzionale si intende una simulazione delle funzionalità logiche del dispo-
4.3 Metodologia, sviluppo e verifica del progetto
73
sitivo effettuata senza tenere conto dei ritardi di propagazione dei segnali nel dispositivo
e delle caratteristiche fisiche dei componenti. Una simulazione gate-level invece fornisce
indicazioni accurate anche di questi parametri consentendo cosı̀ di valutare le prestazioni e la stabilità del risultato. Nell’ambito di un controllo incrociato con l’emulatore viene
effettuata una simulazione funzionale. Il simulatore VHDL riceve come ingressi gli stessi
dati inviati in precedenza all’emulatore, e anche i risultati di quest’ultimo, cosı̀ da poter
verificare la corrispondenza tra i due. Lo sviluppo di un emulatore sarà molto importante
anche per successive fasi di test hardware. Una volta scelto e programmato un dispositivo, infatti, si dovrà procedere ad un test reale delle funzionalità e delle prestazioni.
Questo avviene utilizzando delle unità hardware sviluppate appositamente (Pattern Unit
in Fig. 4.5, [28]) che possono essere controllate da un PC e che inviano dati in ingresso
al dispositivo e ne leggono le uscite. L’emulatore C++ sarà quindi inserito nell’ambito
del software di controllo di questo apparato, cosı̀ che la verifica dei risultati possa essere
effettuata in modo diretto ed automatico.
74
Progettazione del Wedge Sorter
Gerarchia
progetto
Risultati
compilazione
Ricerca nodi
e segnali
Floorplanner
Stato del
compilatore
Messaggi di sistema
Figura 4.6: L’ambiente di lavoro del software di sviluppo Quartus di Altera. Si possono vedere
vari strumenti, come l’editor della disposizione di componenti sul dispositivo, il rapporto di
compilazione con le analisi temporali, lo strumento di ricerca e assegnazione di pin e segnali.
4.3 Metodologia, sviluppo e verifica del progetto
4.3.3
75
Architettura del Wedge Sorter
Il progetto VHDL è strutturato secondo una architettura che consiste in una successione
di blocchi combinatori alternati a registri sincronizzati ad un segnale di clock, cosı̀ che
l’informazione viene elaborata scorrendo un passo alla volta. Si tratta della struttura alla
base di un progetto digitale e questa descrizione costituisce un passo intermedio tra la
definizione dell’algoritmo richiesto e la struttura che sarà fisicamente implementata nel
dispositivo.
In figura 4.7 è mostrata la architettura del progetto. I componenti sono mostrati in
azzurro, mentre i rettangoli verdi rappresentano i flip-flop, cioè i registri sincronizzati al
clock di 40 MHz. Al BX-1 sono ricevuti i valori di qualità delle 12 tracce del wedge e gli
indirizzi che codificano per ogni traccia quali stazioni sono state usate dai Sector Processor
nel ricostruirla. Come si può vedere, in questo primo BX quattro unità di elaborazione
operano in parallelo:
1. Identificatore di false tracce
Si tratta dell’unità che effettua la ricerca di ghosts. Riceve in ingresso i 12 indirizzi
e le 12 qualità, fornisce in uscita 12 segnali di disabilitazione che indicano quali
tracce devono essere cancellate in quanto riconosciute come ghost. Gli indirizzi
sono decodificati e sono confrontati in parallelo i segmenti di tutte le coppie di
tracce provenienti da SP consecutivi in z. Se due tracce hanno uno o più segmenti
in comune, è attivato il segnale di cancellazione per quella di qualità inferiore.
2. Soglie qualità
Questa unità provvede a confrontare ciascun valore di qualità ricevuto con una
soglia programmabile indipendente per ogni traccia. Per le tracce che hanno una
qualità inferiore alla rispettiva soglia è ancora una volta generato un segnale di
cancellazione.
Progettazione del Wedge Sorter
76
INDIRIZZI
12x7
QUALITA`
12x3
Identificatore
di False
Tracce
SOGLIE
QUALITA
Cancell.
Incondiz.
RICODIF.
QUALITA
UNITA’
CONFIGURAZIONE
BX-1
12
12
12
12x3
η,ϕ,q
12x16
INDIRIZZI
OR
12x16
12x7
12
(TAG)
CANC
CANC
CANC
SEGNALI
CANCELLAZIONE
QUALITA`
QUALITA` per la
SELEZIONE
PT
12x5
BX+0
12x3
12x3
12x5
Fino a 12 tracce
complete (pipeline)
12x31
SORTER
CORE
SEGNALI DI
SELEZIONE
(2x12)
12
12
BX+1
MUX
31
31
TRACCE
SELEZIONATE
BX+2
Figura 4.7: Lo schema mostra tutta la parte funzionale del Wedge Sorter. Le parti di confi-
gurazione, controllo dei reset ecc. sono discusse separatamente. Il significato di ogni unità è
spiegato nel testo.
4.3 Metodologia, sviluppo e verifica del progetto
77
3. Cancellazione Incondizionata
12 segnali di cancellazione - uno per traccia - sono generati secondo quanto specificato in fase di configurazione, in maniera indipendente dagli ingressi.
4. Ricodifica qualità
Sono assegnati nuovi valori di qualità per il processo di selezione. I nuovi valori
dipendono da quelli ricevuti in ingresso secondo una tavola di ricodifica configurabile. In pratica, esiste una tavola indipendente per ogni traccia, e il valore di qualità
ricevuto dal SP seleziona il valore corrispondente da usare nel processo di selezione.
Le unità che necessitano di dati di configurazione, cioè le soglie di qualità, le tavole di
ricodifica per la selezione e i segnali di cancellazione incondizionata, ottengono questi dati
da collegamenti ai registri di configurazione (in rosso in figura). La struttura dell’unità
di configurazione è spiegata in Appendice A.
I tre segnali di cancellazione generati per ogni traccia sono sottoposti ad un OR logico,
in quanto ciascuna delle tre condizioni è di per sé sufficiente a generare una cancellazione.
A questo punto troviamo un altro livello di registri, e al BX+0 sono ricevuti i parametri
completi delle tracce: pseudorapidità η, angolo azimutale φ, impulso trasverso PT , segno
della carica. Dallo stadio di elaborazione precedente arrivano i 12 segnali di disabilitazione,
gli indirizzi, le qualità, le qualità per la selezione. Le unità denominate CANC in figura
provvedono a porre a zero i valori di qualità, PT e qualità per la selezione delle tracce da
cancellare. Qualità per la selezione e PT entrano nel Sorter Core. Questa unità provvede
a trovare le due tracce “migliori”, cioè con qualità e PT più grandi e produce due gruppi
di 12 segnali, che indicano la posizione della prima e seconda traccia. La struttura interna
del Sorter Core è discussa in dettaglio nel § 4.3.4. Nel frattempo, i dati ricevuti dai SP
sono raggruppati in modo da formare per ogni traccia una parola da 31 bit contenente
tutta l’informazione. Nell’ultimo BX un multiplexer seleziona le due tracce da inviare in
uscita (al Barrel Sorter) usando i vettori di selezione prodotti dal Sorter Core.
78
4.3.4
Progettazione del Wedge Sorter
Architettura del Sorter Core
Il compito di trovare le due tracce migliori, cioè quelle con massima qualità e massimo PT ,
consiste in pratica nel ricercare i due più grandi valori tra 12 parole a 8 bit (3 bit dalla
qualità e 5 bit dal PT ). Questa parte costituisce l’unità di progetto più complessa dal
punto di vista dell’elaborazione. Dal momento che in una struttura sincrona la velocità
massima di funzionamento è limitata dalla parte più lenta, questa parte sicuramente è
quella che richiede le maggiori attenzioni. Si riporta quindi qualche dettaglio progettuale.
L’ordinamento di un insieme di dati è un problema “classico” nel campo dell’elaborazione;
la ricerca teorica di algoritmi utili per massimizzare l’efficienza e la velocità in funzione
del problema specifico ha prodotto molti risultati. Si tratta però nella maggior parte dei
casi di idee applicabili soltanto ad un progetto software, in quanto si basano su operazioni
ricorsive e dipendenti da risultati intermedi. Nel caso di una realizzazione hardware, in
particolare in presenza di una segmentazione prefissata, il tempo e le operazioni necessari
per ogni passo dell’elaborazione devono essere fissati dall’architettura e non dipendere
dai dati. Il Sorter Core di questo progetto utilizza un approccio completamente parallelo
all’ordinamento dei dati, con un sistema simile a quello usato nel Trigger Server [29].
L’idea consiste nel compiere in parallelo tutti i possibili confronti nell’insieme di valori
ricevuti. Dati N valori, il numero di confronti indipendenti a due a due è
Ncoppie =
N (N − 1)
2
Avremo quindi Ncoppie risultati di una operazione di confronto, “≥”. Dato che sono stati
compiuti confronti tra tutte le coppie possibili, questi Ncoppie risultati definiscono completamente l’ordinamento dell’insieme di dati. Se vogliamo conoscere le prime k posizioni
degli N valori avremo
Neq =
N!
(N − k)!
equazioni che identificano ordinamenti distinti. Ciascuna equazione dipende da
Nin/eq =
risultati dei comparatori.
k(2N − k − 1)
2
4.3 Metodologia, sviluppo e verifica del progetto
132 AND a
21 INGRESSI
Livello di inverter
66 COMPARATORI
8
79
12+12 OR a
11 INGRESSI
≥
≥
12
≥
≥
12
≥
≥
Uscite: due vettori di
selezione, 2x12 bit
Ingressi: 12 parole a 8 bit
66 risultati
≥
≥
Set di comparatori a due vie
Decoder AND-OR
Figura 4.8: Schema del Sorter Core. A sinistra, i 12 valori a 8 bit sono confrontati in tutte le
possibili combinazioni. I risultati dei comparatori sono elaborati da un blocco combinatorio che
produce i due vettori di selezione indicanti la prima e la seconda posizione.
Nel caso del Wedge Sorter, devono essere trovate le prime due posizioni su 12 valori.
Avremo quindi:
Comparatori → Ncoppie
Equazioni → Neq
Ingressi/equazione → Nin/eq
66
132
21
In Figura 4.8 è rappresentato schematicamente il Sorter Core del Wedge Sorter. Si
possono vedere i 66 comparatori “≥” e il vettore dei risultati che è analizzato da un
decoder a due livelli - AN D/OR. In questa rappresentazione una equazione corrisponde
ad uno degli AN D a 21 ingressi. L’equazione soddisfatta, ovvero l’AN D che fornisce
un ‘1’ come risultato, definisce quale sia il primo e quale sia il secondo dato. Ora questi
80
Progettazione del Wedge Sorter
risultati devono essere codificati in due vettori di selezione da 12 bit, per indicare la prima
e la seconda posizione. Ciascun bit di questi vettori può essere portato a ’1’ in 11 casi
distinti, a seconda di quale sia il bit a ’1’ nell’altro vettore. I risultati degli AN D, quindi,
sono opportunamente indirizzati in ingresso a 24 OR, uno per ogni bit di uscita.
4.3.5
Codice generato automaticamente
Le parti VHDL che compongono il Sorter Core sono state generate automaticamente
con una applicazione in C++. Ciò è dovuto all’elevato numero di componenti e segnali
intermedi presenti, e al modo in cui le connessioni tra essi sono realizzate: sarebbe stato
impossibile scrivere questa parte di codice a mano, in particolare nella fase di debug e
manutenzione del codice le difficoltà sarebbero state notevoli.
Il programma C++ analizza i possibili casi, calcolando cosı̀ come devono essere strutturate le equazioni che definiscono l’ordine dei dati e quindi come devono essere interconnessi i componenti. Questa applicazione produce direttamente dei file contenenti il codice
VHDL pronto per essere compilato. In Appendice B sono riportati maggiori dettagli sulla
generazione automatica del codice.
Il Sorter Core completo consiste di oltre 4200 righe di codice VHDL di questo tipo.
Oltre a questa parte, anche il multiplexer presente nello stadio finale del Wedge Sorter è
stato scritto in questo modo. Il VHDL prevede un costrutto specifico per l’implementazione di multiplexer: il costrutto case, che ha una sintassi praticamente identica a quella
dei costrutti case dei normali linguaggi di programmazione di alto livello.
Nonostante questa sia la struttura dedicata alla realizzazione di multiplexer, le prestazioni non elevate raggiunte hanno portato a considerare la scrittura di un multiplexer
combinatorio, realizzato cioè esclusivamente con equazioni contenenti AND e OR. Dato
che il multiplexer necessario ha 12 ingressi da 31 bits ciascuno, il codice risultante è molto
lungo e complicato, quindi anch’esso è stato generato da una applicazione C++ separata.
Il risultato è un componente costituito da circa 900 righe di VHDL combinatorio. Le prestazioni ottenute con questa architettura si sono effettivamente rivelate superiori a quelle
4.4 Risultati
81
ottenute con l’istruzione dedicata; probabilmente la parte del compilatore che tenta di
semplificare la logica e adattarla alla struttura del dispositivo opera più efficacemente su
equazioni booleane che non su istruzioni di alto livello.
4.3.6
Emulatore C++ del Wedge Sorter
L’emulatore del progetto realizzato è stato scritto come una classe di C++. In questo
modo è molto semplice effettuare tutte le operazioni necessarie alla simulazione del dispositivo hardware. La classe contiene alcune funzioni (member functions) che svolgono
le operazioni riassunte in Tab. 4.3
Funzione
reset()
set_config(...)
set_default_config()
new_inputs(...)
curr_first_mu()
curr_secnd_mu()
curr_cycle()
Operazioni svolte
Equivale ad un reset completo del dispositivo. Tutti i
registri di ingresso, uscita e intermedi sono inizializzati.
Consente di impostare i registri di configurazione.
Imposta la configurazione di default.
Fornisce nuovi ingressi all’emulatore. Ogni chiamata di
questa funzione equivale al passaggio da un ciclo di clock
al successivo.
Queste due funzioni restituiscono le uscite corrispondenti al primo e al secondo muone selezionati.
Restituisce il numero di cicli di clock passati dall’ultimo
reset. È utile per un semplice controllo delle operazioni.
Tabella 4.3: Funzioni implementate nella classe C++ che costituisce l’emulatore del Wedge
Sorter.
4.4
Risultati
Il progetto è stato implementato, a livello di simulazione, su alcuni dispositivi Altera e
Xilinx. Fin dalle prime prove è risultato evidente un aspetto: tutti i dispositivi elencati
in Tab. 4.2 mettono a disposizione una quantità di logica molto grande. In altre parole,
il grande numero di ingressi e uscite necessario porta alla selezione di dispositivi che
contengono anche molta logica. Il modello FLEX di Altera è stato scartato a causa della
bassa velocità raggiungibile. I modelli APEX e VIRTEX invece, essendo basati su una
82
Progettazione del Wedge Sorter
Altera APEX
+
+
+
+
+
=,-
Caratteristica
Ottimizzazione dell’algoritmo
Prestazioni del Sorter
Prestazioni dipendenti dal routing
Flessibilità di accesso
Già usato nel trigger regionale?
Interfaccia software di sviluppo
Affidabilità software di sviluppo
Xilinx VIRTEX
=
+
=
=
+
Tabella 4.4: La tabella mostra alcuni punti di confronto tra il dispositivo APEX20KE di Altera
e VIRTEX di Xilinx. La valutazione può essere buona, cattiva, o intermedia, ed è indicata
rispettivamente con +, -, =. Si veda il testo per una spiegazione dettagliata dei singoli punti.
tecnologia più moderna, consentono di soddisfare il requisito della frequenza di clock di
40 MHz. In particolare, in tabella 4.4 è mostrato un confronto qualitativo dei risultati
ottenuti dalle simulazioni dei dispositivi. Nel seguito si da una breve spiegazione dei vari
punti di confronto.
Ottimizzazione dell’algoritmo, prestazioni del Sorter, prestazioni dipendenti dal routing
Queste tre caratteristiche sono certamente le più importanti. La compilazione del
progetto è molto più rapida e raggiunge prestazioni migliori su APEX che su VIRTEX. Questo è dovuto a differenze delle architetture dei due dispositivi, la struttura
interna dei programmabili Altera appare più adatta alla implementazione di questo algoritmo. Essa inoltre porta ad una quasi totale indipendenza delle prestazioni
dal modo in cui è svolto il routing, cioè la generazione di connessioni tra le parti di
logica nel dispositivo. Questo è un grande vantaggio, perché modifiche alle posizioni di ingressi e uscite sul chip, o anche cambiamenti non strutturali dell’algoritmo,
non portano variazioni imprevedibili dei risultati già ottenuti. Alcuni dettagli sulla
architettura del dispositivo APEX sono illustrati in Appendice C.
Flessibilità di accesso
I registri di configurazione del dispositivo saranno accessibili tramite una porta
standard JTAG (Appendice A). Il VIRTEX consente di utilizzare la porta JTAG
già presente sul dispositivo per le operazioni di configurazione e controllo anche
4.4 Risultati
83
per accedere a registri introdotti dal progettista. L’APEX non consente questa
possibilità, quindi un controller JTAG in codice VHDL è stato aggiunto al progetto.
Già usato nel trigger regionale
I dispositivi Altera sono già utilizzati in quasi tutte le altre parti del trigger regionale. Pur non essendo una condizione essenziale, un dispositivo della stessa famiglia
garantisce sicuramente un minor numero di problemi di integrazione.
Interfaccia e affidabilità software
Gli strumenti software messi a disposizione dalla Altera appaiono più semplici e
consentono un più rapido apprendimento delle possibilità offerte rispetto agli strumenti di Xilinx. D’altra parte questi ultimi rivelano una stabilità e una affidabilità
superiori.
Considerando in particolare i primi tre punti del confronto, che riguardano le caratteristiche di prestazioni e stabilità ottenute, è stato considerato più adatto un dispositivo
APEX20KE della Altera. Questi i risultati più rilevanti dell’implementazione:
Dispositivo utilizzato
Sorting su 12 parole a 8 bit
Frequenza massima di clock
Risorse logiche utilizzate
APEX20KE400 672-pin formato FineLine BGA
19 nanosecondi
53 MHz
25%, pari a 100000 porte equivalenti
In particolare si noti il notevole margine sulla frequenza massima di funzionamento, che
garantisce un margine del 25% rispetto alla frequenza nominale richiesta di 40 MHz.
Anche l’utilizzo parziale delle risorse logiche consente di stimare un ampio margine per
eventuali modifiche che dovessero rendersi necessarie in futuro. Inoltre, il formato da 672
pin mette a disposizione 488 ingressi/uscite utilizzabili dall’utente, garantendo anche in
questo caso un margine rispetto ai requisiti dell’algoritmo (434 ingressi/uscite).
84
Progettazione del Wedge Sorter
4.5
Scheda VME per il Wedge Sorter
Nel § 4.1 sono state descritte le caratteristiche architetturali che avrà la scheda del Wedge
Sorter per inserirsi nel sistema di trigger regionale. Si tratterà di una scheda VME [27] del
formato 9U. La possibilità di utilizzare dispositivi programmabili di dimensioni notevoli, in
particolare riguardo al numero di ingressi e uscite, ha portato, come mostrato nel capitolo
precedente, ad un progetto che realizza tutte le funzionalità del Wedge Sorter tramite un
unico dispositivo. Questo porta naturalmente dei vantaggi e delle semplificazioni per la
realizzazione della scheda vera e propria. Essa, infatti, oltre al dispositivo programmabile,
dovrà contenere solamente dispositivi necessari per ricevere e trasmettere i segnali negli
standard utilizzati dal trigger regionale. Una rappresentazione schematica di come le
varie parti opereranno sulla scheda è data in Fig. 4.9. Come si può vedere, oltre al
dispositivo programmabile utilizzato, sono presenti un controllore della scheda e alcune
unità di ricezione e trasmissione. In figura sono specificati i dati ricevuti e trasmessi ed il
numero totale di bit utilizzati (vedi § 3.3.2).
Il controller della scheda, che provvede a gestire gli accessi VME e JTAG, sarà costituito da un dispositivo programmabile. I ricevitori e i trasmettitori sono dispositivi
commerciali utilizzati per gestire gli standard di trasmissione/ricezione usati nel trigger
regionale. Il GTL+ [30] è utilizzato per i segnali veloci del backplane a 40 MHz. Per
i segnali sul pannello frontale è stata scelta la famiglia di dispositivi LVDS (Low Voltage Differential Signaling) [31], che garantiscono un basso consumo e un’elevata immunità
a rumore. La realizzazione del prototipo della scheda del Wedge Sorter è prevista per
l’inizio del 2003.
4.5 Scheda VME per il Wedge Sorter
VME, JTAG accesses
85
BOARD
CONTROLLER
LVDS receiver
Qualities,
addresses
(110)
(84)
Eta values
FPGA
(Altera)
(62)
LVDS transmitter
Selected tracks
Front Panel
(168)
Backplane
ϕ, PT, q
GTL+ receivers
Figura 4.9: Rappresentazione schematica della scheda del Wedge Sorter. Essa conterrà un
FPGA contenente tutta la parte funzionale dell’algoritmo, un dispositivo di gestione degli accessi
di controllo, configurazione e test negli standard VME e JTAG, e moduli per la ricezione e la
trasmissione dei dati
86
Progettazione del Wedge Sorter
Conclusioni
In questa tesi, svolta nell’ambito della collaborazione CMS, il candidato ha affrontato e realizzato la progettazione del processore che costituisce il nucleo del Wedge Sorter, una parte del sistema di selezione dei muoni ricostruiti dal trigger di primo livello
dell’esperimento.
Sono stati illustrati i requisiti imposti al Wedge Sorter dalla topologia di eventi di fisica
ritenuti interessanti. In particolare sono stati mostrati alcuni canali di decadimento del
bosone di Higgs, ed è stata messa in evidenza la rilevanza dei casi in cui due muoni dello
stato finale si presentano spazialmente vicini. Per massimizzare l’efficienza di rivelazione
di questo tipo di eventi, il Wedge Sorter seleziona due muoni su ognuna delle 12 sezioni
in cui è suddiviso il barrel del rivelatore. La selezione avviene in base alla qualità della
ricostruzione e al valore dell’impulso trasverso.
Un altro compito molto importante riguarda l’eliminazione dei duplicati di traccia che
possono essere generati dagli stadi precedenti del trigger. Il Wedge Sorter applica un
algoritmo di cancellazione di questi ghost, la cui efficienza e selettività è dimostrata da
simulazioni del funzionamento del sistema completo.
L’algoritmo del Wedge Sorter è stato sviluppato in linguaggio VHDL, in modo da
garantire la portabilità su tecnologie differenti. Inoltre è stato sviluppato un emulatore
software in C++ utilizzato per il controllo delle funzionalità del progetto. Tale emulatore
potrà essere utilizzato anche nella fase di test hardware, per il controllo delle funzionalità
del dispositivo.
Lo studio per la realizzazione hardware del progetto è stato orientato verso l’implementazione per mezzo di circuiti integrati programmabili (FPGA). Attraverso programmi
87
88
Conclusioni
di CAD elettronico messi a disposizione dai produttori di questi dispositivi, è stato possibile implementare l’algoritmo su alcuni di essi e verificarne le prestazioni. I risultati
ottenuti hanno permesso di scegliere una tecnologia in grado di implementare tutte le
funzioni dell’algoritmo in un singolo circuito integrato. Tale dispositivo programmabile,
inoltre, garantisce ottimi margini rispetto ai requisiti imposti al sistema, fatto importante nel caso si dovessero rendere necessarie eventuali modifiche o aggiornamenti delle
funzionalità.
Appendice A
Accesso JTAG al dispositivo
Il protocollo JTAG è uno standard industriale per il test di schede e circuiti integrati,
definito dalla IEEE (1149.1) [26].
L’idea alla base del protocollo è quella di riuscire ad effettuare test sulla funzionalità
delle connessioni tra dispositivi montati su un circuito stampato senza dover utilizzare
manualmente sonde con cui verificare lo stato dei nodi interessanti. Ogni pin di ingresso del dispositivo, oltre a essere connesso alla logica interna secondo il progetto, è letto
da un registro apposito, e i pin di uscita possono essere pilotati da un registro dedicato
invece che dalla normale logica di uscita del dispositivo (Fig. 5.1). Questi registri sono
detti Boundary Scan Register (BSR), in quanto effettuano la “scansione del contorno”
del dispositivo. Questi registri aggiunti al sistema di I/O del dispositivo sono connessi
serialmente, ed un controller realizzato tramite una macchina a stati finiti controlla la lettura/scrittura dei registri ovvero lo scorrimento dei dati tra essi, dal momento che essi
formano una catena. L’interfaccia con il mondo esterno, detta TAP (“Test Access Port”),
consiste di pochi segnali: un ingresso ed una uscita seriali, un ingresso di controllo ed un
segnale di clock. Eventualmente può essere aggiunto un segnale di reset, per un massimo
di 5 pin in totale. Il modo in cui le connessioni tra due dispositivi montati sullo stesso
circuito stampato possono essere verificate è molto semplice: è sufficiente caricare i registri JTAG dei pin di uscita del dispositivo che pilota le connessioni da verificare con dati
noti, imporre sui pin il contenuto di questi registri, e leggere sul dispositivo pilotato dalle stesse connessioni lo stato dei pin di ingresso tramite i registri JTAG corrispondenti.
Questo standard di accesso seriale può essere ampliato, aggiungendo all’interno dello stes89
Appendice A
Accesso JTAG al dispositivo
90
SERIAL DATA OUT
SYSTEM LOGIC
System Pins
Boundary
Scan
Registers
SYSTEM LOGIC
SERIAL DATA IN
Figura 5.1: Schema del funzionamento del sistema di Boundary Scan JTAG. In questo caso
sono presenti due dispositivi integrati montati sulla stessa scheda. La linea di accesso seriale
(da Serial Data In a Serial Data Out) connette tutti i registri BSR posti su ingressi e uscite
dei dispositivi. Per testare una connessione tra i due, è possibile scrivere dati noti sui registri
di uscita del dispositivo che pilota le linee esaminate, e leggere come essi sono ricevuti dall’altro
dispositivo, sempre attraverso i registri BSR.
so dispositivo altre catene seriali. Ogni catena è selezionata da una apposita istruzione
inviata al TAP. Tipicamente si aggiungono catene di snap registers, cioè registri che possono “spiare” lo stato di segnali intermedi interni (in questo modo è possibile effettuare
test e controlli parziali delle funzionalità) e catene di registri letti dalla logica funzionale
per impostare operazioni configurabili. Il dispositivo che sarà utilizzato dal Wedge Sorter include un sistema JTAG che comprende la porta di accesso dedicata, il controller, ed
una catena di registri BSR per tutti i pin di ingresso-uscita. Per controllare i numerosi
parametri necessari per l’impostazione delle operazioni configurabili svolte nel dispositivo
sono stati inseriti registri compatibili con lo standard JTAG.
La struttura della catena dei registri di configurazione è mostrata in Fig. 5.2. Sono
91
necessari i seguenti bit per controllare completamente le funzionalità del Wedge Sorter
(§ 3.3):
Funzione
Cancellazione incondizionata
Soglie di qualità
Ricodifica qualità
Parametri di conf.
12 tag di cancellazione
12 valori a 3 bit
12 tavole di 8 valori a 3 bit
# di bit
12
36
288
# registri 8 bit
2
5
36
Si tratta, in totale, di 336 bit organizzati in 43 registri a 8 bit. Come si può vedere
in Fig. 5.2 i registri a 8 bit dispongono di un ingresso ed una uscita seriale, tramite i
quali sono collegati in catena. Dispongono di una uscita parallela a 8 bit, e di un certo
numero di segnali di controllo dello scorrimento dei dati tra i registri. Inoltre, ogni registro
Signals are mapped to the
corresponding functional units
PARALLEL_OUT[335..0]
SERIAL_IN
DEFAULT_CONF
8 BIT SHIFT REG
40
DEFAULT_CONF
8 BIT SHIFT REG
39
DEFAULT_CONF
8 BIT SHIFT REG
0
SERIAL_OUT
8 BIT SHIFT REG
41
DEFAULT_CONF
CHAIN_CLOCK,
SHIFT_CHAIN,
UPDATE_PAR,
LOAD_DEFAULT
(CONTROL BUS)
TRST
TCK
TMS
TDI
JTAG TAP
CONTROLLER
TDO
Figura 5.2: Struttura della catena di registri di configurazione a 8 bit. Ogni registro dispone
di un ingresso ed una uscita seriali, e sono disposti in catena tramite questi accessi. Inoltre è
presente una uscita parallela a 8 bit, che può essere aggiornata tramite un segnale di controllo
separato. Altri segnali di controllo consentono di fornire il clock della catena, di controllare lo
scorrimento dei dati e di caricare le impostazioni di default.
Appendice A
Accesso JTAG al dispositivo
92
è provvisto di una configurazione statica (implementata durante la programmazione del
dispositivo) di base, che può essere caricata tramite l’attivazione di un apposito segnale
di controllo. In questo modo, in seguito a modifiche o errori è possibile ricaricare molto
rapidamente la configurazione corrispondente alla modalità normale di funzionamento:
nessuna soglia sulle qualità dei candidati, nessuna cancellazione incondizionata, nessuna
ricodifica delle qualità delle tracce. Un altro segnale di controllo è utilizzato per aggiornare
lo stato delle uscite parallele una volta completata l’operazione di scrittua/lettura seriale.
Queste uscite sono connesse opportunamente alle unità funzionali che necessitano dei dati
di configurazione (vedi Fig. 4.7).
La struttura interna di ciascun registro è mostrata in Fig. 5.3, dove per semplicità è
mostrata una versione a 4 bit dei registri.
PARALLEL_OUT[3..0]
PFF3
PFF2
PFF1
PFF0
UPDATE_PAR
SERIAL_IN
0
0
0
1
1
1
0
SERIAL_OUT
1
SFF3
SFF2
SFF1
SFF0
R S
R S
R S
R S
CHAIN_CLOCK
SHIFT_CHAIN
LOAD_DEFAULT
DEFAULT_CONF[3..0]
PARALLEL_OUT[7..0]
NELLA VERSIONE A 8 BIT
SERIAL_IN
CHAIN_CLOCK
SHIFT_CHAIN
UPDATE_PAR
SERIAL_OUT
8 BIT SHIFT REG
LOAD_DEFAULT
DEFAULT_CONF[7..0]
Figura 5.3: Struttura interna di un registro di configurazione. In figura è mostrato un registro
di 4 bit che è comunque strutturalmente identico ai registri a 8 bit usati nel progetto. Notare,
in particolare, la presenza di due registri per ogni bit presente: i registri nella parte bassa
fanno parte della catena seriale, quelli della parte alta riportano lo stato sull’uscita parallela in
sincronia con un segnale di controllo dell’aggiornamento della stessa.
Appendice B
Supporto C++ alla progettazione
Come spiegato nel § 4.3.5 le parti di VHDL combinatorio del progetto sono state generate
tramite programmi C++ scritti appositamente. Oltre che per la generazione del codice,
la programmazione in C++ è stata utilizzata per l’emulatore software del dispositivo,
per la generazione di vettori di test e per il confronto funzionale tra progetto VHDL ed
emulatore (Fig. 5.4).
C++ Applications
Code Generation
Test and emulation
Test & Expected
Results Generator
Sorter Core
Generator
MUX
Generator
Emulator
Wedge Sorter
VHDL Project
Test Vectors
Figura 5.4: Le applicazioni C++ sviluppate sono principalmente di due tipi: per la generazione
del codice e per test ed emulazione. In particolare, due applicazioni generano rispettivamente
il codice del Sorter Core e del multiplexer combinatorio (a sinistra). Un’altra applicazione
genera dei vettori di test e incorpora l’emulatore (una classe) per generare anche i risultati da
confrontare con quelli prodotti dalla simulazione del VHDL.
93
94
Appendice B
Supporto C++ alla progettazione
Figura 5.5: Output video dell’applicazione C++ per la generazione del codice VHDL del Sorter
Core.
Figura 5.6: Output video dell’applicazione C++ che genera i vettori di test per il codice VHDL,
includendo i risultati prodotti dall’emulatore software.
95
L’applicazione che ha il compito di generare il codice del Sorter Core prima di tutto
genera i 66 comparatori necessari per effettuare il confronto due a due. Poi, per ogni
possibile coppia di primo e secondo valore, mostrate durante l’elaborazione (Fig. 5.5),
produce un AN D che verifica i risultati dei comparatori corrispondenti al caso in esame.
La parte finale genera anche gli OR necessari alla codifica nei due vettori di selezione.
Essendo necessari, oltre ai 66 comparatori, 132 porte AN D a 21 ingressi e 24 porte OR a 11
ingressi, è presente un grande numero di segnali intermedi e la complessità dell’algoritmo
risiede in pratica nel modo in cui essi sono connessi alle semplici unità funzionali. Si
riporta a titolo di esempio una parte del codice VHDL di decodifica dei risultati dei
comparatori, uno dei 132 AN D a 21 ingressi:
F9S3 <=
NOT(COMP_RESULTS(2)) AND NOT(COMP_RESULTS(8)) AND
AND NOT(COMP_RESULTS(18)) AND NOT(COMP_RESULTS(21)) AND
AND
COMP_RESULTS(30) AND
COMP_RESULTS(31) AND
AND
COMP_RESULTS(33) AND
COMP_RESULTS(34) AND
AND
COMP_RESULTS(36) AND
COMP_RESULTS(37) AND
AND NOT(COMP_RESULTS(48)) AND NOT(COMP_RESULTS(53)) AND
AND NOT(COMP_RESULTS(60)) AND
COMP_RESULTS(63) AND
;
NOT(COMP_RESULTS(12))
NOT(COMP_RESULTS(27))
COMP_RESULTS(32)
NOT(COMP_RESULTS(35))
NOT(COMP_RESULTS(42))
NOT(COMP_RESULTS(57))
COMP_RESULTS(64)
Il generatore di vettori di test (Fig. 5.6) è una applicazione che genera casualmente valori di ingresso per la classe di emulazione del Wedge Sorter, da cui legge i risultati
corrispondenti, e scrive il tutto in un formato adatto al software di simulazione dei dispositivi di Altera. È possibile specificare il numero di cicli di clock che si vogliono simulare
e variare i parametri temporali, come periodo di clock e tempo di setup.
Grazie alle applicazioni sviluppate una eventuale modifica che debba essere apportata
al codice VHDL viene prima di tutto realizzata sul codice C++. Questo è un vantaggio,
in quanto poche comprensibili righe di codice C++ generano le oltre 5000 righe di VHDL
combinatorio. Naturalmente è in questo caso modificato anche l’emulatore software.
96
Appendice B
Supporto C++ alla progettazione
Appendice C
Caratteristiche del dispositivo Altera
Apex20KE
Il dispositivo programmabile Apex è definito dal produttore Altera un Complex Programmable Logic Device, CPLD. Con questo termine si vuole indicare la particolare struttura
di connessioni tra i blocchi di logica interna, che dovrebbe costituire una significativa
differenza rispetto agli FPGA “tradizionali”. Gli FPGA infatti presentano tipicamente
una struttura di connessioni molto complessa in cui i semplici blocchi di logica sono letteralmente immersi. Questa era la caratteristica che fin dalla loro nascita (nel 1984) li
rendeva strumenti innovativi, e li ha differenziati nettamente dai Programmable Logic Device che invece contengono blocchi di logica molto potenti costituiti da somme di prodotti
interconnessi in modo quasi predefinito. Altera ha strutturato le connessioni presenti nel
dispositivo in modo da creare un sistema che può presentare aspetti dell’una e dell’altra
architettura.
Il blocco di logica fondamentale è costituito dal cosiddetto Logic Element (LE), il
cui schema logico è riportato in Fig. 5.7. L’elemento fondamentale del LE è la Look
Up Table a sinistra, in pratica una piccola RAM statica a 16 parole da 1 bit, che può
quindi implementare tutte le funzioni logiche a quattro ingressi ed una uscita. Oltre alla
LUT, gli ingressi di Carry in e Cascade in consentono rispettivamente di ottimizzare
le funzioni aritmetiche e di espandere il fan-in della logica realizzata concatenando LE
adiacenti. La restante parte del LE consiste in pratica in un registro (disinseribile) che
può funzionare come flip-flop D, T, JK o SR, e in una certa quantità di logica di controllo
97
98
Appendice C
Caratteristiche del dispositivo Altera Apex20KE
Figura 5.7: Schema funzionale di un blocco logico (Logic Element).
dello stato del registro stesso. In un dispositivo come Virtex di Xilinx blocchi di logica di
questo tipo sono interconnessi attraverso una rete di connessioni a breve, medio e lungo
raggio, aventi numerosi blocchi di controllo dello smistamento dei segnali disposti lungo le
possibili intersezioni. In Apex di Altera invece è presente una serie di strutture organizzate
in modo gerarchico. Dieci LE sono riunti a formare un Logic Array Block (LAB), Fig.
5.8. I Logic Element all’interno di un LAB sono interconnessi tra loro, con i LE del
LAB adiacente, e con i blocchi di input/output tramite connessioni locali molto veloci.
Funzioni logiche relativamente complesse, che richiedano più LE, sono implementate in
LE dello stesso LAB o comunque vicini e da un certo punto di vista il progettista può
considerare come unità base nel dispositivo il Logic Array Block, che quindi si presenta
come un blocco di logica molto potente.
Un certo numero di LAB sono riuniti a formare un megaLAB, e tra essi esiste ancora
un notevole numero di connessioni “locali” (Fig. 5.9). In un megaLAB è inserito anche un blocco di RAM da 2048 bit (ESB in Fig. 5.9) che può essere usato come RAM,
99
RAM dual port, ROM, CAM o FIFO. I megaLAB sono alternati a righe e colonne di
connessioni che percorrono tutto il dispositivo collegando i blocchi di logica tra loro e con
i pin di ingresso/uscita (Fig. 5.10). Ripercorrendo la descrizione in senso opposto, dall’intero dispositivo al singolo Logic Element, diventa chiaro perché Altera definisca questi
dispositivi Complex PLD e non FPGA: grazie alla struttura di connessioni locali pre-
Figura 5.8: Struttura di un LAB.
Figura 5.9: Struttura di un megaLAB.
100
Appendice C
Caratteristiche del dispositivo Altera Apex20KE
senti all’interno dei megaLAB o dei LAB, questi possono essere considerati come blocchi
combinatori versatili, a prescindere dalla suddivisione nei semplici LE. In questo senso il
dispositivo può essere considerato un PLD molto potente.
Un punto a favore di questa struttura gerarchica è in una maggiore facilità nella distribuzione di logica e connessioni nel dispositivo. È più semplice per i compilatori utilizzati
ottimizzare le connessioni utilizzando le risorse locali, poi interconnettendo i blocchi dalle
funzionalità complesse. Inoltre questo porta vantaggi anche per la progettazione. Tipicamente, la ricerca di una elevata ottimizzazione finisce prima o poi per costringere a tenere
in considerazione la specifica architettura della logica del dispositivo. Con questi dispositivi il progettista può ricercare una ottimizzazione “soft” del progetto, considerando come
unità fondamentali i megaLAB, o i LAB, e lasciando che il livello più basso sia gestito dal
compilatore.
La maggiore semplicità nella gestione delle strutture di connessione, d’altra parte, può
rendere meno potente il sistema stesso. Nei dispositivi come Virtex di Xilinx, la struttura
di interconnesioni può essere gestita in maniera più libera. Questo porta teoricamente
alla possibilità di raggiungere una migliore ottimizzazione della struttura connettiva, e
quindi migliori prestazioni. Un effetto collaterale consiste però nella notevole complessità
degli algoritmi di ottimizzazione che i compilatori devono eseguire nella ricerca automatica
Figura 5.10: Struttura complessiva del dispositivo.
101
della migliore disposizione di logica e connessioni nel dispositivo.
Nella pratica la migliore valutazione possibile è quella che passa attraverso il confronto delle prestazioni ottenute dal proprio progetto sui dispositivi in esame. Questa prova
ha rivelato un vantaggio piuttosto netto di Apex su Virtex (vedi § 4.4) nelle prestazioni
ottenute con il progetto del Wedge Sorter. Questo vantaggio deriva principalmente dalla
maggiore velocità di funzionamento ottenuta per il sorter presente nel progetto: l’organizzazione dei LE in Apex, in particolare l’efficienza dei segnali di carry tra i LE di uno
stesso LAB, rende molto efficiente l’implementazione di comparatori. Nel progetto del
Sorter Core sono presenti ben 66 comparatori di due parole a 8 bit (vedi § 4.3.4). Inoltre
il blocco di decodifica presente dopo i comparatori è implementato molto efficacemente
grazie ai segnali di cascata che connettono i LE di uno stesso LAB, i quali opportunamente
utilizzati rendono un LAB un grosso e veloce blocco combinatorio.
102
Appendice C
Caratteristiche del dispositivo Altera Apex20KE
Bibliografia
103
104
BIBLIOGRAFIA
[1] AA.VV., The Large Hadron Collider Conceptual Design Report, CERN/AC/1995005(LHC), 1995.
[2] G. Altarelli et al., “CERN Workshop on Standard Model Physics (and more) at the
LHC”, CERN Yellow Report, CERN-2000-004.
[3] CMS Technical Proposal, CERN/LHCC 94-38, 1994.
[4] CMS Collaboration, The Tracker Project Technical Design Report, CERN/LHCC
1998-006, 1998.
[5] CMS Collaboration, Addendum To The CMS Tracker Technical Design Report,
CERN/LHCC 1997/031, 1997.
[6] CMS Collaboration, The Electromagnetic Calorimeter Project Technical Design
Report, CERN/LHCC 1997/033, 1997.
[7] CMS Collaboration, The Hadron Calorimenter Project Technical Design Report,
CERN/LHCC 1997/031, 1997.
[8] M. Andlinger et al., Bunch Crossing Identification at LHC using a Mean Timer
Technique, Nucl. Instr. Meth. A336, 1993, 91-97.
[9] CMS Collaboration, The Muon Project Technical Design Report, CERN/LHCC
1997-032, 1997.
[10] CMS Collaboration, C M S The Trigger and Data Acquisition Project, Vol. 1: The
Level–1 Trigger, CERN/LHCC 2000-038, 2000 — Chapter 1.
[11] Riccardo Travaglini, Trigger per eventi con due muoni prodotti nel decadimento di
bosoni di Higgs nel rivelatore CMS, tesi di laurea Università di Bologna, 1998.
[12] J. Hauser, Momentum Resolution Required for the Level 1 Muon Trigger, CERN
CMS TN 1004-261, 1994.
BIBLIOGRAFIA
105
[13] W. Smith, G. Wrochna, Complementarity of the Two Components in the CMS Muon
Trigger System, CERN CMS TN-1995/014, 1995.
[14] CMS Collaboration, C M S The Trigger and Data Acquisition Project, Vol. 1: The
Level–1 Trigger, CERN/LHCC 2000-038, 2000 — Chapter 9.
[15] CMS Collaboration, C M S The Trigger and Data Acquisition Project, Vol. 1: The
Level–1 Trigger, CERN/LHCC 2000-038, 2000 — Chapter 10.
[16] Luigi Guiducci, Development of the η Assignment Unit VHDL design for the CMS
level–1 muon trigger, CERN CMS Summer Student Report, 2001.
[17] Markus Brugger, Massimiliano Fierro, Claudia-Elisabeth Wulz, Drift Tube Based
Pseudorapidity Assignment of the Level-1 Muon Trigger for the CMS Experiment at
CERN, CERN CMS Note 2001/027, 2001.
[18] CMS Collaboration, C M S The Trigger and Data Acquisition Project, Vol. 1: The
Level–1 Trigger, CERN/LHCC 2000-038, 2000 — Chapter 11.
[19] CMS Collaboration, C M S The Trigger and Data Acquisition Project, Vol. 1: The
Level–1 Trigger, CERN/LHCC 2000-038, 2000 — Chapter 12.
[20] CMS Collaboration, C M S The Trigger and Data Acquisition Project, Vol. 1: The
Level–1 Trigger, CERN/LHCC 2000-038, 2000 — Chapter 13.
[21] CMS Collaboration, C M S The Trigger and Data Acquisition Project, Vol. 1: The
Level–1 Trigger, CERN/LHCC 2000-038, 2000 — Chapter 14.
[22] CMS Software and Computing Group, Object Oriented Reconstruction for CMS
Analysis, CERN CMS Internal Note 1999/001, 1999.
[23] D. Stickland – CMS Software Group, CMS Reconstruction Software, The ORCA
Project, CERN CMS Internal Note 1999/035, 1999.
106
BIBLIOGRAFIA
[24] Erö
János,
Muon
Trigger
Track
Finder
Hardware
Design,
http://wwwhephy.oeaw.ac.at/p3w/cms/trigger/muonTrigger/Hardware/Index.html,
2001.
[25] IEEE official Web Page, http://www.ieee.org.
[26] IEEE Computer Society, IEEE Standard Test Access Port and Boundary Scan
Architecture, IEEE, 1993.
[27] VME-BUS in Physics Conference, CERN 86/01, Yellow Book 1986.
[28] G.M. Dallavalle, I, D’Antone, I. Lax, A. Montanari e F. Odorici, Pattern Unit for
High Throughput Device Testing, Proceedings of the 4th Workshop on Electronics
for LHC Experiments, Rome, Sep ’98 (F.Odorici)
[29] G.M.Dallavalle et al., Track Segment Sorting in the Trigger Server of a Barrel Muon
Station in CMS, CMS TN 1996/078.
[30] GTLP An Interface Technology for Bus and Backplane Applications, Fairchild
Semiconductor Application Note AN-1065, November 1996, Revised February 2001
[31] National Semiconductor, LVDS Owner’s Manual – Design Guide, National
Semiconductor, 1997.
Ringraziamenti
Desidero ringraziare in primo luogo il professor Rossi, per avermi dato la possibilità di
affrontare questa esperienza che mi ha insegnato molto, non solo dal punto di vista professionale. Un grande grazie a tutti i membri del gruppo, che mi hanno fatto sentire subito
“uno di loro”. Ringrazio Alessandro Montanari e Fabrizio Odorici, che mi hanno seguito
con pazienza, mi hanno dato i consigli più importanti per lo sviluppo del lavoro, ed hanno saputo darmi fiducia e tirarmi su nei momenti difficili. Ringrazio Marco Dallavalle,
Fabrizio Fabbri e Stefano Marcellini che mi hanno aiutato e consigliato nella scelta e nell’approccio al tema di tesi. Un grazie a Riccardo, che mi ha fornito materiale importante,
sempre con la massima disponibilità, e a Francesca, Daniele, Christian.
Un grazie grandissimo va agli amici che con me hanno diviso questi anni di università,
dentro e fuori lo studio. E a Ch, J.Rufus, Robaz, Samuele e Angelo voglio dire: questi
anni sono stati davvero speciali!
Voglio ricordare anche Zanetto, Claudia, Claudio, Ila (o Ile?), l’Urién, il Conte, Luzzo,
Ghiiiilda!, Sara, Giulia, il Morlini, Alberto, il Mostro e gli altri ragazzi con i quali ho
passato una estate indimenticabile, utile, divertente e festaiola.
Ringrazio Campa, Panetta e Spendal, con i quali ho condiviso tante belle e buone cose
oltre alla casa in questi anni, e Bedo, Bagno e gli altri amici di sempre.
Mari, per te non ci sono parole. Grazie di questi anni divertenti, piacevoli, interessanti,
eccitanti, in cui siamo cresciuti, siamo cambiati, e sempre insieme abbiamo condiviso e
superato tutte le prove che ci siamo trovati ad affrontare. Grazie di farmi stare bene!
In tema di affetti, ringrazio in un sol colpo tutto il parentado, per aver sempre dimostrato interesse e approvazione per le mie scelte ed il mio lavoro. E a zio, zia e cugine
107
“svizzeri” (non arrabbiatevi!): ero l’unico ad avere un tale campo base!
L’ultimo ringraziamento a Maria Pia e Giovanni, i miei genitori. Mi hanno sostenuto,
in tutti i sensi, mi hanno ascoltato, consigliato e capito, in questi anni in cui ho fatto
tante scelte importanti. La loro fiducia in me e nelle mie decisioni è stata lo stimolo più
grande a cercare di fare del mio meglio. È tutto per loro il grazie più grande.
Ho finito!