Implementing the GBT data transmission protocol in FPGAs

Slides:



Advertisements
Similar presentations
PeterJ Slide 1 Sep 4, B/10B Coding 64B/66B Coding 1.Transmission Systems 2.8B/10B Coding 3.64B/66B Coding 4.CIP Demonstrator Test Setup.
Advertisements

ESODAC Study for a new ESO Detector Array Controller.
An Error-Correcting Line Code for a HEP Rad-Hard Multi-GigaBit Optical Link Giulia Papotti CERN (European Organization for Nuclear Research) Universita’
A Gigabit Ethernet Link Source Card Robert E. Blair, John W. Dawson, Gary Drake, David J. Francis*, William N. Haberichter, James L. Schlereth Argonne.
Detector Array Controller Based on First Light First Light PICNIC Array Mux PICNIC Array Mux Image of ESO Messenger Front Page M.Meyer June 05 NGC High.
GallagherP188/MAPLD20041 Accelerating DSP Algorithms Using FPGAs Sean Gallagher DSP Specialist Xilinx Inc.
Time Division Multiplexing School of Physics and Astronomy Department of Particle Physics Elissavet Papadima 29/5/2014.
Juanjo Noguera Xilinx Research Labs Dublin, Ireland Ahmed Al-Wattar Irwin O. Irwin O. Kennedy Alcatel-Lucent Dublin, Ireland.
Adopting Multi-Valued Logic for Reduced Pin-Count Testing Baohu Li, Bei Zhang and Vishwani Agrawal Auburn University, ECE Dept., Auburn, AL 36849, USA.
Versatile Link FPGA-based Bit-Error-Ratio Tester for SEU-hardened Optical Links Csaba SOOS, Stéphane DETRAZ, Sérgio SILVA, Paulo MOREIRA, Spyridon PAPADOPOULOS,
P. Jansweijer Nikhef Amsterdam Electronics- Technology October 15, 20091VLVnT-09 Athens Measuring propagation delay over a coded serial communication channel.
OPTO Link using Altera Stratix GX transceiver Jerzy Zieliński PERG group Warsaw.
Trigger A front end chip for SLHC CMS strip tracker IN2P3 microelectronic Summer School Frejus, June 2011  Concept of Silicon strip Pt-module.
GBT Interface Card for a Linux Computer Carson Teale 1.
The GBT A single link for Timing, Trigger, Slow Control and DAQ in experiments A. Marchioro CERN/PH-MIC.
PROCStar III Performance Charactarization Instructor : Ina Rivkin Performed by: Idan Steinberg Evgeni Riaboy Semestrial Project Winter 2010.
Evaluation of the Optical Link Card for the Phase II Upgrade of TileCal Detector F. Carrió 1, V. Castillo 2, A. Ferrer 2, V. González 1, E. Higón 2, C.
23 February 2004 Christos Zamantzas 1 LHC Beam Loss Monitor Design Considerations: Digital Parts at the Tunnel Internal Review.
GBT, an integrated solution for data transmission and TTC distribution in the SLHC Perugia, 17 May 2006 A. Marchioro, P. Moreira, G. Papotti CERN PH-MIC.
High-Speed Serial Optical Link Test Bench Using FPGA with Embedded Transceivers Serial optical data transmission provides a solution to High Energy Physics.
A CTIVITY II: ALICE ITS R EADOUT E LECTRONICS S ERIAL L INK C HARACTERIZATION Hira Ilyas Madiha Tajwar Jibran Ahmed Raise Ikram (carrier board) Dr. Attiq.
1 Dong Wang, Yaping Wang, Changzhou Xiang, Zhongbao Yin, Fan Zhang, Daicui Zhou (Huazhong Normal University, China) Status and planning on common readout.
FPGA firmware of DC5 FEE. Outline List of issue Data loss issue Command error issue (DCM to FEM) Command lost issue (PC with USB connection to GANDALF)
The GBT, a Proposed Architecture for Multi-Gb/s Data Transmission in High Energy Physics P. Moreira CERN – Geneva, Switzerland Topic Workshop on Electronics.
High Speed Digital System Lab Final Presentation 1 semester project  Instructor: Mony Orbach  Students: Pavel Shpilberg Ohad Fundoianu.
ESS | FPGA for Dummies | | Maurizio Donna FPGA for Dummies Basic FPGA architecture.
A Super-TFC for a Super-LHCb (II) 1. S-TFC on xTCA – Mapping TFC on Marseille hardware 2. ECS+TFC relay in FE Interface 3. Protocol and commands for FE/BE.
Introduction to Field Programmable Gate Arrays Lecture 1/3 CERN Accelerator School on Digital Signal Processing Sigtuna, Sweden, 31 May – 9 June 2007 Javier.
Level-1 Data Driver Card (L1DDC) HEP May 2014 Naxos 08/05/2014HEP 2014, NAXOS Panagiotis Gkountoumis National Technical University of Athens.
GBT-FPGA Interface Carson Teale. GBT New radiation tolerant ASIC for bidirectional 4.8 Gb/s optical links to replace current timing, trigger, and control.
J. Ye SMU Joint ATLAS-CMS Opto-electronics working group, April 10-11, 2008 CERN 1 Test Results on LOC1 and Design considerations for LOC2 LOC1 test results:
Beam Secondary Shower Acquisition System: Igloo2 GBT Starting with LATOP version Student Meeting Jose Luis Sirvent PhD. Student 16/06/
GBT protocol implementation on Xilinx FPGAs Csaba SOOS PH-ESE-BE-OT.
August 24, 2011IDAP Kick-off meeting - TileCal ATLAS TileCal Upgrade LHC and ATLAS current status LHC designed for cm -2 s 7+7 TeV Limited to.
Status and Plans for Xilinx Development
PC-based L0TP Status Report “on behalf of the Ferrara L0TP Group” Ilaria Neri University of Ferrara and INFN - Italy Ferrara, September 02, 2014.
Firmware and Software for the PPM DU S. Anvar, H. Le Provost, Y.Moudden, F. Louis, E.Zonca – CEA Saclay IRFU – Amsterdam/NIKHEF, 2011 March 30.
E. Hazen -- xTCA IG1 AMC13 Project Status E. Hazen - Boston University for the CMS Collaboration.
GBT-FPGA Tutorial Introduction 27/06/2016GBT-FPGA Tutorial – 27/06/20161.
1 HOLA status – February 2011 ● What's been done: ● Firmware for Cyclone IV FPGA for Tang's board – Emulation of TLK2501 transmission protocol – Flow control.
1 Modeling Considerations for the Hardware-Software Co-design of Flexible Modern Wireless Transceivers Benjamin Drozdenko, Matthew Zimmermann, Tuan Dao,
A DWDM link for Real-Time data acquisition systems
FF-LYNX: 2010 & H Luca Fanucci Pisa, 14 Giugno 2011.
Testing PCI Express Generation 1 & 2 with the RTO Oscilloscope
Use of FPGA for dataflow Filippo Costa ALICE O2 CERN
DAQ read out system Status Report
The Jülich Digital Readout System for PANDA Developments
DAQ and TTC Integration For MicroTCA in CMS
Flexible FPGA based platform for variable rate signal generation
“FPGA shore station demonstrator for KM3NeT”
Defining serial links for SuperB
Pulsar 2b AMchip05-based Pattern Recognition Mezzanine
Production Firmware - status Components TOTFED - status
SLS-CS_13-02 High Data Rate (Gbps +) Coding Architecture
Update on CSC Endcap Muon Port Card
Erno DAVID, Tivadar KISS Wigner Research Center for Physics (HU)
Large Area Endplate Prototype for the LC TPC
Totem Readout using the SRS
FrontEnd LInk eXchange
GBT-FPGA Interface Carson Teale.
Front-end digital Status
On Behalf of the GBT Project Collaboration
Maintaining Data Integrity in Programmable Logic in Atmospheric Environments through Error Detection Joel Seely Technical Marketing Manager Military &
Example of DAQ Trigger issues for the SoLID experiment
Impact of Serializer/Deserializer Architecture on ETD High-Speed Links
Test Bench for Serdes Radiation Qualification
Interfacing Data Converters with FPGAs
Measuring propagation delay over a coded serial communication channel using FPGAs P.P.M. Jansweijer, H.Z. Peek October 15, 2009 VLVnT-09 Athens.
New DCM, FEMDCM DCM jobs DCM upgrade path
Fixed Latency Serial Links with FPGA-embedded SerDes for SuperB
Presentation transcript:

