Digitizer verarbeitet Detektorsignale Echtzeit-Auswertung mit 10 GSample pro Sekunde auf dem FPGA

Von Dipl.-Ing. (FH) Hendrik Härter 2 min Lesedauer

Ein Digitizer verarbeitet Detektorsignale mit einer Rate von 10 GS/s direkt auf einem FPGA. Mithilfe eines dort implementierten Convolutional Neural Networks sollen auch bei Pile-up einzelne Teilchenimpulse erkannt werden. Die angegebene Latenz beträgt 300 ns.

Der SIS18-Tunnel am GSI Helmholtzzentrum für Schwerionenforschung in Darmstadt, Deutschland.(Bild:  A. Zschau, GSI/FAIR)
Der SIS18-Tunnel am GSI Helmholtzzentrum für Schwerionenforschung in Darmstadt, Deutschland.
(Bild: A. Zschau, GSI/FAIR)

In der Strahldiagnostik kommt es darauf an, einzelne Teilchenereignisse zuverlässig zu erfassen. Bei hohen Teilchenraten können mehrere Teilchen jedoch so kurz nacheinander einen Detektor passieren, dass sich die zugehörigen Impulse überlagern. Die Auswertung muss dann aus einem zusammengesetzten Signal ableiten, wie viele Ereignisse aufgetreten sind und wann sie jeweils eintrafen.

Am GSI Helmholtzzentrum für Schwerionenforschung in Darmstadt soll ein Convolutional Neural Network (CNN) diese Aufgabe in Echtzeit übernehmen. Das Modell läuft auf dem FPGA eines ADQ35-Digitizers von Teledyne SP Devices. Entwickelt wurde es im Rahmen einer Promotion an der Hochschule Fulda in Zusammenarbeit mit GSI.

Einzelimpuls nach einem Teilchendurchgang durch den Detektor. Die konkrete Signalform hängt unter anderem vom Detektor und der nachfolgenden Signalkette ab.(Bild:  Teledyne SP Devices)
Einzelimpuls nach einem Teilchendurchgang durch den Detektor. Die konkrete Signalform hängt unter anderem vom Detektor und der nachfolgenden Signalkette ab.
(Bild: Teledyne SP Devices)

Ein einzelnes Teilchen löst im Detektor einen Impuls aus, der anschließend digitalisiert wird. Treffen mehrere Teilchen innerhalb eines kurzen Zeitabstands ein, überlagern sich ihre Impulse. Die resultierende Signalform ist dann nicht mehr ohne Weiteres in einzelne Ereignisse zu zerlegen; laut Projektbeschreibung kann die Detektorantwort bei Pile-up zudem nichtlinear werden.

Beispiele für Pile-up: In jedem dargestellten Signal überlagern sich die Antworten auf drei Teilchen. Die grün gestrichelten Linien markieren die jeweiligen Ankunftszeiten.(Bild:  Teledyne SP Devices)
Beispiele für Pile-up: In jedem dargestellten Signal überlagern sich die Antworten auf drei Teilchen. Die grün gestrichelten Linien markieren die jeweiligen Ankunftszeiten.
(Bild: Teledyne SP Devices)

Herkömmliche Auswerteverfahren, etwa eine Erkennung über mehrere Schwellenwerte oder die Suche nach lokalen Maxima, können bei solchen Signalformen an Grenzen stoßen. Werden überlagerte Ereignisse nicht getrennt erkannt, kann das zu einer Unterzählung führen. Für die Spill-Steuerung, also die zeitliche Verteilung der aus dem Beschleuniger extrahierten Teilchen, ist eine zuverlässige Erfassung der Teilchenzahl und ihrer Ankunftszeiten relevant.

Datenverarbeitung direkt im Digitizer

Das CNN verarbeitet die digitalisierten Signale direkt auf dem FPGA. Dadurch muss der Datenstrom für die Inferenz nicht erst an einen externen Rechner übertragen werden. Die Projektbeteiligten geben eine Latenz von 300 ns an und sprechen von einer deterministischen Verarbeitung. Bei einer Echtzeitregelung ist neben dem Durchsatz auch diese zeitliche Vorhersagbarkeit wichtig.

Die Implementierung verarbeitet den Angaben zufolge jeweils 32 Samples parallel mit 312,5 MHz. Das entspricht rechnerisch einer Abtastrate von 10 GS/s. Bei einer Auflösung von 12 Bit pro Sample ergibt sich ohne zusätzliche Übertragungs- oder Protokolloverheads ein Rohdatenstrom von 120 Gbit/s.

Bei 10 GSPS liegt der zeitliche Abstand zwischen zwei Abtastwerten bei 100 ps. Das ist jedoch nicht automatisch gleichbedeutend mit einer Messgenauigkeit von 100 ps: Die Genauigkeit der rekonstruierten Ankunftszeit hängt zusätzlich unter anderem von Signalform, Signal-Rausch-Verhältnis, Detektor und Auswertealgorithmus ab. Zur tatsächlich erreichten Zeitauflösung enthält die Vorlage keine quantitativen Messwerte.

CNN mit annotierten Daten trainiert

Das CNN wurde anhand annotierter Daten trainiert. Es soll die Zahl der Teilchen und die Ankunftszeit jedes Impulses bestimmen, auch wenn die Signalformen überlappen. Für die Umsetzung des Modells auf der FPGA-Hardware kam eine von UFAIRA entwickelte Toolchain zum Einsatz.

Laut Vorlage belegt die Implementierung weniger als 15 Prozent der verfügbaren DSP-Ressourcen und weniger als 6 Prozent der LUT-Ressourcen des verwendeten FPGA. Diese Angaben beschreiben den Ressourcenbedarf der konkreten Implementierung; sie belegen für sich genommen noch nicht, welche weiteren Modelle oder Datenraten sich auf dem FPGA realisieren lassen.

Der KI-basierte Ansatz soll Pile-up zuverlässiger auflösen als Verfahren mit Schwellenwerten oder lokaler Maximumsuche. Dadurch könnte es möglich sein, die Teilchenrate weniger stark zu begrenzen. Wie groß der Vorteil in der Praxis ist, lässt sich aus den vorliegenden Angaben allerdings nicht ableiten. Dafür wären unter anderem Vergleichsmessungen, Fehlzählraten und Angaben zur maximalen Ereignisrate erforderlich. (heh)

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung

(ID:50979390)