Modern applications such as Time-of-Flight Positron Emission Tomography, 3D Scanning, and Time-resolved measurement require the ability to measure time events with high resolution, precision, and multiple input channels. Time-to-Digital Converters (TDCs) are a popular option for this purpose in Research and Development. TDCs utilize a clock reference to establish a unit base and convert time domain measurements into digital timestamps. To reduce the time-to-market and non-recurring engineering (NRE) costs a Field Programmable Gate Array (FPGA) implementation have been chosen instead of an Application Specific Integrated Circuits (ASICs) one, however, by using these devices, an issue arises in timestamps management. Indeed, the proposed application requires an high number of channels, wich output data in a parallel way. However the following elaboration cores, like histogramming modules, requires the data to be a serial stream. On a FPGA, serialization can become an issue, due to limited resources availability, wich can result in designs running at lower clock speed, thus in lower output rates. This contribution focuses on the analysis and enhancement of the BeltBus (BB), a solution capable of managing multiple TDC channels and achieving a measurement rate of several hundreds of Mega-samples per second (Msps), while also emitting data in a chronological order. Particularly, some issues, giving unsorted timestamps and a low maximum data rate, were investigated and solved, while two new features were added. The first is a "Virtual Delay", to compensate offsets due to both different cable length and FPGA routing path mismatch between TDC channels. The second is a "Virtual Deadtime", to filter out the unforeseen events due to residual noise at the TDC input. Finally the improved BB has been tested on a board with a Kintex-7 FPGA and 16 Channels, giving an overall data rate of 236 Msps.

Moderne applicazioni in moltissimi ambiti scientifici come, ad esempio, la medicina con la Tomografia ad Emissione di Positroni basata su Tempo-di-Volo (Time-of-Flight) e le applicazioni industriali e di mobilità con l' imaging 3D richiedono la capacità di misurare gli eventi di tempo con elevata risoluzione, precisione e molteplici canali di ingresso che operano in parallelo. I “Time-to-Digital Converter” (TDC) sono una tra le soluzioni più diffuse a tal fine tanto nel mondo industriale che scientifico. I TDC utilizzano un riferimento di clock per stabilire una base di unità e convertire le misure temporali di dominio in timestamp digitali. Per ridurre i costi di sviluppo e il time-to-market, la scelta implementativa ricade sempre più spesso sull'uso di dispositivi Field Programmable Gate Array (FPGA) piuttosto che su circuiti integrati custom (ASIC). Tuttavia, l'uso di questi dispositivi comporta un problema nella gestione delle misure temporali (timestamp) realizzate. Infatti, un elevato numero di canali produce un flusso dati paralleli in uscita ai moduli di misura, mentre le successive fasi elaborazione necessitano che il flusso dati sia seriale In un dispositivo FPGA la serializzazione può rivelarsi un problema in quanto la disponibilità limitata delle risorse necessarie può riflettersi in una significativa riduzione del throughput di uscita finale del processo di misura. Questo lavoro di tesi si ripropone di dare un contributo attraverso l'analisi e il significativo miglioramento di una soluzione esistente per la serializzazione dei dati, l'architettura BeltBus (BB). Tale soluzione in grado di gestire più canali TDC e raggiungere un tasso di misura di diverse centinaia di mega-campioni al secondo (Msps), volendo al contempo garantire il mantenimento dell'ordine cronologico dei dati, cosa non garantita al crescere del throughput. In sintesi , è stato definitivamente garantito l'ordine cronologico dei dati anche ad alto throughput e sono state aggiunte due nuove funzionalità. La prima è un "Ritardo Virtuale", per compensare gli offset dovuti sia alla diversa lunghezza delle connessioni che alla non corrispondenza del percorso di instradamento in FPGA tra i canali TDC. La seconda è un "Deadtime Virtuale", per filtrare gli eventi imprevisti dovuti a rumore residuo all'ingresso del TDC.Quanto proposto è stato validato sperimentalmente con pieno successo su un TDC implementato inun dispositivo FPGA Kintex-7 e con16 canali in parallelo, ottenendo un throughput dell'ordine di 250 Msps.

Novel solution for high-rate timestamps management with real-time configurable delay and dead-time for FPGA-based time-to-digital converters

BONANNO, GABRIELE
2021/2022

Abstract

