GHz rate single photon counting

The fluorescent lifetimes of molecules used in biological applications tend to be in the sub-ns to a few ns timescale (let's say 0.8-4). The most direct methods to measure lifetimes typically involve gating (either explicit or via time correlations).

But this is horribly wasteful as information is discarded from those photons that did not come at a selected time. If you have a delicate sample, you can destroy it before you finish your measurement; if you have a rapidly varying process, the state can have changed before you've finished making the measurement.

What is the state of the art in sustained photon counting in the visible range (perhaps 450-600 nm), and is it at the level where one could reasonably time every photon without having to drop counting rates drastically below the fluorescence lifetime itself? The photophysics admits measurement of lifetime at a MHz rate (~100 photons at 10 ns intervals), but is it practical to actually do this?

Although there are a variety of options available for photon counting (PMTs, APDs, GaAsPs), it has been difficult for me to get an accurate picture of the speeds and limitations of various devices actually available, or of the physical limits to a certain type of detection scheme. For example, do PMTs suffer from blurred readout times due to the distribution of electron path lengths in the cascade? Do thermal effects render APDs useless for sustained high-rate readout even if they are small enough so that the capacitance isn't a major barrier for recharging? (Or is capacitance impossibly bad for GHz rates even with really tiny e.g. 100 um square devices?)

-
What part of the spectrum are you talking about? – Ben Crowell Jul 25 '13 at 15:31
@BenCrowell - Oops, forgot to mention--fixed now. (The middle of the visible range.) – Rex Kerr Jul 25 '13 at 17:03
Do you mean something like fluorescence lifetime imaging (FLIM)? – Eekhoorn Aug 1 '13 at 8:06
@biologue - Yes, the application would be FLIM. (And/or temporal multiplexing.) – Rex Kerr Aug 1 '13 at 16:06

A scheme used by several current particle physics detectors can almost certainly be made to work (though it generally involves custom high-speed electronics which is pretty expensive; perhaps a small system can get away with just a good FPGA...).

The basic scheme is to continuously digitize the output of the primary detectors (PMTs or whatever) into a circular buffer of circular buffers. The two instances of this system I've worked with used ADC widths of $8$--$32\,\mathrm{ns}$, but there is nothing special about that: you could get down to around 1 ns pretty easily and circa $0.1\,\mathrm{ns}$ should be possible.

At the electronics level the primary signal is pre-amplified (if needed/desired, often the primary detector gain is sufficient), and split to (at least) the trigger and the digital electronics.

The digital electronics are backed by $N$ circular buffers of $M$ samples each. Each buffer also maintains pointers to the start and end of the recently written data. At any given time the system is working on sample $m \in [0,M)$ of buffer $n \in [0,N)$; the sample is written and the working sample is advanced $m := (m + 1) \bmod M$. In the event that no trigger occurs the system is allowed to continuously overwrite "uninteresting" data as $m$ cycles through the whole range.

When a trigger occurs, the system advances the buffer $n := (n+1) \bmod N$ so that the most recent buffer(s) will not be overwritten.

The data acquisition system can then readout the latched buffers as time is available and reconstruct the "interesting" parts of the signal. (If you need to know what the "uninteresting" parts of the signal look like you can always generate a false trigger to latch the "nothing"; this is called a "minimum bias" or "random" trigger and you generally do need one.)

The size of the individual buffers is chosen to insure that the whole signal should be in a single latched window. The number of buffers you need depends on the expected rate and the readout latency. You need some scheme to deal with triggers than come so close together that the "next" buffer still contains stale data (only partially overwritten), and other issues that I'm sure you can see for yourself if you think about it.

This does not necessarily count photons, it allows you to approximately reconstruct the analog signal from the detector with a time-like granularity on order of the sample width. So you can't necessarily tell the difference between say two green photons in close coincidence and one near UV photon, but this is often good enough.

I suspect that high-speed capturing oscilloscopes do something similar internally.

-
This is definitely part of the solution (+1), but fortunately one can buy ADC cards that do exactly this with $M=2$ while presenting the already-written half of the data for FPGA processing. But if the upstream detectors don't produce an appropriate analog signal it's of no use--you really do have to count photon arrival times for this to work, which means that you have to count photons. – Rex Kerr Jul 25 '13 at 17:01
Rex, we get two-signal discrimination on a time scale of 2 ADC bins, and single peak timing a rather better than 1 ADC bin. Don't know if that's good enough. – dmckee Jul 26 '13 at 0:24
That is good enough, and that is what I would expect with appropriate detectors. But which detectors are appropriate? Choosing between APDs, PMTs, HPDs, etc. seems nontrivial, and making the wrong choice seems like it could hurt one by a factor of 2 or more in a regime where factors of 2 are really important. – Rex Kerr Jul 26 '13 at 15:31
I really only know PMTs well. You can get good multiple pulse behavior, but you will pay for it. Especially if you also want high gain (10 millionish). You could also consider MCPs with fine grained instrumentation---the odds of getting two hits on a single detector go down if you have a lot of independent channels. – dmckee Jul 26 '13 at 16:02
Don't PMT's have serious dark current issues (unless cryogenically cooled)? – Antillar Maximus Jul 27 '13 at 16:38