Time to digital converter
AssigneeSTMicroelectronics (Research & Development) Limited
InventorsNeale Dutton, John Kevin Moore
Life of this patent
Estimating the term…
Abstract
In an embodiment, a method includes: receiving a first plurality of digital codes from a time-to-digital converter (TDC); TDC; generating a coarse histogram from the first plurality of digital codes; detecting a peak coarse bin from the plurality of coarse bins; after receiving the first plurality of digital codes, receiving a second plurality of digital codes from the TDC; and generating a fine histogram from the second plurality of digital codes based on the detected peak coarse bin, where a fine histogram depth range is narrower than a coarse histogram depth range, where a lowest fine histogram depth is lower or equal to a lowest coarse peak depth, and where a highest fine histogram depth is higher or equal to a highest coarse peak depth.
Claims22
A method comprising:
- receiving a first plurality of digital codes from a time-to-digital converter (TDC), wherein the TDC has an input coupled to a first single photon avalanche diode (SPAD);
- generating a coarse histogram from the first plurality of digital codes, the coarse histogram comprising a plurality of coarse bins that collectively correspond to a coarse histogram depth range from a lowest coarse histogram depth to a highest coarse histogram depth, wherein generating the coarse histogram comprises:
- generating a first coarse histogram comprising a first plurality of bins from a first portion of the first plurality of digital codes based on a first clock,
- generating a second coarse histogram comprising a second plurality of bins from a second portion of the first plurality of digital codes based on an offset first clock, wherein a length of a first depth range of the first coarse histogram is equal to a length of a second depth range of the second coarse histogram, the first depth range overlaps the second depth range, and the first coarse histogram has a same number of bins as the second coarse histogram, and
- combining the first and second coarse histograms to generate the coarse histogram, wherein the generated coarse histogram has a higher depth resolution than each of the first and second coarse histograms;
- detecting a peak coarse bin from the plurality of coarse bins, wherein the peak coarse bin corresponds to a peak coarse bin depth range from a lowest coarse peak depth to a highest coarse peak depth;
- after receiving the first plurality of digital codes, receiving a second plurality of digital codes from the TDC;
- generating a fine histogram from the second plurality of digital codes based on the detected peak coarse bin, the fine histogram comprising a plurality of fine bins that collectively correspond to a fine histogram depth range from a lowest fine histogram depth to a highest fine histogram depth, wherein the fine histogram depth range is narrower than the coarse histogram depth range, and wherein the lowest fine histogram depth is lower or equal to than the lowest coarse peak depth, and wherein or the highest fine histogram depth is higher or equal to than the highest coarse peak depth;
- during a first time period, reading out the fine histogram associated with signals received from a first plurality of SPADs, and, simultaneously with the reading out the fine histogram associated with signals received from the first plurality of SPADs, performing the steps of receiving the first plurality of digital codes, generating the coarse histogram, detecting the peak coarse bin, receiving the second plurality of digital codes, and generating the fine histogram based on the detected peak coarse bin for signals received from a second plurality of SPADs different from the first plurality of SPADs;
- and
- during a second time period different from the first time period, reading out the fine histogram associated with signals received from the second plurality of SPADs, and, simultaneously with the reading out the fine histogram associated with signals received from the second plurality of SPADs, performing the steps of receiving the first plurality of digital codes, generating the coarse histogram, receiving the second plurality of digital codes detecting the peak coarse bin, and generating the fine histogram for signals received from the first plurality of SPADs.
A circuit comprising:
- a time-to-digital converter (TDC) configured to be coupled to a first group of photodetectors and to a second group of photodetectors different from the first group of photodetectors;
- a histogram generation circuit;
- and
- a control circuit, wherein the histogram generation circuit is configured to cooperate with the control circuit to:
- receive a first plurality of digital codes from the TDC,
- generate a coarse histogram from the first plurality of digital codes, the coarse histogram comprising a plurality of coarse bins that collectively correspond to a coarse histogram depth range from a lowest coarse histogram depth to a highest coarse histogram depth, wherein the control circuit is configured to generate the coarse histogram by:
- generating a first coarse histogram from a first portion of the first plurality of digital codes based on a first clock,
- generating a second coarse histogram from a second portion of the first plurality of digital codes based on an offset first clock, wherein a length of a first depth range of the first coarse histogram is equal to a length of a second depth range of the second coarse histogram, the first depth range overlaps the second depth range, and the first coarse histogram has a same number of bins as the second coarse histogram, and
- combining the first and second coarse histograms to generate the coarse histogram, wherein the generated coarse histogram has a higher depth resolution than each of the first and second coarse histograms,
- detect a peak coarse bin from the plurality of coarse bins, wherein the peak coarse bin corresponds to a peak coarse bin depth range from a lowest coarse peak depth to a highest coarse peak depth,
- after receiving the first plurality of digital codes, receive a second plurality of digital codes from the TDC,
- generate a fine histogram from the second plurality of digital codes based on the detected peak coarse bin, the fine histogram comprising a plurality of fine bins that collectively correspond to a fine histogram depth range from a lowest fine histogram depth to a highest fine histogram depth, wherein the fine histogram depth range is narrower than the coarse histogram depth range, and wherein the lowest fine histogram depth is lower or equal to than the lowest coarse peak depth, and wherein or the highest fine histogram depth is higher or equal to than the highest coarse peak depth,
- during a first time period, reading out the fine histogram associated with signals received from the first group of photodetectors, and, simultaneously with the reading out the fine histogram associated with signals received from the first group of photodetectors, performing the steps of receiving the first plurality of digital codes, generating the coarse histogram, detecting the peak coarse bin, receiving the second plurality of digital codes, and generating the fine histogram based on the detected peak coarse bin for signals received from the second group of photodetectors,
- during a second time period different from the first time period, reading out the fine histogram associated with signals received from the second group of photodetectors, and, simultaneously with the reading out the fine histogram associated with signals received from the second group of photodetectors, performing the steps of receiving the first plurality of digital codes, generating the coarse histogram, receiving the second plurality of digital codes detecting the peak coarse bin, and generating the fine histogram for signals received from the first group of photodetectors.
A system comprising:
- a pixel array arranged in N rows and M columns, wherein N is a positive integer greater than 1, and wherein M is a positive integer greater than 1, and wherein each pixel comprises a single photon avalanche diode (SPAD);
- a plurality of time-to-digital converters (TDCs), wherein each of the plurality of TDCs is associated with a respective pixel of the pixel array;
- a plurality of histogram generation circuits, wherein each of the plurality of histogram generation circuits is associated with a respective TDC of the plurality of TDCs and its respective pixel of the pixel array;
- and
- a column control circuit comprising M control circuits, each of the M control circuits configured to cooperate with histogram generation circuits associated with a corresponding column of pixels to:
- receive a first plurality of digital codes from the respective TDC,
- generate a coarse histogram from the first plurality of digital codes, the coarse histogram comprising a plurality of coarse bins that collectively correspond to a coarse histogram depth range from a lowest coarse histogram depth to a highest coarse histogram depth, wherein the column control circuit is configured to generate the coarse histogram by:
- generating a first coarse histogram from a first portion of the first plurality of digital codes based on a first clock,
- generating a second coarse histogram from a second portion of the first plurality of digital codes based on an offset first clock, wherein a length of a first depth range of the first coarse histogram is equal to a length of a second depth range of the second coarse histogram, the first depth range overlaps the second depth range, and the first coarse histogram has a same number of bins as the second coarse histogram, and
- combining the first and second coarse histograms to generate the coarse histogram, wherein the generated coarse histogram has a higher depth resolution than each of the first and second coarse histograms,
- detect a peak coarse bin from the plurality of coarse bins, wherein the peak coarse bin corresponds to a peak coarse bin depth range from a lowest coarse peak depth to a highest coarse peak depth,
- after receiving the first plurality of digital codes, receive a second plurality of digital codes from the respective TDC,
- generate a fine histogram from the second plurality of digital codes based on the detected peak coarse bin, the fine histogram comprising a plurality of fine bins that collectively correspond to a fine histogram depth range from a lowest fine histogram depth to a highest fine histogram depth, wherein the fine histogram depth range is narrower than the coarse histogram depth range, and wherein the lowest fine histogram depth is lower or equal to than the lowest coarse peak depth, and wherein or the highest fine histogram depth is higher or equal to the highest coarse peak depth,
- during a first time period, reading out the fine histogram associated with a first group of respective pixels of the pixel array, and, simultaneously with the reading out the fine histogram associated with the first group of respective pixels of the pixel array, performing the steps of receiving the first plurality of digital codes, generating the coarse histogram, detecting the peak coarse bin, receiving the second plurality of digital codes, and generating the fine histogram associated with a second group of respective pixels of the pixel array different from the first group of respective pixels of the pixel array based on the detected peak coarse bin, and
- during a second time period different from the first time period, reading out the fine histogram associated with the second group of respective pixels of the pixel array, and, simultaneously with the reading out the fine histogram associated with the second group of respective pixels of the pixel array, performing the steps of receiving the first plurality of digital codes, generating the coarse histogram, receiving the second plurality of digital codes detecting the peak coarse bin, and generating the fine histogram associated with the first group of respective pixels of the pixel array.
Dependencies are inferred from the claim text.