Implementing the GBT data transmission protocol in FPGAs Sophie BARON (CERN) Jean-Pierre CACHEMICHE (CPPM) Frédéric MARIN (CPPM) Paulo MOREIRA (CERN) Csaba SOOS (CERN)

Outline Introduction GBT ASIC presentation (reminder) Typical architecture of use GBT protocol implementation on FPGA Test setup and results Further work Reference design availability Conclusion

Introduction Aim of our study: Warning: Interoperability between GBT chip and FPGAs must be guaranteed Check the compatibility of FPGAs (Xilinx and Altera) with the GBT protocol Warning: This presentation will give some results and numbers concerning the implementation of the GBT protocol on Altera and Xilinx FPGAs but be aware that they cannot be used in any case as a tool of comparison of the two vendors

GBT ASIC presentation Motivations GBT ASIC characteristics Radiation hardened chip compatible with Super LHC luminosity Reduce the number of optical fibres installed Concentrate R&D effort GBT ASIC characteristics General purpose bidirectional optical serial link running at 4.8 Gbps, on which transit: Data Trigger, Timing and Control Slow control Custom transmission protocol Able to correct up to 16 consecutive erroneous bits

GBT protocol needs to be compatible with the FPGAs and vice versa Typical architecture GBT protocol needs to be compatible with the FPGAs and vice versa

