alice-trd digital chip falk lesser kirchhoff institut für physik [email protected]

27
ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik [email protected]

Upload: lamprecht-stierle

Post on 06-Apr-2015

135 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

ALICE-TRD digital chip

Falk Lesser

Kirchhoff Institut für Physik

[email protected]

Page 2: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

2

Inhalt

• Ziele des ALICE-Experiments

• Das TRD-System

• Lineare Regression

• Implementierungsansätze

• Der Prozessorkern femtoJava 1

• Projekt-Status

Page 3: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

3

Ziele des ALICE-Experiments• ALICE ist eines der vier großen Experimente am LHC

• Studien am Quark Gluonen Plasma (QGP)

• Ereignisrate beträgt 4*103 Kollisionen pro Sekunde (Pb + Pb)

• Teilchenmultiplizität von etwa 16000 Teilchen in der Akzeptanz des Detektors (zentrales Event)

• Suche nach high pt Elektron-Positron Paaren (e+ e-)

– Teilchen mit einem Transversalimpuls 3 GeV/c

– 5 % aller zentralen Pb + Pb beinhalten e+e- -Paare

– Identifizierung der Teilchen über die Ablenkung in r/ -Ebene

– Ablenkung der gesuchten Teilchen < 2.0 mm bei pt 3 GeV/c

– ohne Trigger jährliche Produktion Y = 1000

• Trigger auf interessante Ereignisse

Page 4: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

4

Gesamtübersicht des Detektor

• TRD umgibt die TPC

• TRD ist der Level 0 Trigger der TPC

• TPC besitzt sehr lange Latenzzeiten

• Anforderung: Gute Spurauflösung, schnelle Triggerentscheidung

• Pionenunterdrückung

• Verarbeitet Daten aus 1.2 Millionen Kanälen (occupancy = 12 %)

Page 5: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

5

Der Detektor

• (TR) -Photonen werden emittiert beim Übergang eines Teilchens durch zwei Medien unter-schiedlicher Dielektrizitätskonstanten 1 => 2

• Intensität der Übergangsstrahlung | 2 - 1 |

• Abgestrahlte Intensität Lorentzfaktor L

(Identifikation); Hochrelativistisch L >> 1

• Elektronen L = 2000 (Größenordnung)

• Partikel ionisieren Gas (Xe/CO2 oder Xe/C4H10) und setzen freie Elektronen ab

• Elektronen driften entlang eines elektr. Feldes

• Detektion am Auslesepad

• Insgesamt 1.2 Millionen Auslesekanäle

Pionenunterdrückung:

Track-Detection:

Page 6: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

6

Zeitablauf

• Alle e+ e- mit minimaler Ablenkung sollen gefunden werden

• Ermittlung der Position, Winkel und Amplitude aller high pt tracks Infos zur Track Matching Unit (TMU).

• Datenreduktion von 1800 Hz (clean min bias) auf 40 Hz (e+ e-) Ereignisrate

• Selektion der steifen Tracks über lin. Regression parallel für alle Lagen

• Berechnung der Regressionsparameter in Echtzeit

• Berechnung charakteristischer Werte mit Hilfe einer microCPU

• Berechneten Werte in 32 Bit-Wert zusammenfassen und an TMU übergeben

• TMU korreliert Spursegmente und fällt Triggerentscheidung

Page 7: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

7

Datenauslese

• 12 % Occupancy bei Detektoroberfläche von 108 m2 (plane 1)

• 200 000 Pads/Lage => 4,5 cm2 pro Pad

• Ladungsteilung zwischen benachbarten Pads

• Ortsauflösung von 200 m

timebin

Pad

Amplitude

Page 8: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

8

Simulation

• Teilchenmultiplizität von etwa 16000 Teilchen/s (Pb + Pb)

• Anzahl der Kanäle 1.200.000

• 30 Werte pro Kanal (Timebins)

• Sampling rate 15-20 MHz

• Auflösung der ADCs 8 Bit

• Gesamtaufkommen an Rohdaten 36 MByte

Erste Simulation:

Page 9: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

9

Datenaufkommen

Berechnungsdauer: 2 s Driftzeit

Datenformat: 8 Bit/pro Timebin und Kanal

Rohdaten: 30 Bytes pro Ereignis

Daten: 30 Bytes x 1.2 Millionen Kanäle = 36 MByte

Insgesamt : 18 TByte/s

