230 likes | 326 Views
PXL READOUT requirement and one solution. Xiangming Sun. Outline. R equirements for e vent readout mode One solution for Event readout mode. R requirement for e vent readout mode. requirement :. mass terminition board.
E N D
PXL READOUTrequirement and one solution Xiangming Sun
Outline Requirements for event readout mode One solution for Event readout mode
Rrequirement for event readout mode requirement : mass terminition board 40 sensors per readout board( Each sensor has 2 LVDS pairs. 80 LVDS pairs in 160MHz). sensor digitizes signal and records hit address in on-chip memory, then transfer hit address serially. trigger is STARDAQ1000(about 1KHz). DDL working at 40MB/s in average. xilinx V6RDO SIU/DDL DAQ PC
Data rate for 1 sector 1 second 1000 triggers 3 outer and 1 inner 3X150+500=1000 words 1 ladder 10 sensors 1000X1000X10=10M words=40 Mbyte/S
What is the data looks like for 1 sensor Data is sent in serial. We have 40 sensors for each sector
Input and output for FPAG for 1 sector 40 sensors:80 channels in 160 MHz input 1K Hz trigger Event data block output
One solution Data is buffered in FPGA Event format Event mode Readout structure for one sector Data modified Readout mechanism exceptions
Data is buffered in FPGA frame1 frame2 frame3 Trigger time Event data DAQ policy: 1 trigger per event DDL peak speed(2Gb/s) is lower than data generation peak speed(12.8Gb/s). TPC can buffer 8 triggers when DDL is not available. PIXEL should buffer >=8 trigges
Event format For sector Header token 9 Trigger info header system status Data block For ladder1 temperature Firmware version Hardware ID Data block For ladder2 Block start Data length ……. 10 words reserved … Hit address Data block For ladder3 sensor ID is encoded in four unused bits Data block For ladder4 ender end token
Event mode Readout structure for one sector Ladder#1 Ladder#2 Ladder#3 Ladder#4 Event Builder #1 (head token added) Event Builder #2 Event Builder #3 Event Builder #4 (end token added) Event fifo SIU
chip ID and row token chip ID row token 12
Event Builder Sensor 1 circular buffer output2 output1 … 10 sensors Serial to parallel conv Serial to parallel conv Trigger time memory data memory start frame memory Builder state machine To eventfifo
Serial to parallel converter Sensor 1 output2 output1 … 10 sensors Serial to parallel conv Serial to parallel conv Serial-to-parallel converter 1,convert 160MHz 1 bit data to 10MHz 16bit parallel data. 2, add sensor ID into the data. Data memory scans Serial-to-parallel converter one by one every 10 ns(100MHz). It starts from sensor 1 and go back to sensor 1 after reaching sensor 10. data memory From sensor1 From sensor2 From sensor… From sensor10 From sensor… From sensor1
Circular buffers trigger token and buffer full Trigger time memory data memory frame counter when trigger comes frame1 frame2 index of start frame memory 512 words index of data memory for the first frame start frame memory index of data memory for the second frame 64K words 512 words
Data check out Trigger time memory get trigger time and start frame index data memory frame1 get buffer index for 2 frames frame2 Check out region where hit address bigger than trigger time for frame1 and smaller for frame2 Release unused memory. start frame memory
Buffering capability 19K words/trigger (684kb).( buffer length in chip is assumed to be 500 words and 150 word for inner and outer ladder ) . threshold are set in Serial-to-parallel converter to control the max addresses coming from each sensor.
exceptions Sensor overflows Data memory overflows Start frame memory overflows Trigger time memory overflows
Firmware Architecture Sensor output Temperature latchup clk TCD IOdelay Jtag to sensor Slow control Ladder interface Event readout JTAG Main configuration usb ddl
event readout Architecture marker(1) & frame counter(10) mg stpc stpc stpc stpc ...20... ...20... trigger enable(8) & trigger time(10) 10Mhz valid(8) & data(32) trc Mux (40X20)-(40) Mux (40X20)-(40) valid(1) 200Mhz data(32) eb eb eb eb ...8... ...8... sensor output trigger Mg:marker generater Stpc:serial to parallel converter Trc:trigger controller & readout controller Eb:event buffer Lb:ladder buffer Ef:event fifo eb_busy(1) 200Mhz switch (32X8)-(32) switch (32X8)-(32) 200Mhz switch (32X2)-(32) 200Mhz ef 66Mhz SIU
Stpc:serial to parallel converter Sr: shift register Tl: trigger logic sr sr time decoder& buffer trigger enable(8) trigger enable(1) data(32) trigger time(10) tl tl ...8... valid
trigger controller & readout controller Trigger trigger enable(8) & trigger time(10) Circular buffer(8 in depth) Readout trigger address trigger address TCD Switch control Readout controller