ETD

Archivio digitale delle tesi discusse presso l'Università di Pisa

Tesi etd-04072005-002930


Tipo di tesi
Tesi di laurea specialistica
Autore
Giovacchini, Paolo
Indirizzo email
paolo.giovacchini@pi.infn.it
URN
etd-04072005-002930
Titolo
Sviluppo e Test di una Memoria Associativa Standard Cell per il Silicon Vertex Tracker dell'Esperimento CDF
Dipartimento
INGEGNERIA
Corso di studi
INGEGNERIA ELETTRONICA
Relatori
relatore Prof. Dell'Orso, Mauro
relatore Iannaccone, Giuseppe
Parole chiave
  • memoria
  • associativa
  • SVT
  • CDF
  • Tracker
Data inizio appello
26/04/2005
Consultabilità
Completa
Riassunto
Il lavoro descritto in questa tesi si inquadra nello sviluppo e potenziamento del sistema di acquisizione dati SVT (Silicon Vertex Tracker) dell’esperimento CDF, situato al Fermi National Accelerator Laboratory (Fermilab) negli Stati Uniti, e condotto da una collaborazione internazionale di cui fa parte l’Istituto Nazionale di Fisica Nucleare (INFN), presso cui è stata svolta questa tesi.
L’esperimento CDF è un potente rivelatore di particelle che studia fenomeni legati alla fisica delle alte energie. Tali particelle vengono generate mediante la collisione di pacchetti di protoni e antiprotoni, che vengono accelerati all’interno del Tevtron di Fermilab, l’acceleratore che produce le collisioni a più alta energia disponibili oggi.
I moderni rivelatori producono una grande quantità di dati che devono essere elaborati in tempo reale. Una delle maggiori difficolta che si incontra durante il processamento dei dati on-line, è rappresentata dal combinatorio, che è estremamente elevato. In CDF la soluzione di tale calcolo è stata affidata a processori dedicati come SVT, che rappresenta una parte fondamentale del sistema di ricostruzione delle tracce.
Il lavoro descritto nei Capitoli seguenti riguarda la convalida del progetto di un nuovo chip di Memoria Associativa (AM), ovvero dell’elemento fondamentale del processore digitale SVT, specializzato nella complessa operazione di “pattern recognition” in eventi (o immagini) che si susseguono ad altissimi rate (100 KHz) e dove si affollano migliaia di traiettorie, che intersecano i vari “strati” (layer) che compongono il rivelatore stesso.
Tutte le traiettorie interessanti per un particolare detector vengono memorizzate all’interno della AM, che poi estrae quelle che sono compatibili con i dati in ingresso. Una certa traiettoria è compatibile con un evento se tutti (o quasi tutti, in base alla configurazione imposta alla AM), i canali del detector, corrispondenti alla traiettoria, sono stati stimolati durante l’evento. E’ possibile pertanto sfruttare una struttura modulare, in cui ogni modulo contenga un “pattern”, che corrisponde ad una possibile traccia. Un pattern include sia la memoria necessaria per immagazzinare una singola traiettoria, sia la logica necessaria per confrontare le coordinate di tutti i canali del rivelatore, che sono stati stimolati dal passaggio delle particelle, con le coordinate associata alla traiettoria memorizzata. Ogni modulo deve ricevere in ingresso la configurazione completa di tutti i canali che sono stati stimolati per ogni evento. In questo modo tutte le possibili tracce (patterns) vengono confrontati in parallelo con l’evento medesimo. E’ importante sottolineare che per contenere le dimensioni della banca dei pattern ad una grandezza accettabile, la AM opera a una risoluzione più bassa rispetto a quella che il rivelatore permette. Ciò viene realizzato utilizzando i “superbin”, che rappresentano l’OR logico di canali contigui. Nel proseguimento di questo lavoro chiameremo “hit” gli indirizzi dei superbin di ogni layer, che sono stati stimolati durante l’evento, e chiameremo “road” le traiettorie a bassa risoluzione (ogni road corrisponde ad un array che contiene un superbin per ogni layer del rivelatore).
La complessità del problema risiede nelle dimensioni del database di riferimento che contiene alcuni milioni, ed in prospettiva alcune decine di milioni, di tracce, e nelle prestazioni richieste. E‘ necessario analizzare centomila eventi al secondo e la latenza massima per l’analisi di un evento deve essere contenuta entro circa 10µs.
Affrontare il problema, cercando di utilizzare farm di CPU commerciali, sarebbe impossibile. Un approccio di questo tipo richiederebbe infatti un numero estremamente elevato di personal computer (qualche migliaio) per rispettare il rate con cui gli eventi si susseguono, e comunque sarebbe impossibile riuscire a compiere l’elaborazione richiesta nel brvissimo tempo di latenza a disposizione.
Affrontare quindi il combinatorio nella suddetta maniera è possibile, sia per la complessità del sistema da gestire che per la difficoltà di assicurare il traffico di dati nel breve tempo a disposizione.
La Memoria Associativa e’ quindi stata proposta come dispositivo dedicato per la soluzione del problema. Di questo tipo di processore, dall’architettura modulare, sono state già realizzato due versioni: la prima, che è quella attualmente utilizzata in CDF, con una tecnologia full custom ICs , mentre la seconda, utilizzata a livello di prototipo, con Field Programmable Gate Arrays (FPGA).
In questo momento è in fase di prooduzione una AM realizzata con tecnologie VLSI Standard Cell UMC 0.18µm: AMchip3. Questo nuovo chip andrà a rimpiazzare la ormai obsoleta versione full custom.
Tale chip rappresenta l’evoluzione della versione full custom precedente, le cui prestazioni non sono più sufficienti a soddisfare le esigenze della ricerca svolta all’interno di CDF. L’incremento delle prestazioni dell’acceleratore, come l’innalzamento del livello di luminosità, sono necessarie per l’indagine scientifica volta alla scoperta di nuove particelle che confermino, o eventualmente smentiscano, i modelli di fisica attualmente in uso. Tale potenziamento mette a disposizione dell’analisi eventi di dimensioni maggiori, è perciò necessario modificare l’hardware incaricato della ricostruzione delle tracce, rendendolo più veloce ed efficiente, al fine di sfruttare le nuove potenzialità del sistema.
I prototipi di questo nuovo processore sono già stati prodotti e testati con successo. L’allestimento della postazione per verificarne il corretto funzionamento è argomento di questa tesi. In questo momento infatti ne è stata già avviata la produzione per soddisfare le richieste dell’esperimento. I prototipi sono stati realizzati presso la silicon foundry UMC di Taiwan.
La struttura del dispositivo è basata su un array di memoria associativa (un tipo di memoria che viene interrogato con un dato, e fornisce in risposta la lista degli indirizzi di memoria in cui un identico dato è contenuto) integrato da un insieme di strutture ausiliare di interfaccia, utilizzate per l’inizializzazione del sistema e per la gestione run-time di una struttura globale che conterrà parecchie centinaia di tali chip.
Il progetto standard cell costituisce una grossa innovazione, necessaria di un potente e per nulla banale meccanismo di validazione. Inoltre la gestione del dispositivo è per la prima volta fatta via JTAG e per realizzare la singola cella di memoria associativa più piccola possibile, si è rinunciato alla possibilità di leggere la memoria in modo convenzionale.
Tutto questo ha richiesto di definire strumenti di diagnostica del tutto nuovi all’interno del dispositivo. Io ho partecipato alla creazione di questi strumenti di diagnostica da installare nel chip e soprattutto ho dovuto pensare e produrre metodi di validazione del progetto stesso, in particolare delle funzioni di bounday scan di gestione e diagnostica. Questi metodi di validazione sono stati realizzati a livello di simulazione prima che il prototipo fosse prodotto e poi trasferiti in un test stand per analizzare i reali dipositivi prodotti.
L’organizzazione di questa tesi è la seguente:
Nel Capitolo 1 viene introdotta la Memoria Associativa illustrandone il principio di funzionamento. In particolare verrà spiegato in che cosa consiste il procedimento di “pattern recognition”, attraverso il quale è possibile ricostruire le tracce delle particelle all’interno del rivelatore in tempo reale.
Nel Capitolo 2 viene illustrato il lavoro che ho svolto durante la fase di simulazione del chip. In particolare verranno illustrate le parti di logica del chip che ho controllato durante questa fase, illustrando i concetti e linee guida che ho seguito per convalidare il progetto.
Il Capitolo 3 riguarda l’attività di preparazione e allestimento della piattaforma per il controllo dei prototipi del nuovo chip standard cell. Al suo interno viene descritta la scheda progettata appositamente per il test dei chip, il suo interfacciamento al Logic Analyzer/Pattern Generator TLA 715 della Tektronix. Viene anche descritto il software di test che ho sviluppato per verificare il corretto funzionamento dei chip. Infine farò riferimento alle problematiche incontrate durante la preparazione di questo “Test Stand” ed il modo in cui è stata raggiunta una soddisfacente messa appunto.
Nel Capitolo 4 viene infine descritta la fase conclusiva di questo lavoro, ovvero il test dei primi prototipi. In questa sezione vengono descritte le prestazioni fornite dai nuovi chip di memoria associativa. Inoltre vengono descritte le problematiche riguardo alla resa di produzione e all’interpretazione dei difetti di produzione che alcuni di questi chip hanno naturalmente presentato. I risultati ottenuti durante questa fase di test sono stati più che soddisfacenti. I chip che hanno superato la selezione dei test che ho preparato, hanno dimostrato il loro corretto funzionamento anche una volta montati sulle schede che verranno inserite all’interno del sistema SVT, dimostrando il corretto funzionamento dell’apparato di controllo.

File