SLHC frame: 120 bits @ 40 MHz ≡ 4.8 Gbps Frame description SLHC frame: 120 bits @ 40 MHz ≡ 4.8 Gbps 4 4 80 32 User field: 82 bits ≡ 3.28 Gbps Reed-Solomon overhead allowing to correct up to 16 consecutive erroneous bits H: Header, 4 bits SC: Slow Control 4 bits GBT control 2 bits (80 Mb/s) Slow control 2 bits (80 Mb/s) D: Data (3.2 Gbps) FEC: Forward Error Correction (32 bits) Line efficiency: 68%

GBT protocol – Encoding scheme overview 4 60 H<3:0> SC<3:0> D<79:0> FRM<119:0> 80 21 Scrambler 44 120 RS Encoder Interleaving Interleaving RS Encoding Scrambling H<3:0> SC<3:0> D<20:0> D<79:63> SCR<20:0> SCR<83:63> SCR<41:0> FEC<15:0> SCR<43:42> SCR<83:44> FEC<31:16> D<41:21> D<62:42> SCR<41:21> SCR<62:42> FRM<119:0> FRM<119> FRM<0> The frame is shifted out MSB first, that is: FRM<119>, FRM<118>, … FRM<0> (The header shifts out first)

Pattern detect & Word aligner FPGA implementation FPGA devices from Altera or Xilinx embed serial transceivers configurable for several standard telecommunication protocols (XAUI, Gigabit Ethernet, PCIe, ...) But: Transceivers include neither scrambler nor Reed Solomon encoder nor interleaver Their word aligner/comma detection module are not flexible/configurable enough to fit our needs The width of the parallel interface of the ser/des can only take predefine values So the way to implement the GBT protocol on FPGA is: To use the transceiver in the most basic way (ser/des function) To implement custom function in logic cells Hard block configured by vendor specific config file Scrambler Reed Solomon Encoder Interleaver MUX & Clock domain crossing Serializer 84 bits 40 MHz 88 bits 120 bits 4 bits header 40 bits 120 MHz 4.8 Gbps Deserializer Pattern detect & Word aligner 4.8 Gbps Descrambler Reed Solomon Decoder Deinterleaver DEMUX & Clock domain crossing 84 bits 40 MHz 88 bits 120 bits 4 bits header 40 bits 120 MHz

Pattern search for data alignment The pattern search and alignment functions are achieved with two entities: A barrel shifter allowing to bit shift the incoming data A state machine looking at the expected header position in the frame and giving the “locked” status Word boundary Header ... ... 1 Locked status Deserializer Barrel shifter Pattern search state machine Demux 4.8Gbps 40bits 40bits 40bits 120bits 120MHz 120MHz 120MHz 40MHz Bit slip command Out Of Lock In Lock From Giulia Papotti's thesis

Resource usage Implementing several channels leads to an important usage of logic cells resources The Reed Solomon decoder takes most of the resources Resource usage (in ALMs*) by entity for one full channel implemented on Stratix II GX ALM: Adaptative Logic Module (contains 2LUTs and 2 registers)

Pattern detect & Word aligner Optimization Resource sharing technique: Use one decoding module for n channels by increasing its working frequency by n Gain not as significant as expected because multiplexing and demultiplexing functions use many registers De- serializer Pattern detect & Word aligner 4.8 Gbps scrambler Reed Solomon Decoder interleaver DEMUX & Clock domain crossing 84bits 40MHz 120MHz 120bits 40bits DEMUX MUX

Optimization results for 12 links No optimization Optimization: one decoder for 3 links 51% occupancy ALMs of StratixIIGX90 40% occupancy ALMs of StratixIIGX90

Tests Tests of implementation have been done using two different platforms: Xilinx Virtex 5 ML523 platforms Altera StratixIIGX PCI express development board

