data concentrator - svd data multiplexer with fpga-based ... filesvd data multiplexer with...

28
Data Concentrator SVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael Schnell [email protected] University of Bonn July, 18th 2012 Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 1 / 14

Upload: others

Post on 30-Oct-2019

18 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Data ConcentratorSVD data multiplexer with FPGA-based tracking

DAQ-Meeting Bayrischzell

Jochen Dingfelder, Carlos Mariñas, Michael [email protected]

University of Bonn

July, 18th 2012

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 1 / 14

Page 2: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Content

1 Motivation

2 Hardware Status

3 FPGA-based tracking

4 Simulation

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 2 / 14

Page 3: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Motivation

Motivation

CopperSystem

DataConcentrator

ROI

optical links

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 3 / 14

Page 4: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Hardware Status

Content

1 Motivation

2 Hardware Status

3 FPGA-based tracking

4 Simulation

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 4 / 14

Page 5: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Hardware Status

Hardware Solution

• Advanced Mezzanine Card (AMC)• Redesign with 4 SFP connectors

(Zhen-An)→ 11 cards• Received during DEPFET meeting

in Seeon• Given back to Zhen-An for fixing

backplane problems• Start testing, when it returns

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 5 / 14

Page 6: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Hardware Status

“SFP+ Communication”

RJ45

SFP+

SFP+

Connector

ATCA

AMCDatcon

SFP

SFP

SFP

SFP

FPGA4:1 Mux

Connector

SVD

AMCDatcon

SFP

SFP

SFP

SFP

FPGA4:1 Mux

Connector

SVD

AMCDatcon

SFP

SFP

SFP

SFP

FPGA4:1 Mux

Connector

SVD

Backplane

AMCDatcon

SFP

SFP

SFP

SFP

FPGA4:1 Mux

Connector

AMCDatcon

SFP

SFP

SFP

SFP

FPGA4:1 Mux

Connector

SVD

AMCDatcon

SFP

SFP

SFP

SFP

FPGA4:1 Mux

Connector

SVD

AMCDatcon

SFP

SFP

SFP

SFP

FPGA4:1 Mux

Connector

SVD

FPGA

Backplane

GPU Farm

FPGA

AMCCollector

FPGACollector+Tracking

SFP+

SFP+

SFP+

3 carrier boards with 4 AMCs

→ Stage 1: 4:1 / 3:1 Multiplexer ineach AMC card

→ Use one SFP+ transceiver forinter-carrier board transmission

→ AMC card interconnection overRocketIOs

1 AMC as data collector

→ Stage 2: 3:1 Multiplexer with trackreconstruction algorithm

→ Ethernet connection fortransmission of tracks to ATCA

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 6 / 14

Page 7: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Hardware Status

“mTCA Option”

9 or 12 Slot full-size mTCA crate with PCM, IPMI...

Full-mesh or D-Star backplane

2 Crates (18 / 24 AMC), one AMC for intercrate communication

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 7 / 14

Page 8: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Hardware Status

Simplified Block Diagram

FD

FD

FD

FD

4:1Mux

FD

FD

FD

FD

4:1Mux

Framer

11:1Mux

FD

FD

FD

FD

4:1Mux

Decoder

Scheduler &MMU

4 GB DDR 2Memory

Trackreconstruction

EthernetFrame

GPU ProtocolFramer

AmplitudeAnalysis

Collection

AMC "Datcon"

ATCAGPU Farm

FD

FD

FD

Framer

Framer

.

.

.

AMC "Collector"

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 8 / 14

Page 9: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Hardware Status

AMC “DatCon” Layout

FD

FIFO

Trafo

Ringbuffer

FD

FIFO

Trafo

Ringbuffer

FD

FIFO

Trafo

Ringbuffer

FD

FIFO

Trafo

Ringbuffer

Data Selector Ctrl

AuroraCore

ProtocolFramer

Back-plane

1 2 3 4 FD: Frame DetectionUnit (Belle II Link)

Trafo: Transformationon incoming data, likecoordinate translation,Hough transformation...

Ring buffer:Implemented in DDR2memory.

Ctrl: Control unit, sendsdata when next event isrequested by collectingFPGA

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 9 / 14

Page 10: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Hardware Status

Memory Management Unit (MMU)

MMU

phy.addr.

data

virt.addr.

data

TLB

LUT

Cache

BurstFramer D

DR2

burstdata

phy.addr.

Memory Management Unit for easy access to DDR2 memory

Implementation for ring buffer and memory mapping.

TLB, Cache not necessarly required

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 10 / 14

Page 11: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Hardware Status

Internal Protocol

0 3115

Size

Event ID TTRX-ev

23

CRC

.

.

.

CMD / Data #0

Data #1

Type

2

Flags

Type: 2 Bit

00: Command (CMD)

01: User Data (DATA)

Flags: 14 Bit

(0000)16: Normal operation

(0001)16: Test the connection,waiting for reply (only command)

(0002)16: Test the connection, reply(only command)

(1XXX )16: Error, kind of errorindicated by XXX

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 11 / 14

Page 12: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Hardware Status

Proposed Data Packet

0 31

ADC

20

Strip ID X

29

X Y

Y Z

96 Bit in total per strip

20 Bit: Strip ID, 10 Bit: ADC value

Fixed point arithmetic for coordinates (66 bits)

3 bits for sign

X, Y interval: [-16.99999, 16.99999] cm

Z interval: [-32.99998, 32.99998] cm

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 12 / 14

Page 13: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Hardware Status

Summary

Waiting for first 4-SFP AMC prototype to test

