a time to digital converter implemented on a roach2 board
play

A time to digital converter implemented on a ROACH2 board Genady - PowerPoint PPT Presentation

A time to digital converter implemented on a ROACH2 board Genady Pilyavsky (1,2) Adrian Sinclair (1) Philip Mauskopf (1,3) Arizona State University 1) School of Earth and Space Exploration 2) School of Electrical, Computer and Energy


  1. A time to digital converter implemented on a ROACH2 board Genady Pilyavsky (1,2) Adrian Sinclair (1) Philip Mauskopf (1,3) Arizona State University 1) School of Earth and Space Exploration 2) School of Electrical, Computer and Energy Engineering 3) Department of Physics

  2. Ongoing projects Intensity interferometry ○ - Modern take on Hanbury Brown and Twiss ○ - Single photon detection ○ - km++ baseline ○ - Sub micro-arcsecond resolution

  3. Ongoing projects

  4. Ongoing projects Image Inversion Interferometer ○ - Modified Mach Zehnder Interferometer ○ - Exoplanet Imaging ○ - Contrast reduction ○ - Sub-Rayleigh Resolution

  5. Ongoing projects ● Gravitational Wave Measurement ○ - Piggyback on other projects (Free space optical com) ○ - See Sam Gordon ● Quantum Key Distribution ○ - Modified Mach Zehnder Interferometer, again ○ - One time pad generator ● SNSPD Readout ○ - Multi-dimensional nanowire array ○ - One dimensional “parallel”

  6. Time to digital converter ● What does it do? ○ - Accurate stop watch ○ - Less data vs ADC * ● What do we want? ○ - Continuous data stream ○ - Multiple channels ○ - High timing precision (~100 ps) ○ - Minimal cross talk ○ - Raw output ○ - Cheap

  7. Commercial test ● HydraHarp 400 ● YVX-657 ● TTM8000 ○ Good timing (1ps) ○ Good timing (32ps) ○ 82 ps ○ Continuous ○ Cheap ○ Cheap ○ Black-boxed ○ Not continuous ○ Continuous ○ Expensive ○ Duty cycle ○ Crosstalk ○ Low # of Ch. ○ Crosstalk ○ Low # of Ch.

  8. Commercial test: Cross talk ● TTM8000 ○ Cheap, 82 ps, continuous ○ Crosstalk

  9. Delay line approach : Overview ● Asynchronous input (GPIO) ● Based on the work by Harald Homulle ○ Series of CARRY4 Primitives ● Bubble filter ● 512 → 9 bit converter ● Dual-ported RAM ● Gigabit Ethernet output

  10. Delay line approach : CARRY4 ● Low resource usage ○ Reg, LUT, DSP48 ~1% ● Room to add more channels ● PBlock for further time constr.?

  11. Delay line approach : CARRY4 ● 4-elements ○ Instantiated to ‘0000’ ● Pulse goes in ○ ‘0000’ flips to ‘1111’ ■ Or ‘1110’ ● Or ‘1100’ ○ Or ‘1000’ ■ Or ‘0000’ ● Output to FDR block ○ Synchronized

  12. Delay line approach : Bubble Correction ● CARRY4 Bubbles ○ ‘1110’ shows up as ‘1101’ ● Fixed with LUT6 ○ ‘1101’ to ‘1110’ ○ ‘1001’ to ‘1100’ ○ etc.

  13. Delay line approach: 512 to 9 bit converter ● Split the data, find the zero ○ - 512 bits to 3 & 64 bits ○ - 64 bits to 3 & 8 bits ○ - 8 bits to 3 bits

  14. Delay line approach: Data Output 00 000000000 000000000000000000000 Channel # Course Counter ~8.4 msec Sub-Clock Rollover allowed 8bit / Clock cycle: 16 ns / photon

  15. Delay line approach : Discontinuities ● Long line ○ - 512 elements ○ - ~240 used ● Different clock regions ● Another gap, same clock region

  16. Preliminary Data: Differential nonlinearity (N/N o -1) Bin #

  17. Preliminary Data: Time delay between channels STD ~ 2.35 bins ( ~40 ps)

  18. Time to digital summery ● What did we get? ○ - Continuous data stream (sort of) ○ - High timing precision (~100 ps) ○ - Minimal cross talk (more tests req.) ○ - Raw output ○ - Cheap

  19. Future development: ● More channels ○ Z-Dock+ ● 2D Delay line tests ● Implementation on series 7 FPGA ○ Manual routing via Vivado

  20. Thank you ● Questions ? ● Comments ?

Recommend


More recommend