CB-Meeting - A2 Collaboration

designpadAI and Robotics

Dec 1, 2013 (3 years and 11 months ago)

81 views

Peter
-
Bernd
Otte



Sep. 2009

CB collaboration meeting, Edinburgh


All modern experiments rely on FPGA triggers


GSI, ATLAS, CMS, ...


Our FPGA
Møller

trigger works reliable



New trigger for our entire experiment:


works in parallel to the existing trigger


ability to map the existing trigger logic


can perform far much more advanced triggering



But: What is an FPGA?


semiconductor device,

great capabilities


Think of: building trigger electronics

1.
take CAMAC/NIM logic modules
(AND/OR)

2.
set it up:


using cables


program modules




So far so good:


What if it becomes more complex?



Scale: mm


More sophisticated trigger electronics:

input

output

Scale: meters


Can act as: logic,
scaler
,
TDC, …


is smaller, faster, needs
less power, cheaper


output

input

clock

logic

cell

(„
modules
“):

programmable

switches

Interconnection (“cables”)
:

Comparison: FPGA...


“has” 1000’s of modules and cables


~300 I/O signals


configuration via software

(behaviour of cells and interconnection)


New electronic cards already ordered


„VUPROM 2“ from GSI


also used @GSI and KAOS@A1


FPGA: „
Virtex

4“ from Xilinx, 400 MHz


224 inputs, 32 outputs, LVDS


6U form factor


VMEbus

connectivity


cheap: 2k


apiece


10 cards ordered


With new hardware:

Possible to include all detectors


All CB crystals (672x


720 cable pairs)


All PID stripes (24x)


Inner TAPS crystals (72x)


Tagger channels (352x)


Endpoint Tagger (~64x)


TOF
-
Panels


Energy sum



Feasibility unknown:


Remaining TAPS crystals and
vetos


Request to responsible experimentalists!

S
=1232x


Algorithm steps

1.
Load hit pattern

2.
Shrink clusters

(using set of rules)

3.
Count number of cells

= number of clusters

4.
If desired

cluster count


trigger!



“cellular automata logic”

(each crystal = cell)

crystal scheme of CB

(coffee break)



more
details:



during July run


128 crystals used for test (~ 20% of CB)


Required time only ~140ns


Sample results for cluster count = 3











Works reliably, next: whole CB & more


Check: efficiency, purity, simulation


essential for each new trigger algorithm

(a)

(b)

(c)


Enough inputs:


feasible to include signals from all detectors


New trigger electronics will be installed


in parallel to existing


Request to experimentalists:


Allocate digital signals from different

apparati


New trigger algorithms


Grant:


strike up a discussion during coffee break

(coffee break)

For the coffee break:


Peculiarities of FPGA?


New trigger compounds


Cellular Cluster Counter
Algorithm in greater detail

Field
-
programmable gate
array


Semiconductor device that can be configured
via software





Architecture:


logic blocks (~1
0
6
)

(LUTs, adder, etc.)


routing matrix


I/O pads

microprocessor

FPGA

(
electronics
)

Input
u
,
v

and

w

Output
z


Important difference:

Concurrent processing ⇔

unlike microprocessors


Example:

sequential

New trigger compounds

(what is possible)

Comparison to old trigger


Included detectors:


Crystal Ball, TAPS, PID


Triggering on:


cluster count (simple logic)


energy sum (in CB only)


charged particles involved (PID
-
OR)


Disadvantages:


cluster count only a rough estimate


n
o complex conditions


(e.g. “planar 2 body hit, one uncharged”)


hard to apply changes


not all detectors included


some trigger relevant signals not recorded

New Trigger

can remove

all
disadvant
.


Planned so far:


Improved cluster counter

(cellular automata logic)


Cluster counter for

charged/uncharged particles


Detect planar events


Møller

trigger


Include:


CB crystals, PID, inner TAPS and Tagger



Is it possible to trigger on TAPS?


Inner rings


standard electronics


Yes.


Rest of TAPS


T.
Rostomyan

building
analog

splitter


More digital signals welcome:

o
Č, TOF, endpoint tagger, test paddles, etc.


Possible (new) trigger compounds:


time

(signal duration & distance)


handle
EACH

input channel differently


certain
input pattern
(AND, OR, …)


certain
sequence
of signals (1st … then …)


record
intermediate trigger steps with data



Limit: space on FPGA (number of logic cells)

Cellular Cluster Counter
Algorithm


Cellular automata, basic declarations:


Each crystal in CB is represented as a “
cell
µ


Each
cell:


has a status (marked/unmarked)


knows status of 10 neighbours:






can only toggle its own status

1
4
5
10
9
6
8
7
2
3
up
d
o
wn
7
2
6
5
1
4
9
3
10
8

Algorithm steps

1.
Load

hit pattern into cells

2.
Apply “
replacement rules
µ??

until no more changes occur

(


see next slide
)

3.
Count number of
marked cells



= number of clusters

4.
If desired number of clusters


trigger




15

replacement rules

1.
Leave cluster number constant

2.
No overlap between rules

3.
Relevant neighbours vary







Colour code:


a
c
tual
c
onside
r
ed c
r
y
stal
c
r
y
stal
t
o be unma
r
ked
ma
r
ked (fi
r
ed) c
r
y
stal
unma
r
ked (not fi
r
ed) c
r
y
stal
c
r
y
stal
t
o be ma
r
ked
1
4
5
2
3
1
4
5
2
3
1
4
5
2
3
1
2
3
1
4
5
2
3
1
5
10
6
2
3
+ their rotated versions

Not for up/down cells
at the same time


Problem: Stops, if holes are bigger than 1 crystal










Fortunately not critical: happens only ~once a day