. .. . .

timebin

Elektronik: Auf dem Detektor

Page 10: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

10

Datenanalyse

timebin

Pad-No.

30

ab

Page 11: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

11

min)]([ 2

1

i

n

i

bxayi

Algorithmus• Insgesamt 5 s Verarbeitungsdauer davon 2 s Driftzeit

• Positionen und Fit-Parameter während der Driftzeit bestimmbar

• Stichprobenwerte (xi, yi): i = 1, 2, ... N

• x-Wert ist diskret (timebin), y-Wert ist gemessene Position (Spur + Meßfehler)

• KQ-Methode:

• Zu Berechnen sind die Erwartungswerte für a, b

Regressionsgerade:

N yi xi - xi yi

N xi2 - (xi)2

yi xi2 - yi xi xi

b =

a =N xi

2 - (xi)2

y(x) = a + bx

2=

AP+1 - AP-1

N-1 [yi - ( a + bx)]2

AP-1 + AP + AP+1

yi =

Page 12: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

12

Anforderungen

xi = Summe Timebin

yi = Summe Ort

xi yi = Summe Ort * Timebin

yi = Ort

A = Achsenabschnitt

Während der Driftzeit: Nach der Driftzeit:

B = Steigung

Allg. Größen = f( yi, xi)

2 = Qualitätsmaß für den Fit

N = Hitcount

Keine Iteration notwendig am Ende der Driftzeit! Zeitersparnis 2 s

Pipelineverarbeitung in Hardware:

yi =xi

yi

xi yi

yi2

Calculate sums Calculate Position

Calculate fit summands

xi yi xi2

xi2

yi2

DiDo

x i <

497

x

i2 < 1

0417

y

' i2 <

307

53

y'

i < 9

93

x

i y' i <

153

77

Sum Memory

8

8

8 5 +1

15

14

14 +1 3

4 Op. 3 Op. 6 Op. 12 Op.

64 64

AP+1

AP

AP-1

AP+1 - AP-1

AP-1 + AP + AP+1

Page 13: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

13

Rechenleistung im Vergleich

Notwendige Operationen: Lineare Regression

Ziel: Geradengleichung

Regressionsparameter : 25 Operationen pro Timebin

30 Werte pro Track: 750 Operationen pro Track

Werte a, b: 11 Operationen für jeden Parameter

Wert 2 : 30 Operationen

Insgesamt: 791 Arithmetische Operationen (AOPS)

16 000 Tracks: 12,656 * 106 Arithmetische Operationen

Rechenzeit 2 s 6,328 * 1012 AOPS insgesamt

y(x) = a + b x

Page 14: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

14

Lösungsansatz

Problem: Gesamtaufkommen an Daten: 18 TByte/s

Erforderliche Rechenleistung: 6,328 * 1012 AOPS

Lösung: Netzwerk aus 75 000 CPUs

Jeder Kanal berechnet die Regressionsparameter

microCPU verarbeitet die Daten von 16 Kanälen

• 16 (18) Verarbeitungskanäle auf jedem Chip

• 16 HSLP-ADCs für jeden Chip • Funktionseinheiten von 16

Kanäle auf MCM• Algorithmen in Java-Bytecode• AMS035 CMOS-Technologie

I II III

Page 15: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

15

I/O-Daten der Fit-Logik

• Input-Daten– 8 Bit (256 Quantisierungsstufen)

– 16 Datenkanäle + 2 benachbarte Kanäle

– Samplingrate 15-20 MHz (62,5 - 50 ns)

• Output Daten– 32 Bit Ausgabedaten teilen sich auf in

• r Position 11 Bits

• Korrigierter -Winkel bzw. Displacement 5 Bit

• z-Position 6 Bits (Position aus Chip-Nummer, Padrow, Sektor)

• Amplitude 8 Bits

• TR-Qualität 2 Bits

Page 16: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

16

ImplementierungsansätzePad 1 Pad 2 Pad 3 Pad 8 Pad 9 Pad 10 Pad 16

TH

-Log

ic

TH

-Log

ic

TH

-Log

ic

TH

-Log

ic

TH

-Log

ic

TH

-Log

ic

TH

-Log

ic

Sub

A5 ... A8

A1 ..A4

Div

Zentr.Zentr.

RegReg

Evt

. Buf

fer

Selektion der OperandenSelektion der Operanden

Shift

Sub

A5 ..A8

Div

RegReg

Shift

A1 ... A4

Sub

A9 ..A12

Div

RegReg

Shift

Sub

A13 ..A16

Div

RegReg

Shift

A9 ... A12 A13 ... A16

RegRegRegReg yy y y

Page 17: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

17

Ausschnitt aus der TH-Logik

TH TH TH

Comp

Pad 1 Pad 2 Pad 3 Pad 8

Comp Comp CompComp

Pad 9

& & & &

& & &

Zentr. Zentr. Zentr.

Sum

SumSum

Selektion der ADC-Werte:

• AP-1 + AP + AP+1 > TH

• (AP-1 < AP) & (AP+1 < AP)

Datenreduktion:

Faktor 4

(30 x 1 Byte => 4 x 1 Byte)

Page 18: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

Die virtuelle Java Maschine

• Definition eines abstrakten Maschinenmodells

• Funktionale Verhalten ist genau spezifiziert

• Spezifikation der JVM ist von Implementierungsdetails entkoppelt

• Flexibler Triggercode

• Ideal spezifizierter Prozessor

Quellprogramme

A.javaA.java

B.javaB.java

C.javaC.java

JavaCompilerJava

Compiler

Kompilierte Programme

A.classA.class

B.classB.class

C.classC.class

Kompilierte Programme

A.classA.class

B.classB.class

C.classC.class

Execution Engine

Class-Loader

Standard Java-Klassen (API)

X.classX.class

Y.classY.class

Z.classZ.class

JavaVirtual

Machine

Page 19: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

19

Spezifikation der JVM

• Befehlssatz besteht aus 201 Opcodes

• Laden/Speichern

• Arithmetische/Logische Befehle

• Typumwandlungsbefehle

• Befehle zur Verwaltung des Operandenstapels

• Kontrolltransferbefehle

• Befehle zum Erzeugen und Manipulieren von Objekten

• Spezialbefehle:

– N yi xi - xi yi

– N xi2 - (xi)2

• Befehlsformat 8 Bit

• Datenformat 32 Bit (hier 16 Bit)

Page 20: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

Hardwarestruktur des femtoJava 1

• Dreistufige Pipelinestruktur

• Fetch/Decode (Pipe 1)

• Fetch Operands, Execute Control, Write Back (Pipe 2)

• Execute (Pipe 3)

Pipe 2Pipe 2Pipe 1Pipe 1 Pipe 3 (4)Pipe 3 (4)

Data-MemoryData-Memory

Instr.-MemoryInstr.-Memory

KontrollsignaleVerarbeitungsdatenReset

Initialisierung

Kontrollsignale

Instruktionen

femtoJava 1

Instruktionen

Page 21: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

21

Die erste Pipelinestufe

idleidle

fetchfetch

decodedecode

fetch2fetch2

GoPipe 2

GoPipe 2

Aktivität an Pipelinestufe 2

300 301 302

goto Op 1 Op2

goto

Operand 1

Operand 2

Instruktionswort zu goto

Konstante zu goto

Kontrolleinheit

Clk

Read_instr

Instr_ready

Instr_addr

Opcode

Code

temp1

temp2

anweisung

const

Temp 2Temp 2Temp 1Temp 1CodeCodeConstConstAnweisAnweis

InstruktionsSpeicher

InstruktionsSpeicher

PC-LogikPC-

Logik

Addr.BefehlsDecoderBefehlsDecoder

Kontroll-Einheit

Kontroll-Einheit

Datenpfad

Pipelinestufe 2Pipelinestufe 2

Opcode/Data

Start

1. LZ

2. LZ

Decode abgeschlossen

Reset

LZ fortsetzen

Neuer LZ

LZ fortsetzen

LZ fortsetzen

Page 22: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

22

Kontrolleinheit der zweiten Stufe

ReaddecodeReaddecode ExecutedecodeExecutedecode WritedecodeWritedecode

ExecuteALU-CtrExecuteALU-Ctr

Write_ix8Write_ix8 Write_ix_1Write_ix_1 Write _ixWrite _ix

Write_ix8_d1Write_ix8_d1 Write_ix1_d1Write_ix1_d1 Write _ix_d1Write _ix_d1

Write_ix8_d2Write_ix8_d2 Write_ix1_d2Write_ix1_d2 Write _ix_d2Write _ix_d2

Write _ix1_3_1Write _ix1_3_1 Write _ix1_3_2Write _ix1_3_2 Write _ix1_3_3Write _ix1_3_3

Write _ix1_4_1Write _ix1_4_1 Write _ix1_4_2Write _ix1_4_2 Write _ix1_4_3Write _ix1_4_3

Write _ix1_4_6Write _ix1_4_6 Write _ix1_4_5Write _ix1_4_5 Write _ix1_4_4Write _ix1_4_4

Read_ix8Read_ix8

Read_ix8_2Read_ix8_2

Read_ixRead_ix

Read_ix_2Read_ix_2

Read_ix_2d1Read_ix_2d1

Read_ix_2d2Read_ix_2d2

• Readdecode: Daten laden

• Executedecode: Operationen der ALU steuern

• Writedecode: Speichern von Daten

Pipe 1

Zeitgleich zum WBnächsten Fetchzyklus

Page 23: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

23

Datenpfad der zweiten Stufe

Pipelinestufe 3Pipelinestufe 3

Pipelinestufe 1Pipelinestufe 1

constconstanweisunganweisung opcodeopcode Temp 1Temp 1 Temp 2Temp 2

R5R5R4R4R2R2R1R1

DatenSpeicherDaten

Speicher

ExtensionExtension

KontrollEinheit

KontrollEinheit

VorzeichenCheck

VorzeichenCheck

vars

vars

Opt

opO

ptop

AddAdd

AddAdd

• Vorverarbeitung der geladenen Daten und Operanden

• Laden und Speichern von Daten

• Zusammensetzen geladener Daten

• Alle Datenpfade sind vollständig voneinander entkoppelt

Funktion:

AddAdd

AddAdd

Page 24: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

24

Kontrolleinheit der dritten Stufe

ExecutedecodeExecutedecode WritedecodeWritedecode

Lmul1Lmul1

Lmul2Lmul2

Lmul3Lmul3

ALUALU

Go_WBGo_WB

idleidle

• Steuerung der ALU-Operation

• Decodierung des ALU-Steuerwortes

• Freigabe des Ausgangsregisters

Funktion:

ReaddecodeReaddecode

Nächster Fetch

ALU-Operation selektierenALU-Operation selektieren

Freigabe Register

Execute Ready

Page 25: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

25

Datenpfad der dritten Stufe

Pipelinestufe 2Pipelinestufe 2

R2R2R1R1 R4R4 R5R5

AssembleAssemble Typkonv.Typkonv.

ShiftShift Add/SubAdd/Sub BoolscheBoolsche

R6R6

MACMAC

Temp RegTemp Reg

C1 C2

C3

AssAss

• ALU verarbeitet 44 Befehle

• 17 Vergleichsoperationen

• 16 Arithmetische/Logische

• 6 Schiebeoperationen

• 5 Typkonvertierungen

• 42 Befehle werden innerhalb eines Taktes verarbeitet

• Aufwendige Befehle (64 Bit Mul) werden innerhalb von drei Takten verarbeitet

Funktion:

Page 26: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

26

Hardwaresynthese Xilinx FPGA-Bibliothek:

• Gesamtentwurf umfaßt 3615 CLBs

• Kritische Pfad besitzt Signallaufzeit von 254 ns (ca. 4 MHz)

AMS08 Standardzellenbibliothek

• Gesamtentwurf umfaßt 38,63 mm2 Chipfläche

• Kritische Pfad besitzt Signallaufzeit von 62 ns (ca. 16 MHz)

• Gatteräquivalent von 29834 Gatter

AMS035 Standardzellenbibliothek

• Gesamtentwurf umfaßt 7,27 mm2 Chipfläche (femtoJava 2)

• Kritische Pfad besitzt Signallaufzeit von 19 ns (ca. 52 MHz)

Test-Layout des femtoJava 1

Page 27: ALICE-TRD digital chip Falk Lesser Kirchhoff Institut für Physik lesser@kip.uni-heidelberg.de

27

Projektstatus

• Implementierung der „Linear track fit engine“– Simulationsmodel liegt vor und wird iterativ verbessert

– Werte aus Simulation bestimmen die Implementierungsstruktur der Hardwarerealisierung

• Erster Prototyp der microCPU ist vorhanden– Hardwarerealiesierung der LTFE liegt vor (VHDL-Modell)

– Tape out Q1 `00

– Nächster Designschritt der microCPU Q2 `00