Modern applications such as Time-of-Flight Positron Emission Tomography, 3D Scanning, and Time-resolved measurement require the ability to measure time events with high resolution, precision, and multiple input channels. Time-to-Digital Converters (TDCs) are a popular option for this purpose in Research and Development. TDCs utilize a clock reference to establish a unit base and convert time domain measurements into digital timestamps. To reduce the time-to-market and non-recurring engineering (NRE) costs a Field Programmable Gate Array (FPGA) implementation have been chosen instead of an Application Specific Integrated Circuits (ASICs) one, however, by using these devices, an issue arises in timestamps management. Indeed, the proposed application requires an high number of channels, wich output data in a parallel way. However the following elaboration cores, like histogramming modules, requires the data to be a serial stream. On a FPGA, serialization can become an issue, due to limited resources availability, wich can result in designs running at lower clock speed, thus in lower output rates. This contribution focuses on the analysis and enhancement of the BeltBus (BB), a solution capable of managing multiple TDC channels and achieving a measurement rate of several hundreds of Mega-samples per second (Msps), while also emitting data in a chronological order. Particularly, some issues, giving unsorted timestamps and a low maximum data rate, were investigated and solved, while two new features were added. The first is a "Virtual Delay", to compensate offsets due to both different cable length and FPGA routing path mismatch between TDC channels. The second is a "Virtual Deadtime", to filter out the unforeseen events due to residual noise at the TDC input. Finally the improved BB has been tested on a board with a Kintex-7 FPGA and 16 Channels, giving an overall data rate of 236 Msps.
LUSARDI, NICOLA
ING - Scuola di Ingegneria Industriale e dell'Informazione
4-mag-2023
2021/2022
Moderne applicazioni in moltissimi ambiti scientifici come, ad esempio, la medicina con la Tomografia ad Emissione di Positroni basata su Tempo-di-Volo (Time-of-Flight) e le applicazioni industriali e di mobilità con l' imaging 3D richiedono la capacità di misurare gli eventi di tempo con elevata risoluzione, precisione e molteplici canali di ingresso che operano in parallelo. I “Time-to-Digital Converter” (TDC) sono una tra le soluzioni più diffuse a tal fine tanto nel mondo industriale che scientifico. I TDC utilizzano un riferimento di clock per stabilire una base di unità e convertire le misure temporali di dominio in timestamp digitali. Per ridurre i costi di sviluppo e il time-to-market, la scelta implementativa ricade sempre più spesso sull'uso di dispositivi Field Programmable Gate Array (FPGA) piuttosto che su circuiti integrati custom (ASIC). Tuttavia, l'uso di questi dispositivi comporta un problema nella gestione delle misure temporali (timestamp) realizzate. Infatti, un elevato numero di canali produce un flusso dati paralleli in uscita ai moduli di misura, mentre le successive fasi elaborazione necessitano che il flusso dati sia seriale In un dispositivo FPGA la serializzazione può rivelarsi un problema in quanto la disponibilità limitata delle risorse necessarie può riflettersi in una significativa riduzione del throughput di uscita finale del processo di misura. Questo lavoro di tesi si ripropone di dare un contributo attraverso l'analisi e il significativo miglioramento di una soluzione esistente per la serializzazione dei dati, l'architettura BeltBus (BB). Tale soluzione in grado di gestire più canali TDC e raggiungere un tasso di misura di diverse centinaia di mega-campioni al secondo (Msps), volendo al contempo garantire il mantenimento dell'ordine cronologico dei dati, cosa non garantita al crescere del throughput. In sintesi , è stato definitivamente garantito l'ordine cronologico dei dati anche ad alto throughput e sono state aggiunte due nuove funzionalità. La prima è un "Ritardo Virtuale", per compensare gli offset dovuti sia alla diversa lunghezza delle connessioni che alla non corrispondenza del percorso di instradamento in FPGA tra i canali TDC. La seconda è un "Deadtime Virtuale", per filtrare gli eventi imprevisti dovuti a rumore residuo all'ingresso del TDC.Quanto proposto è stato validato sperimentalmente con pieno successo su un TDC implementato inun dispositivo FPGA Kintex-7 e con16 canali in parallelo, ottenendo un throughput dell'ordine di 250 Msps.
File allegati
File Dimensione Formato  
2023_05_Bonanno_TESI_01.pdf

non accessibile

Descrizione: Tesi
Dimensione 4.4 MB
Formato Adobe PDF
4.4 MB Adobe PDF   Visualizza/Apri
2023_05_Bonanno_Executive_Summary_02.pdf

solo utenti autorizzati dal 11/04/2024

Descrizione: Executive Summary
Dimensione 2.74 MB
Formato Adobe PDF
2.74 MB Adobe PDF   Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/204833