No error detected during 2 hours of running Tests (2) 120MHz ref PLL PLL Scrambler RS Encoder Interleaver MUX & Clock domain crossing Serializer 84bits 40MHz 88bits 120bits 40bits 120MHz 4,8Gbps Deserializer Pattern detect & Word aligner 4,8Gbps Descrambler RS Decoder Deinterleaver DEMUX & Clock domain crossing 84bits 40MHz 88bits 120bits 40bits 120MHz Deserializer Pattern detect & Word aligner 4,8Gbps Descrambler RS Decoder Deinterleaver DEMUX & Clock domain crossing 84bits 40MHz 88bits 120bits 40bits 120MHz Scrambler RS Encoder Interleaver MUX & Clock domain crossing Serializer 84bits 40MHz 88bits 120bits 40bits 120MHz 4,8Gbps Xilinx ML523 (V5FXT based) Altera (SIIGX based) Generator Error counters No error detected during 2 hours of running 120MHz ref generated by an AGILENT JBERT N4903 Electrical (SMA) to optical mezzanine on Xilinx side Optical transceivers SFP+ 1300nm types from MergeOptics Generator and Error detection controlled and monitored through ChipScope. Generated words: constants or flying bits

Xilinx and Altera platforms both show excellent performances Measurements Xilinx and Altera platforms both show excellent performances Virtex5 FXT & SFP+ with GBT protocol Stratix II GX & SFP+ with GBT protocol Total Jitter @BER10-12 = 78 ps pkpk Total Jitter@BER10-12 = 90 ps pkpk Test conditions: ML523 (Virtex 5 FXT) for Xilinx, Stratix II GX PCIe for Altera both powered by the power supply given in the kit Reference clock generated by J-BERT 4903A from Agilent Same SFP+ 1300nm optical transceiver from MergeOptics, 50 cm of optical fiber, for both platforms Measurements made with Lecroy SDA100G sampling scope equipped with 10 GHz optical sampling head Remark: the Stratix II GX performances are slightly lower because the reference clock could not be as ideally connected as for the Virtex 5 due to the plateform connectivity

Further work Continue to optimize the implementation: One idea could be to pipeline Reed Solomon decoder to be able to multiplex more channels Test the compatibility with real GBT device Implement this protocol on the latest devices (StratixIV GX and Virtex 6) Study implementation of constant phase/latency of embedded transceivers (see Ioannis Papakonstantinou slides)

Design availability Reference designs implementing one or several full channels for both Xilinx and Altera devices exist Firmware starter kit will be offered to the interested people. It will contain: Source code for both implementations (Altera & Xilinx) Documentation Basic support You will just need to provide the hardware You just need to contact Sophie Baron (Sophie.Baron@cern.ch) giving Your name The description of your project

Summary First time the GBT protocol runs on real platforms These platforms will be used to test the GBT ASIC GBT protocol runs on both major FPGAs vendors Interoperation proven Further resource usage optimization under investigation Firmware starter kit will be available soon References: Giulia Papotti's thesis: https://espace.cern.ch/GBT-Project/GBTX/Publications/Forms/AllItems.aspx Csaba Soos and Paulo Moreira slides @ TWEPP09 GBT project web site: http://cern.ch/proj-gbt

Thanks for your attention

Back up slides

Output: 84 bits (scrambled) Scrambler Aim of the scrambling: Reduce the occurrence of long sequences of '0' (or '1') only; Achieve a good DC-balance Scrambler characteristics: Doesn't add any redundancy/overhead Has a latency of 1 clock cycle Generates a pseudo random signal 83 21 bits Scrambler 21 bits Scrambler Input: User field, 84 bits Output: 84 bits (scrambled) 21 bits Scrambler 21 bits Scrambler

Reed Solomon encoder + + Aim of the Reed Solomon encoding: Protect the data against transmission errors Reed Solomon encoder characteristics: Composed of 2 RS encoder (15,11), symbol = 4 bits Only combinatorial logic Allows to correct up to 2 symbols (8 consecutive bits for example) 120 bits output: 88 bits input: 4 bits header 119 87 84 Image of the 2 inputs of 44 bits 83 44 60 RS encoder (15, 11) + + 44 84 bits scrambled 43 44 60 RS encoder (15, 11) 2 fields of 16 redundant bits

Interleaver Aim of the interleaving: Interleaver characteristics: Improve the capacity of the code to correct long burst of errors Interleaver characteristics: Interleaving made at a symbol level (4 bits) Only “routing”, no clock cycle Increases the code correction capability from 2 to 4 consecutive symbols (16 consecutive bits) without increasing overhead 119 119 Header always in the right place Input: 120 bits from the RS encoding Output: 120 bits with interleaved symbols