Simulation successful for intercommunication between the AMCcards

Design of internal protocol and data format

Next Steps:Test simulated system in hardware

Combined test with Giessen group to transmit ROI

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 13 / 14

Page 14: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Hardware Status

Thank you for your attention!

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14

Page 15: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup Technical Specifications

Technical Specification on I/O

Input:Up to 42 (32)optical-fibre links

1.5 Gbps max

On average110 Mbpsexpected

Dynamicbandwidth

Output:6.25 Gbps overbackplane orSFP+

440 Mbpsaverage datarate

Dynamicbandwidth

→ Total: 4.6 Gbps ≈ 550 MiB/s

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14

Page 16: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup Idea

Tracking Options

Hough Transformation to findstraight and arc tracks (afterconformal transformation)

Can be fast and efficientimplemented in the FPGA overFast Hough Transformation (FHT)

First 2D resulsts of the next slides

Open for other algorithm, likesector-neighbour finding cellularautomaton or Kalman-Filter -1

-0.5

0

0.5

1

0 0.5 1 1.5 2

a

m

0

0.5

1

1.5

2

2.5

3

3.5

4

0 0.5 1 1.5 2 2.5 3 3.5 4

y

x

Houghtransformation

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14

Page 17: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup FPGA Implementation

Trigonometric Functions and Memory Requirements

Need trigonometric functions like sine and cosine e.g. forcoordinate transformation

CORDIC: Basic Lookup table for nodes and a shift-addimplementation of approximation functionPure LUT: Large Lookup table for every value (high memoryrequirements)

FPGAs’ DSPs used as Multiplier/Divider unit.

Block Memory needed to translate strip IDs into coordinates andROI creation

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14

Page 18: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup FPGA Implementation

Status of the Different Blocks in Simulations

FD

FD

FD

FD

4:1Mux

FD

FD

FD

FD

4:1Mux

Framer

11:1Mux

FD

FD

FD

FD

4:1Mux

Decoder

Scheduler &MMU

4 GB DDR 2Memory

Trackreconstruction

EthernetFrame

GPU ProtocolFramer

AmplitudeAnalysis

Collection

AMC "Datcon"

ATCAGPU Farm

FD

FD

FD

Framer

Framer

.

.

.

AMC "Collector"

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14

Page 19: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup Multiplexer Theory

Multiplexing

Three general types of multiplexing:Frequency Division Multiplexing (FDM)

Time Division Multiplexing (TDM)

Statistical Multiplexing

Because of dynamic bandwidth “Statistical Multiplexing” would bemost suitable

Demultiplexing is trivial, if only multiplexing of 32 bit words isensured

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14

Page 20: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup Multiplexer Theory

Aurora overview

Xilinx Aurora protocol as physical link layer over GTP

Takes care of every “low level” operation like clock correction,symbol decoding and 8B/10B Encoding

Easy data transmission/framing over locallink

Error detection and initialization

Status wires for channel and lanes

Lane: One communication lineChannel: Concentration of one or more lanes

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14

Page 21: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup Hough-Transformation

Simple Hough Trafo in 2D with straight tracks

Hits in 2 D

Want to find straight tracks i : yi = m · xi + a in this mess

→ Go to Hough-Space: a = −m · xi + yi

0

0.5

1

1.5

2

2.5

3

3.5

4

0 0.5 1 1.5 2 2.5 3 3.5 4

y

xMichael Schnell (University of Bonn) Data Concentrator July, 18th 2012 15 / 14

Page 22: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup Hough-Transformation

Hough-Space

-1

-0.5

0

0.5

1

0 0.5 1 1.5 2

a

m

Find interception of 5 Tracks around zero!

Found 2: y1 = 0.6 · x ; y2 = 1.5 · xMichael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14

Page 23: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup Hough-Transformation

With tracks

Found 2:y1 = 0.6 · xy2 = 1.5 · x

0

0.5

1

1.5

2

2.5

3

3.5

4

0 0.5 1 1.5 2 2.5 3 3.5 4

y

x

tr 1tr 2

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14

Page 24: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup Hough-Transformation

Coordinate Transformation

This is bad for tracks close or parallel to y-axes (m = inf.)!

Make a coordinate transformation like: r = x · cos(Φ) + y · sin(Φ)

0

0.5

1

1.5

2

0 0.5 1 1.5 2

y

x

trackr

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14

Page 25: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup Hough-Transformation

Implementation in FPGA?

Use Fast Hough Transformation!

Divide and Conquer type algorithm

-1

-0.5

0

0.5

1

0 0.5 1 1.5 2

a

m

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14

Page 26: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup Hough-Transformation

Implementation in FPGA 2

Vary with minimum and maximum size of a unit area the tolerance

Efficient and highly parallelisable, a sector for each unit

-1

-0.5

0

0.5

1

0 0.5 1 1.5 2

a

m

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14

Page 27: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup Hough-Transformation

Implementation in FPGA 3

Also support of different shapes

One more to go...

-1

-0.5

0

0.5

1

0 0.5 1 1.5 2

a

m

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14

Page 28: Data Concentrator - SVD data multiplexer with FPGA-based ... fileSVD data multiplexer with FPGA-based tracking DAQ-Meeting Bayrischzell Jochen Dingfelder, Carlos Mariñas, Michael

Backup Hough-Transformation

Implementation in FPGA 4

Error comes for “free”

Done... finally

-1

-0.5

0

0.5

1

0 0.5 1 1.5 2

a

m

Michael Schnell (University of Bonn) Data Concentrator July, 18th 2012 14 / 14