the alice data-acquisition read-out receiver card
DESCRIPTION
The ALICE Data-Acquisition Read-out Receiver Card. C. Soós et al. (for the ALICE collaboration) LECC 2004 13-17 September 2004, Boston. Outline. Introduction Hardware Firmware Software Performance Applications Summary. Introduction: ALICE DAQ. Detector. Readout Electronics. - PowerPoint PPT PresentationTRANSCRIPT
The ALICE Data-The ALICE Data-AcquisitionAcquisition
Read-out Receiver CardRead-out Receiver CardC. Soós C. Soós et al.et al.
(for the ALICE collaboration)(for the ALICE collaboration)
LECC 2004LECC 200413-17 September 2004, Boston13-17 September 2004, Boston
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 22
OutlineOutline
• IntroductionIntroduction• HardwareHardware• FirmwareFirmware• SoftwareSoftware• PerformancePerformance• ApplicationsApplications• SummarySummary
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 33
Introduction: ALICE DAQIntroduction: ALICE DAQ• ALICE requirements with Pb-Pb beamsALICE requirements with Pb-Pb beams
– 25 GB/s aggregate BW from detectors25 GB/s aggregate BW from detectors– 2.5 GB/s aggregate event building BW2.5 GB/s aggregate event building BW– 1.25 GB/s aggregate BW to tape1.25 GB/s aggregate BW to tape
• About 400 About 400 Detector Data Link (DDL)Detector Data Link (DDL)– Full-duplex optical linkFull-duplex optical link– Data rate up to 200 MB/sData rate up to 200 MB/s
• The The Readout Receiver Card (D-RORC)Readout Receiver Card (D-RORC)– PCI compatible adapterPCI compatible adapter– Integrates two DDL interfacesIntegrates two DDL interfaces
• ALICE data-acquisition software: DATEALICE data-acquisition software: DATE
Local Data Concentrator
DDL SIU
Detector
Readout Electronics
DDL DIU
D-RORC
Event BuildingNetwork
Global DataCollector
StorageNetwork
Transient DataStorage
DDL 385
175
225 ports
50
25
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 44
Introduction: DAQ and Introduction: DAQ and HLTHLT
• Some of the detectors requireSome of the detectors requirefiltering or data reductionfiltering or data reduction
• DAQ and HLT interfaceDAQ and HLT interface– Standard Standard DDLDDL links links– Data splitter in the Data splitter in the D-RORCD-RORC
• Each D-RORC hosts two DIUsEach D-RORC hosts two DIUs– First DIU receives detector dataFirst DIU receives detector data– Second DIU transfers the copySecond DIU transfers the copy
of the raw dataof the raw data
• HLT data is transferredHLT data is transferredback using DDL and D-RORCback using DDL and D-RORC
HLT Farm
H-RORC H-RORC
FEP FEP
D-RORC D-RORC
LDC LDC
D-RORC D-RORC
LDC LDC
DIU
DIU
DIU
DIU
DIU
DIU
DIU
DIU
SIU
SIU
SIU
SIU
Event Building Network
Readout Electronics
Detector
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 55
HardwareHardware
Altera FPGA
PCI 64-bit/66 MHz
CMC interface
Optical transceivers
JTAG interfaceConf. Flash
LVDS interface
• 850 nm VCSEL laser• 2.125 Gbit/s• Pluggable modules
• High-speed serial I/F• 2 inputs + 2 outputs• Purpose: detector busy
• +3.3V compatible signals• Bus master enabled
• Standard extension I/F• About 180 user I/O
• APEX-E device family• EP20K400E
• EPC4• Programmable via internalor external JTAG chain
• FPGA programming anddebugging• Flash memory programming
Electrical transceivers• Multi-rate transceivers• Serial-Parallel-Serial converters• Integrated 8B/10B endec• Clock recovery
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 66
FirmwareFirmware
• PCI interface corePCI interface core– Handles PCI transactionsHandles PCI transactions– Performs PCI masteringPerforms PCI mastering
• Receiver and TransmitterReceiver and Transmitter– Buffer data and initiate the DMABuffer data and initiate the DMA
• Control registersControl registers– Mapped to PCI memoryMapped to PCI memory– Provide control interfaceProvide control interface– Provide status informationProvide status information
• DDL interfaceDDL interface– Performs DDL transactionsPerforms DDL transactions– Provides DDL statusProvides DDL status
PCI core (64-bit master, memory mapped)
Transmitdata path
DDL interface
Controlregisters
Receivedata path
64-bit PCI or PCI-X bus, 3.3V signaling (!)
High-speed I/F to the transceivers
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 77PCI busPC memory, managed by PHYSMEM
Receiver DMA controller
Receive Address FIFO
DMA report #1
DMA report #2
DMA report #3
DMA report #4
DMA report #5
Receiver DMAReceiver DMA
Buffer Descriptor #1
Buffer Descriptor #2
Buffer Descriptor #3
Buffer Descriptor #4
Buffer Descriptor #5
Receive Report FIFO
Firmware
Software
D-RORC
DDL
Push
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 88
• D-RORC driver: Linux device driver, runtime loadable D-RORC driver: Linux device driver, runtime loadable modulemodule– Finds the D-RORC cards on the PCI busesFinds the D-RORC cards on the PCI buses– Maps the registers into the user memory spaceMaps the registers into the user memory space
• D-RORC API layer: collection of library routines written D-RORC API layer: collection of library routines written in Cin C– Ensures exclusive access to the hardware using device lockingEnsures exclusive access to the hardware using device locking– Provides simple programming I/F for higher level applicationsProvides simple programming I/F for higher level applications
• Command line executablesCommand line executables– Hardware identificationHardware identification– Reset components (DIU, SIU etc.)Reset components (DIU, SIU etc.)– Send commands, reads statusSend commands, reads status– Send data blocksSend data blocks– Receives and checks data blocksReceives and checks data blocks
SoftwareSoftware
Linux kernel
D-RORC driver Physmem
D-RORC API layer
Application (e.g. DATE)
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 99
Performance: Test bedPerformance: Test bed
• Supermicro server motherboard with dual Xeon CPUs Supermicro server motherboard with dual Xeon CPUs @ 2.4 GHz@ 2.4 GHz
• Six PCI-X slots, 4 bus segments (3+1+1+1)Six PCI-X slots, 4 bus segments (3+1+1+1)• Linux OSLinux OS• ALICE Data-Acquisition software (DATE)ALICE Data-Acquisition software (DATE)
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 1010
Performance: Single Performance: Single channelchannel
• Bandwidth vs. block size measurements with Bandwidth vs. block size measurements with internal and external (DDL) data source using one internal and external (DDL) data source using one D-RORC channelD-RORC channel
• Steady increase until the maximum bandwidth is Steady increase until the maximum bandwidth is reachedreached– Internal: BWmax = Fpci [MHz] x 4 [Bytes] = Internal: BWmax = Fpci [MHz] x 4 [Bytes] = 264 MB/s264 MB/s– External: BWmax = BWddl = External: BWmax = BWddl = 206 MB/s206 MB/s
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 1111
Performance: Dual Performance: Dual channelchannel
• Bandwidth vs. block size measurements with Bandwidth vs. block size measurements with internal and external (DDL) data source using two internal and external (DDL) data source using two D-RORC channelD-RORC channel
• Steady increase until the maximum bandwidth is Steady increase until the maximum bandwidth is reachedreached– Internal: BWmax = Fpci [MHz] x 4 [Bytes] x 2 – Loss = Internal: BWmax = Fpci [MHz] x 4 [Bytes] x 2 – Loss =
484 MB/s484 MB/s– External: BWmax = BWddl x 2 = External: BWmax = BWddl x 2 = 412 MB/s412 MB/s
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 1212
Performance: Dual vs. 2 Performance: Dual vs. 2 SingleSingle
• Bandwidth vs. block size measurement with internal Bandwidth vs. block size measurement with internal data sourcedata source
• Different maximum (different arbitration)Different maximum (different arbitration)– Dual-channel D-RORC:Dual-channel D-RORC: BWmax = BWmax = 484 MB/s484 MB/s– Two single-channel D-RORC:Two single-channel D-RORC:BWmax = BWmax = 464 MB/s464 MB/s
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 1313
Performance: Six D-Performance: Six D-RORCsRORCs
• Testing the fully populated PC using internal data Testing the fully populated PC using internal data sourcesource– Interoperability testInteroperability test– Measure the maximal input bandwidthMeasure the maximal input bandwidthPCI #6
PCI #5
PCI #4
PCI #3
PCI #2
PCI #1Seg
men
t #1
#2#3
#4
Con
trol
ler
#1#2
1 Ch1 Ch 1 Ch1 Ch
1 Ch1 Ch 1 Ch1 Ch 1 Ch1 Ch
1 Ch1 Ch 1 Ch1 Ch 1 Ch1 Ch 1 Ch1 Ch
1 Ch1 Ch 1 Ch1 Ch
1 Ch1 Ch 1 Ch1 Ch 1 Ch1 Ch
1 Ch1 Ch 1 Ch1 Ch 1 Ch1 Ch 1 Ch1 Ch 1Ch1Ch 1 Ch1 Ch 1 Ch1 Ch
264264 464464 424424 528528 792792 10451045 840840
264264 232232 141.141.33
264264 264264 261.261.33
140140
Bandwidth [MB/s]Bandwidth [MB/s]
Normalized Bandwidth Normalized Bandwidth [MB/s/Ch][MB/s/Ch]
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 1414
D-RORC
D-RORC
Detector LDC
D-RORCDIU
HLT LDC
Fast Ethernet
GDC
3x 250 GB disk
Detector LDC
VME processor
CAEN VME boards
Si TelescopeTOF
DDL 3 DDL 4
DDL 5
HLT
HLT
(3 PCs)
RCU 1 RCU 2
DDL 1
DDL 2
IROC
CASTOR
1.5 TB
10 MB/s
/castor/cern.ch/alice/testbeam2004/T10
Applications: TPC sector Applications: TPC sector testtest
• Test beam of one complete Inner Read-out Test beam of one complete Inner Read-out Chamber (IROC) of the ALICE TPC detector (May Chamber (IROC) of the ALICE TPC detector (May 2004)2004)
13-17 September 2013-17 September 200404
LECC 2004, BostonLECC 2004, Boston 1515
SummarySummary
• D-RORC card has been developed as the high-speed D-RORC card has been developed as the high-speed interface between the DDL and the PCI businterface between the DDL and the PCI bus
• Using two integrated DDL channelsUsing two integrated DDL channels– reduces the number of PCI slotsreduces the number of PCI slots– offers data paths from the detectors to the DAQ and HLT systemsoffers data paths from the detectors to the DAQ and HLT systems
• Linux device driver and API library based on standard C, Linux device driver and API library based on standard C, as well as Linux executables are availableas well as Linux executables are available
• The card has been tested thoroughly in the labThe card has been tested thoroughly in the lab– 1 CH bandwidth = 1 CH bandwidth = 264 MB/s264 MB/s– 2 CH bandwidth = 2 CH bandwidth = 484 MB/s484 MB/s– 4 D-RORC on different PCI segments = 4 D-RORC on different PCI segments = 1045 MB/s1045 MB/s
• Real applications show the stability and reliability of the Real applications show the stability and reliability of the cardcard
Thank you!Thank you!