Time of flight statistics device and laser ranging device
By accumulating and superimposing the time-of-flight data in the laser rangefinder, the problem of memory capacity limitation was solved, enabling a longer detection distance.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SUTENG INNOVATION TECHNOLOGY CO LTD
- Filing Date
- 2023-02-28
- Publication Date
- 2026-05-05
AI Technical Summary
Existing laser rangefinders have limited memory capacity, which limits the amount of time-of-flight data they can store and thus restricts their detection range.
By accumulating the S initial flight time data sets, an accumulated flight time data set is generated and stored in the memory. Combined with superposition processing, the storage capacity of the memory is increased, the integration period is extended, and the detection range is improved.
The detection range of the laser rangefinder has been increased to meet the needs of long-distance detection.
Smart Images

Figure CN120677472B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of laser ranging technology, and in particular to a time-of-flight statistics device and a laser ranging device. Background Technology
[0002] Currently, laser rangefinders, utilizing time-of-flight (TOF) technology to measure the distance to target objects, have important applications in various 3D ranging and 3D imaging fields, such as autonomous driving, facial recognition, 3D games, and virtual reality. Specifically, laser rangefinders use a light source to emit continuous or pulsed beams of light and use photoelectric sensors to receive the echo beams returned after being reflected by the target object. By statistically analyzing the time of flight between the emitted and echo beams, the distance to the target, i.e., depth information, is obtained.
[0003] During the statistical analysis of flight time, the limited memory capacity of the storage device restricts the amount of flight time data that can be stored, thus limiting the detection range of laser rangefinders. Increasing the detection range of laser rangefinders has become a pressing technical challenge for those skilled in the art. Summary of the Invention
[0004] This application provides a time-of-flight statistics device and a laser ranging device, which can increase the detection range of the laser ranging device.
[0005] In a first aspect, embodiments of this application provide a flight time statistics device, including: a statistics unit and a memory;
[0006] The statistics department is used to obtain S sets of first initial flight time data within S first integration periods, and to accumulate each set of first initial flight time data by grouping N adjacent sets of first initial flight time data to obtain S sets of accumulated flight time data corresponding one-to-one with the S sets of first initial flight time data, where S is a positive integer, S≥2, and N is a positive integer, N≥2; each set of first initial flight time data includes multiple sets of first initial flight time data corresponding one-to-one with multiple flight times, and each set of accumulated flight time data includes at least one accumulated photon count value corresponding one-to-one with at least one accumulated flight time.
[0007] The statistics department also uses it to overlay the S cumulative flight time data sets to obtain an overlay flight time data set, and stores the overlay flight time data set in memory by storing at least one overlay photon count value in one storage unit. The overlay flight time data set includes an overlay photon count value that corresponds one-to-one with each cumulative flight time.
[0008] Secondly, embodiments of this application also provide a flight time statistics device, including a statistics unit and a memory;
[0009] When the flight time statistics device is in the first detection mode, the statistics unit is used to acquire S sets of first initial flight time data within S first integration periods, and to accumulate each set of first initial flight time data by grouping N adjacent sets of first initial flight time data to obtain S sets of accumulated flight time data corresponding one-to-one with the S sets of first initial flight time data, where S is a positive integer, S≥2, and N is a positive integer, N≥2; each set of first initial flight time data includes multiple sets of first initial flight time data corresponding one-to-one with multiple flight times, and each set of accumulated flight time data includes at least one accumulated photon count value corresponding one-to-one with at least one accumulated flight time; the statistics unit is also used to superimpose the S sets of accumulated flight time data to obtain a first superimposed flight time data set, and to store the first superimposed flight time data set in the memory by storing at least one first superimposed photon count value in one storage unit, and the first superimposed flight time data set includes a first superimposed photon count value corresponding one-to-one with each accumulated flight time;
[0010] When the flight time statistics device is in the second detection mode, the statistics unit is used to acquire S sets of second initial flight time data within S second integration periods, and to superimpose the S sets of second initial flight time data to obtain a second superimposed flight time data set. The unit also stores the second superimposed flight time data set in a memory by storing at least one second superimposed photon count value from the second superimposed flight time data set in a memory unit, with each second superimposed photon count value stored in a memory unit. The second superimposed flight time data set includes the second superimposed photon count value corresponding to each flight time, and each second initial flight time data set includes second initial flight time data corresponding one-to-one with multiple flight times.
[0011] Thirdly, embodiments of this application provide a laser ranging device, including a time-of-flight statistics device as described in any one of the first and second aspects above.
[0012] Fourthly, embodiments of this application provide a flight time statistics method, the method comprising:
[0013] Obtain S sets of initial flight time data within S first integration periods, and accumulate each set of initial flight time data by grouping N adjacent initial flight time data to obtain S sets of accumulated flight time data corresponding one-to-one with the S sets of initial flight time data, where S is a positive integer, S≥2, and N is a positive integer, N≥2; each set of initial flight time data includes multiple sets of initial flight time data corresponding one-to-one with multiple flight times, and each set of accumulated flight time data includes at least one accumulated photon count value corresponding one-to-one with at least one accumulated flight time.
[0014] The S accumulated flight time data sets are superimposed to obtain a superimposed flight time data set. At least one superimposed photon count value in the superimposed flight time data set is stored in a memory in a way that the superimposed photon count value is stored in a memory unit. The superimposed flight time data set includes superimposed photon count values that correspond one-to-one with each accumulated flight time.
[0015] Fifthly, embodiments of this application also provide a flight time statistics method, the method comprising:
[0016] In the first detection mode, S sets of first initial flight time data within S first integration periods are acquired. Each first initial flight time data set is then accumulated by grouping N adjacent first initial flight time data sets to obtain S sets of accumulated flight time data corresponding one-to-one with the S sets of first initial flight time data, where S is a positive integer (S≥2) and N is a positive integer (N≥2). Each first initial flight time data set includes multiple first initial flight time data corresponding one-to-one with multiple flight times, and each accumulated flight time data set includes at least one accumulated photon count value corresponding one-to-one with at least one accumulated flight time. The S sets of accumulated flight time data are then superimposed to obtain a superimposed flight time data set. At least one superimposed photon count value from the superimposed flight time data set is stored in a memory unit, and the superimposed flight time data set includes a superimposed photon count value corresponding one-to-one with each accumulated flight time.
[0017] In the second detection mode, S sets of second initial flight time data within S second integration periods are acquired, and the S sets of second initial flight time data are superimposed to obtain a second superimposed flight time data set. The second superimposed flight time data set is stored in the memory by storing at least one second superimposed photon count value in each storage unit. The second superimposed flight time data set includes the second superimposed photon count value corresponding to each flight time, and each second initial flight time data set includes second initial flight time data corresponding to multiple flight times one by one.
[0018] Sixthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method as described in any of the fourth and fifth aspects above.
[0019] In a seventh aspect, embodiments of this application provide a computer program product that, when run on a flight time statistics device, causes the flight time statistics device to perform the methods of any one of the fourth and fifth aspects described above.
[0020] The beneficial effects of the embodiments in this application compared with the prior art are:
[0021] The flight time statistics device provided in this application can acquire S sets of first initial flight time data corresponding to S first integration cycles. The first initial flight time data in each set is sampled once for every N adjacent flight time data to obtain an accumulated photon count value for the N adjacent first initial flight time data. This accumulated photon count value is stored in a storage unit. If the storage unit includes X*M storage units, the statistics device provided in this application can store X*M (i.e., X*K*N) accumulated photon count values. Each first integration cycle can include X*N clock cycles. Compared to existing detection methods that store M initial flight time data for each clock cycle in M storage units (i.e., one integration cycle includes only X clock cycles), the flight time statistics device provided in this application allows the storage unit to store more initial flight time data corresponding to more clock cycles, thereby increasing the detection range of the laser ranging device and meeting the laser ranging device's requirement for long detection distances. Attached Figure Description
[0022] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0023] Figure 1 This is a schematic diagram of the structure of a laser ranging device provided in one embodiment of this application.
[0024] Figure 2 This is a schematic diagram of the structure of a flight time statistics device provided in an embodiment of this application.
[0025] Figure 3 This is a schematic diagram illustrating the principle of a flight time statistics device for data statistics according to an embodiment of this application.
[0026] Figure 4 This is a schematic diagram of a statistical module provided in an embodiment of this application.
[0027] Figure 5 This is a schematic diagram of a control signal provided in an embodiment of this application.
[0028] Figure 6 This is a schematic diagram of the specific structure of a statistical module provided in an embodiment of this application.
[0029] Figure 7 This is a schematic diagram illustrating the storage of flight time data during a first integration period, provided in an embodiment of this application.
[0030] Figure 8 This is a schematic diagram of the specific structure of a flight time statistics device provided in one embodiment of this application.
[0031] Figure 9 This is a timing diagram of the first integration cycle provided in an embodiment of this application.
[0032] Figure 10 This is a schematic diagram of another flight time statistics device provided in an embodiment of this application.
[0033] Figure 11 This is a schematic diagram of another statistical module provided in an embodiment of this application.
[0034] Figure 12 This is a schematic diagram of the specific structure of another statistical module provided in an embodiment of this application.
[0035] Figure 13 This is a schematic diagram illustrating the storage of flight time data within a first integration period, provided in an embodiment of this application.
[0036] Figure 14 This is a schematic diagram of the specific structure of another flight time statistics device provided in an embodiment of this application.
[0037] Figure 15 This is another timing diagram of the first integration cycle provided in an embodiment of this application. Detailed Implementation
[0038] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0039] Example 1:
[0040] See Figure 1 The diagram shown is a structural schematic of a laser ranging device provided in an embodiment of this application. In this embodiment, the laser ranging device includes a light-emitting unit 100, a pixel unit 200, a time-to-digital converter 300 (TDC), and a time-of-flight statistics device 400.
[0041] Specifically, the light-emitting unit 100 emits laser pulse signals towards a target object within the detection area. The pixel unit 200 receives the echo laser signal reflected by the target object within the detection area and outputs an echo electrical signal. The pixel unit 200 may include one or more single-photon avalanche diodes (SPADs). The time-to-digital converter 300 generates at least one initial time-of-flight data based on the echo electrical signal. Each initial time-of-flight data represents a photon event corresponding to a flight moment, and includes a flight moment and the corresponding photon count value.
[0042] In one possible implementation, refer to Figure 2The schematic diagram of the flight time statistics device shown illustrates that the flight time statistics device 400 includes a statistics unit 410, a memory 420, and a control module 430. The memory 420 includes multiple storage units. The statistics unit 410 acquires S first initial flight time data sets and accumulates each first initial flight time data set by grouping N adjacent initial flight time data sets together, generating S accumulated flight time data sets corresponding one-to-one with the S first initial flight time data sets. The statistics unit 410 also performs superposition processing on the S accumulated flight time data sets to generate superimposed flight time data sets. These superimposed flight time data sets are stored in the memory 420, with each superimposed flight time data stored in one storage unit. The superimposed flight time data set includes multiple superimposed flight time data sets, where S is a positive integer and S≥2. The laser ranging device can obtain histogram data from the superimposed flight time data sets stored in the memory 420, determine the flight time from the histogram data, and then obtain the distance to the target object based on the flight time, thereby achieving the detection function.
[0043] For example, refer to Figure 3 The diagram illustrates the principle of data statistics using the flight time statistics device. Each initial flight time data set includes multiple initial flight time data points, representing photon events within a first integration period. Each accumulated flight time data set includes at least one accumulated flight time data point. Each accumulated flight time data point includes at least one accumulated flight time point obtained by accumulating N initial flight time data points corresponding to N adjacent flight times, and at least one accumulated photon count value corresponding to each accumulated flight time point. The superimposed flight time data set includes superimposed flight time data obtained by superimposing the accumulated flight time data points from S accumulated flight time data sets. Each superimposed flight time data point includes a superimposed photon count value corresponding to each accumulated flight time point. For example, assuming S = 2 and N = 2, Figure 3 The diagram shows two sets of initial flight time data corresponding to two first integration periods. The initial flight time data are accumulated in groups of two adjacent pairs to generate two sets of accumulated flight time data. Each set of accumulated flight time data includes the accumulated flight time after accumulating the initial flight time data corresponding to two adjacent flight times, as well as the accumulated photon count value corresponding to each accumulated flight time. The accumulated photon count values corresponding to the same accumulated flight time in the two sets of accumulated flight time data are superimposed to obtain a superimposed flight time data set.
[0044] By way of example and not limitation, the laser ranging device in the embodiments of this application can be a solid-state lidar, which can be used for navigation and obstacle avoidance, obstacle recognition, ranging, speed measurement, autonomous driving and other functions of products such as automobiles, robots, logistics vehicles, and inspection vehicles.
[0045] It is understandable that, since the target object's speed is much less than the speed of light, the distance of the target object within a single time frame can be considered constant. The light-emitting unit 100 in the laser ranging device can emit S pulse signals within a single time frame. Correspondingly, the pixel unit 200 receives S echo laser signals after the S pulse signals are reflected by the target object within S first integration periods. At this time, the laser ranging device obtains a histogram based on the superimposed time-of-flight data set stored in the memory 420, and confirms the flight time according to the flight time corresponding to the maximum photon count value in the histogram.
[0046] In this embodiment, within a single time frame, each of the S first integration cycles includes the same number of clock cycles, and each first integration cycle includes multiple clock cycles. Each clock cycle includes M flight moments, where M = K * N, M and K are both positive integers, M ≥ 2, and K ≥ 1. The M initial flight time data corresponding to each clock cycle can be divided into K first initial flight time data sets according to the first partitioning method, and each initial flight time data set includes N initial flight time data.
[0047] like Figure 2 As shown, the statistics unit 410 includes K statistics modules 411 connected in parallel. Each of the K statistics modules corresponds one-to-one with a set of K first initial flight time data in each clock cycle. The modules are used to acquire the K first initial flight time data sets in each clock cycle in the order of clock cycles, and to accumulate the acquired initial flight time data sets to generate an accumulated flight time data set. When the K statistics modules generate S accumulated flight time data sets corresponding to the first to the Sth first integration cycles, the statistics unit 410 is also used to superimpose the S accumulated flight time data sets corresponding to the first to the Sth first integration cycles to generate a superimposed flight time data set, and to store the superimposed flight time data set in the memory 420.
[0048] The first partitioning method involves dividing the M initial flight time data corresponding to each clock cycle into K sets, grouping them into sets of K. For example, assuming the M initial flight time data included in each clock cycle are represented as P0, P1 to P[M-1], then the k-th initial flight time data set within each clock cycle is {P[k*NN] to P[k*N-1]}, where k is a positive integer and 1≤k≤K, and the k-th initial flight time data set corresponds to the k-th statistical module among the K statistical modules of the statistics unit 410. The k-th statistics module receives the k-th initial flight time data set {P[k*NN] to P[k*N-1]} within any clock cycle, and accumulates the N initial flight time data included in {P[k*NN] to P[k*N-1]} to generate the k-th accumulated photon count value of the clock cycle.
[0049] For example, the first statistical module in the statistical unit 410 is used to acquire the first initial flight time data set within a clock cycle, namely the first set of initial flight time data P0 to P[N-1], and to accumulate P0 to P[N-1] to generate the first accumulated photon count value of the clock cycle; the Kth statistical module in the statistical unit 410 is used to acquire the Kth set of initial flight time data P[K*NN] to P[M-1] within a clock cycle, and to accumulate P[K*NN] to P[M-1] to generate the Kth accumulated photon count value of the clock cycle. All the accumulated photon count values corresponding to the multiple clock cycles included in each first integration cycle constitute the accumulated flight time data set corresponding to the first integration cycle.
[0050] In this embodiment, the memory 420 includes X*M storage units. These X*M storage units are divided into storage modules, with each module containing M storage units. Therefore, the memory 420 includes X storage modules, and each module contains M storage units, where X is a positive integer and X≥1. The X*M storage units in the memory 420 can store a maximum of X*M accumulated photon count values (i.e., X*N*K accumulated photon count values). Correspondingly, based on the time-of-flight statistics device provided in Embodiment 1 of this application, the first integration period includes a maximum of (X*M) / K = (X*N*K) / K = X*N clock cycles. The detection distance L1 = c*(X*N*t) that the laser ranging device can achieve within the first integration period is given by the following formula: Compared to another detection mode, which directly samples M flight time data points for each clock cycle and stores them in M storage units, resulting in the X*M storage units of memory 420 only storing flight time data corresponding to X clock cycles, the integration period of the laser ranging device in this detection mode only includes X clock cycles. Consequently, the detection distance L2 = c*(X*t) achievable by the laser ranging device in this detection mode is relatively small. The flight time statistics device provided in this embodiment, by accumulating N adjacent initial flight time data points, can extend the duration of the first integration period of the laser ranging device compared to the other detection mode, while keeping the number of storage units in memory 420 unchanged. This increases the detection distance of the laser ranging device, meeting its requirements for long-range detection.
[0051] In one possible implementation, the statistics unit 410 can perform superposition processing on the accumulated flight time data sets corresponding to the first to the Sth first integration cycles using a continuous superposition method. For example, when the K statistics modules generate the second accumulated flight time set corresponding to the second first integration cycle, the statistics unit 410 performs a first superposition processing on the second accumulated flight time set corresponding to the second first integration cycle and the first accumulated flight time set corresponding to the first first integration cycle to obtain a first superimposed flight time data set; when the K statistics modules generate the third accumulated flight time set corresponding to the third first integration cycle, the statistics unit 410 performs a second superposition processing on the third accumulated flight time set corresponding to the third first integration cycle and the first superimposed flight time data set to obtain a second superimposed flight time data set, and so on, performing the above operations multiple times until the K statistics modules generate the Sth accumulated flight time set corresponding to the Sth first integration cycle. At this point, the statistics unit 410 performs a superposition processing on the Sth accumulated flight time set corresponding to the Sth first integration cycle and the S-1th superimposed flight time data set obtained from the (S-1)th superposition processing to obtain a superimposed flight time data set.
[0052] Furthermore, the statistics department 410 can use K statistics modules 411 to perform continuous superposition processing on the accumulated flight time data sets corresponding to the first to Sth first integration periods to generate a superimposed flight time data set. Specifically, when the K statistics modules 411 generate the accumulated flight time data set corresponding to the first first integration period, the K statistics modules 411 write the accumulated flight time data set corresponding to the first first integration period into the memory 420; when the K statistics modules 411 generate the accumulated flight time data set corresponding to the second first integration period, the K statistics modules 411 read the accumulated flight time data set corresponding to the first first integration period from the memory 420, and perform a first superposition processing with the accumulated flight time data set corresponding to the second first integration period to obtain the first superimposed flight time data set, and write the first superimposed flight time data set into the memory 420; when the K statistics modules 411 generate the accumulated flight time data set corresponding to the third first integration period, the K statistics modules 411... Module 411 reads the first superimposed flight time data set from memory 420, and performs a second superimposition process with the accumulated flight time data set corresponding to the third first integration cycle to obtain the second superimposed flight time data set. The second superimposed flight time data set is then written into memory 420. This process is repeated multiple times until the K statistical modules generate the Sth accumulated flight time data set corresponding to the Sth first integration cycle. At this point, the K statistical modules 411 read the (S-2)th superimposed flight time data set from memory 420, and perform the (S-1)th superimposed flight time data set with the accumulated flight time data set corresponding to the Sth first integration cycle to obtain the (S-1)th superimposed flight time data set. The (S-1)th superimposed flight time data set is then written into memory 420.
[0053] In one possible implementation, assuming the first integration period comprises X*N clock cycles, these X*N clock cycles are divided into X statistical periods, each consisting of N clock cycles. These X statistical periods correspond one-to-one with X storage modules in the memory. The K statistical modules in the statistics unit 410 all have identical structures, as shown in the reference... Figure 4 The schematic diagram of the statistical modules shown in the figure includes an input accumulator and N superimposed channels connected in parallel. The input accumulator and the N superimposed channels connected in parallel are connected in series.
[0054] Specifically, the input accumulator includes N input terminals and one output terminal. Each superposition channel includes a first superposition input terminal, a superposition output terminal, and a superposition feedback terminal. The N input terminals of the input accumulator of each statistical module are used to acquire the initial flight time data set corresponding to that statistical module in each clock cycle of the S first integration cycles. Each of the N input terminals corresponds one-to-one with the N first initial flight time data points in the initial flight time data set. The output terminal of the input accumulator of each statistical module is connected to the N first superposition input terminals of the N superposition channels.
[0055] It should be noted that the K input accumulators included in the K statistical modules are used to acquire K initial flight time data sets corresponding one-to-one within each clock cycle of each first integration cycle in a clock cycle order, and to accumulate each initial flight time data set to generate an accumulated flight time data set corresponding to each first integration cycle. The N first superposition input terminals of the N superposition channels included in each of the K statistical modules are connected to the output terminals of the corresponding input accumulators in their respective statistical modules, and are used to acquire the accumulated photon count values accumulated by the corresponding input accumulators within N clock cycles of each statistical cycle in a preset order. The N superposition output terminals of the N superposition channels included in each of the K statistical modules are connected to the write terminals of the memory, and are used to write data into the memory. The N superposition feedback terminals of the N superposition channels included in each of the K statistical modules are connected to the read terminals of the memory, and are used to read data from the memory.
[0056] Furthermore, such as Figure 2 and Figure 4 As shown, the flight time statistics device 400 also includes a control module 430, which outputs a first control signal. The K statistics modules in the statistics unit 410 are all connected to the control module 430. Each of the K statistics modules includes N superposition channels, which, according to the first control signal and in a preset order, acquire N*K accumulated photon count values obtained by the input accumulator in the corresponding statistics module within N clock cycles of each statistics period, and store the N*K accumulated photon count values in the storage module corresponding to the statistics module.
[0057] In one example, reference Figure 5The diagram shows the control signal output by the control module within a first integration cycle. The first control signal is a clock cycle control signal. When the number of clock cycles within a statistical cycle is greater than 2, multiple control signals can be combined to form various first control signals, so that each first control signal corresponds to one clock cycle. The first superposition channel of each of the K statistical modules can obtain the accumulated photon count value obtained by the corresponding input accumulator within the clock cycle corresponding to the first control signal in each statistical cycle, based on the control signal output by the first control module.
[0058] For example, if a statistical period includes 4 clock cycles, then the first control signal 00 can represent the first clock cycle within the statistical period, control signal 01 can represent the second clock cycle within the statistical period, the first control signal 10 can represent the third clock cycle within the statistical period, and the first control signal 11 can represent the fourth clock cycle within the statistical period. Then, when the control module outputs the first control signal 00, the first superposition channel of each of the K statistical modules acquires the accumulated photon count value accumulated by the corresponding input accumulator within the first clock cycle of each statistical period; each of the K statistical modules... When the control module outputs the first control signal 01, the second superposition channel of the block acquires the accumulated photon count value accumulated by the corresponding input accumulator in the second clock cycle of each statistical period; when the control module outputs the first control signal 01, the third superposition channel of each of the K statistical modules acquires the accumulated photon count value accumulated by the corresponding input accumulator in the third clock cycle of each statistical period; when the control module outputs the first control signal 11, the fourth superposition channel of each of the K statistical modules acquires the accumulated photon count value accumulated by the corresponding input accumulator in the fourth clock cycle of each statistical period.
[0059] The following is for reference. Figure 4 and Figure 5 The scheme describes a method for acquiring accumulated flight time data for N clock cycles sequentially from N overlay channels in a preset order and storing the overlay flight time data set.
[0060] In one alternative implementation, the storage address is a x-1 The storage module includes M storage units to store N*K superimposed flight time data obtained by superimposing S first integration cycles in the xth statistical cycle. The K*N superimposed output terminals of the K statistical modules point sequentially to the write terminals of the X storage modules in each first integration cycle, according to the order of the statistical cycles. That is, the K*N superimposed output terminals of the K statistical modules point to storage address a in the xth statistical cycle of each first integration cycle. x-1The write end of the storage module. The read ends of the X storage modules included in memory 420 sequentially point to the K*N superimposed feedback ends included in the K statistical modules according to the statistical cycle order during each first integration cycle, i.e., the storage address is a. x-1 The read end of the storage module points to the K*N superimposed feedback ends included in the K statistical modules in the xth statistical cycle of each first integration cycle.
[0061] Specifically, when the input accumulator of each statistical module generates the accumulated photon count value for the nth clock cycle, the first superposition input terminal of the nth superposition channel obtains the accumulated photon count value corresponding to the nth clock cycle and sends it to the superposition output terminal of the nth superposition channel. For example, when the input accumulator of the kth statistical module obtains the kth first initial time-of-flight data set {P[k*NN] to P[k*N-1]} for the nth clock cycle and generates the kth accumulated photon count value corresponding to the nth clock cycle, the nth superposition channel in the kth statistical module allows the input of the kth accumulated photon count value corresponding to the nth clock cycle, and the other superposition channels among the N superposition channels of the kth statistical module, except for the nth superposition channel, prohibit the input of the kth accumulated photon count value corresponding to the nth clock cycle. That is to say, the N superposition channels of each statistical module correspond one-to-one with the N clock cycles of each statistical cycle. The K*N superimposed output terminals of the K statistical modules point sequentially to the write terminals of the X memory modules in the memory during each first integration cycle, according to the order of the statistical cycles. That is, each statistical cycle corresponds to one memory module, and the K*N superimposed output terminals of the K statistical modules point to memory address a in the x-th statistical cycle of each first integration cycle. x-1 The write end of the storage module. The read ends of the X statistical modules included in the memory 420 sequentially point to the K*N superimposed feedback ends included in the K statistical modules according to the order of the statistical cycles in each first integration cycle, i.e., the storage address is a. x-1 The read end of the storage module points to the K*N superimposed feedback ends included in the K statistical modules in the xth statistical cycle of each first integration cycle.
[0062] Specifically, assume that each statistical module includes an input accumulator, a first superposition channel, and two to Nth superposition channels. Each statistical module's input accumulator includes N input terminals and one output terminal. The N input terminals of the input accumulator are used to acquire a set of initial flight time data corresponding to the statistical module in each clock cycle, and to accumulate this set of initial flight time data to generate an accumulated photon count value. The input terminals of the first superposition channel, the second superposition channel, and the Nth superposition channel all receive the accumulated photon count value output by the output accumulator. The output terminals of the first superposition channel, the second superposition channel, and the Nth superposition channel point sequentially to X storage modules in the memory according to the order of X statistical cycles in the first integration cycle. Furthermore, the output terminals of the first superposition channel, the second superposition channel, and the Nth superposition channel point to the N storage units of the current storage module in each statistical cycle, and to the N storage units of the next storage module in the next statistical cycle. Under the action of the first control signal, the superimposed channel is turned on sequentially in the order of N clock cycles in each statistical cycle, so as to store the N accumulated photon count values generated by the input accumulator in each statistical cycle in the N storage units of the current storage module; the first superimposed channel, the second superimposed channel to the Nth superimposed channel are also used to repeatedly perform the sequential turn-on operation X times in the order of X statistical cycles in the first integration cycle, so as to store the X*N accumulated photon count values generated by the input accumulator in the X statistical cycles included in the first integration cycle in the N storage units of the X storage modules respectively.
[0063] It should be noted that the structure of each of the K statistical modules is identical. The following explanation uses the k-th statistical module as an example to illustrate the structure and function of each statistical module.
[0064] Specifically, the input accumulator included in the k-th statistics module is used to acquire the k-th group of first initial flight time data {P[k*NN] to P[k*N-1]} in each clock cycle, and to accumulate the N first initial flight time data {P[k*NN] to P[k*N-1]} in the k-th group of first initial flight time data to generate the k-th accumulated photon count value in each clock cycle. The first superposition channel included in the k-th statistical module is turned on in the first clock cycle of each statistical period to store the k-th accumulated photon count value generated by the input accumulator in the first clock cycle of the statistical period in the k-th storage unit of the current storage module corresponding to the statistical period; the n-th superposition channel included in the k-th statistical module is turned on in the n-th clock cycle of each statistical period to store the k-th accumulated photon count value generated by the input accumulator in the n-th clock cycle of the statistical period in the n-th storage unit of the current storage module; the N-th superposition channel included in the k-th statistical module is turned on in the N-th clock cycle of each statistical period to store the k-th accumulated photon count value generated by the input accumulator in the N-th clock cycle of the statistical period in the N-th storage unit of the current storage module, where n is a positive integer and 1≤n≤N.
[0065] In this embodiment, the flight time statistics device sequentially activates the first superimposed channel, the second superimposed channel, and so on, up to the Nth activated channel, according to the N clock cycles of the statistical period in each statistics module. This enables the cumulative sampling and storage of the first initial flight time data corresponding to each statistical period, ensuring that the statistics of the first initial flight time data in each clock cycle do not interfere with each other. Simultaneously, by repeatedly activating the first superimposed channel, the second superimposed channel, and so on, up to the Nth superimposed channel X times, the cumulative sampling and storage of the first initial flight time data corresponding to each first integration period is achieved. This eliminates the need to increase the number of superimposed channels, resulting in a simple structure.
[0066] Furthermore, after the k-th statistical module completes the cumulative sampling of the k-th group of first initial flight time data {P[k*NN] to P[k*N-1]} for the N clock cycles included in the current statistical period, and stores the obtained k-th accumulated photon count value corresponding to the N clock cycles in the N storage units of the storage module currently pointed to by the current statistical period, the k-th statistical module continues to complete the sampling of the k-th group of first initial flight time data {P[k*NN] to P[k*N-1]} for the N clock cycles included in the next statistical period. The system performs cumulative sampling of the first initial flight time data {P[k*NN] to P[k*N-1]} for N clock cycles, and stores the kth cumulative photon count value corresponding to the N clock cycles in the next memory module. This process continues until the first integration cycle includes X statistical cycles including X*N clock cycles, and the system performs cumulative sampling of the first initial flight time data {P[k*NN] to P[k*N-1]} for X*N clock cycles, and stores the X*Nth cumulative photon count values corresponding to the X*N clock cycles in the X*N memory modules.
[0067] Understandably, after the K statistical modules complete the cumulative sampling of K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ..., {P[K*NN] to P[K*N-1]} for the N clock cycles included in the current statistical period, and store the resulting N*K accumulated photon count values for the N clock cycles in the N*K storage units (i.e., M storage units) of the currently pointed-to storage module, the K statistical modules continue to complete the K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ..., {P[K*NN] to P[K*N-1]} for the N clock cycles included in the next statistical period, the K statistical modules continue to complete the sampling of K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ..., {P[K*NN] to P[K*N-1]} for the N clock cycles included in the next statistical period. The system performs cumulative sampling from [K*NN] to P[K*N-1], and stores the N*K accumulated photon counts over N clock cycles in the N*K storage units (i.e., M storage units) of the next-pointing storage module. This process continues until the first integration cycle is completed, and the system performs cumulative sampling on the K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ..., {P[K*NN] to P[K*N-1]} over X*N clock cycles. The system then stores the X*N*K accumulated photon counts corresponding to the X*N clock cycles in the X*N storage modules in the X*N*K (i.e., X*M) storage units.
[0068] In one example, assuming M=4, N=2, K=2, the flight time statistics device includes two statistics modules, namely the first statistics module and the second statistics module; each statistics module includes two overlay channels, namely the first overlay channel and the second overlay channel; each statistics cycle includes two clock cycles, each integration cycle includes X statistics cycles, each statistics cycle includes 2 clock cycles, and each storage module includes four storage units.
[0069] When the first and second statistical modules obtain two sets of initial flight time data {P0, P1} and {P2, P3} for the first clock cycle of the x-th statistical period, where x is a positive integer and 1 ≤ x ≤ x, the input accumulators of the first and second statistical modules respectively accumulate the two sets of initial flight time data {P0, P1} and {P2, P3} input for the first clock cycle of the x-th statistical period, generating the first accumulated photon count value P01 = P0 + P1 and the second accumulated photon count value P23 = P2 + P3 corresponding to the first clock cycle. The first superposition channel in the first statistical module... Under the control signal, the first superposition channel in the first and second statistical modules allows input of the first accumulated photon count value P01 and the second accumulated photon count value P23 of the first clock cycle. Under the control signal, the second superposition channel in the first and second statistical modules prohibits input of the first accumulated photon count value and the second accumulated photon count value of the first clock cycle. The first accumulated photon count value P01 and the second accumulated photon count value P23 corresponding to the first clock cycle are stored in the storage address a corresponding to the x-th statistical cycle through the first superposition channel of the first and second statistical modules, respectively. x-1 Within the two storage units of the storage module.
[0070] Furthermore, when the first and second statistical modules acquire two sets of initial flight time data {P0, P1} and {P2, P3} for the second clock cycle of the x-th statistical period, the input accumulators of the first and second statistical modules respectively accumulate the two sets of initial flight time data {P0, P1} and {P2, P3} input for the second clock cycle of the x-th statistical period, generating the first accumulated photon count value and the second accumulated photon count value corresponding to the second clock cycle. Under the action of the control signal, the first superposition channel in the first and second statistical modules prohibits the input of the first accumulated photon count value and the second accumulated photon count value of the second clock cycle. Under the action of the control signal, the second superposition channel in the first and second statistical modules allows the input of the first accumulated photon count value and the second accumulated photon count value of the second clock cycle. The first accumulated photon count value and the second accumulated photon count value corresponding to the second clock cycle are stored in the storage address a corresponding to the x-th statistical period through the second superposition channel respectively activated by the first and second statistical modules. x-1 The other two storage units of the storage module.
[0071] In this embodiment, the structures of the first to N-1th overlay channels in each statistical module are identical, while the structure of the Nth overlay channel in each statistical module differs from the structures of the first N-1 overlay channels. See below for reference... Figure 6 The diagram shows the structure of the kth statistical module among the K statistical modules. Taking the first N-1 overlay channels of the kth statistical module (i.e., the nth overlay channel among the first overlay channel to the N-1th overlay channel) as an example, the specific structure of the first N overlay channels in each statistical module is illustrated. Here, n is a positive integer and 1≤n≤N-1.
[0072] In one possible implementation, the nth overlay channel of each statistical module includes an nth input selection unit, an nth accumulation unit, an nth limit saturation unit, an nth output selection unit, an nth write unit, and an nth readout unit.
[0073] Specifically, the nth input selection unit includes two input terminals, one output terminal, and one control terminal. One input terminal is connected to the output terminal of the input accumulator in the kth statistical module, the other input terminal receives data 0, the output terminal is connected to one input terminal of the nth accumulator unit, and the control terminal is connected to the output terminal of the control module. The nth accumulator unit includes two input terminals and one output terminal. One input terminal is connected to the output terminal of the nth input selection unit, and the output terminal is connected to the input terminal of the nth limit saturation unit. The nth limit saturation unit includes one input terminal and one output terminal. The input terminal is connected to the output terminal of the nth accumulator unit, and the output terminal is connected to one input terminal of the nth output selection unit. The output selection unit includes two input terminals, one output terminal, and one control terminal. One input terminal is connected to the output terminal of the nth limit saturation unit, the other input terminal is connected to one output terminal of the nth write unit, the output terminal is connected to the input terminal of the nth write unit, and the control terminal is connected to the output terminal of the control module. The nth write unit includes one input terminal and two output terminals. The input terminal is connected to the output terminal of the nth output selection unit, one output terminal is connected to the other input terminal of the nth output selection unit, and the other output terminal is connected to the memory. The nth read unit includes one input terminal and one output terminal. The input terminal is connected to the memory, and the output terminal is connected to the other input terminal of the nth accumulator unit.
[0074] refer to Figure 6 In one possible implementation, the Nth overlay channel in each statistical module includes an Nth input selection unit, an Nth accumulation unit, an Nth limit saturation unit, an Nth write unit, and an Nth readout unit.
[0075] Specifically, the Nth input selection unit includes two input terminals, one output terminal, and one control terminal. One input terminal is connected to the output terminal of the input accumulator of the kth statistical module, and the other input terminal receives data 0. The output terminal is connected to one input terminal of the Nth accumulator unit, and the control terminal is connected to the output terminal of the control module. The Nth accumulator unit includes two input terminals and one output terminal. One input terminal is connected to the output terminal of the Nth input selection unit, and the output terminal is connected to the input terminal of the Nth limit saturation unit. The Nth limit saturation unit includes one input terminal and one output terminal. The input terminal is connected to the output terminal of the Nth accumulator unit, and the output terminal is connected to the input terminal of the Nth write unit. The control terminal is connected to the output terminal of the control module. The Nth write unit includes one input terminal and one output terminal. The input terminal is connected to the output terminal of the Nth limit saturation unit, and the output terminal is connected to the memory. The Nth readout unit includes one input terminal and one output terminal. The input terminal is connected to the memory, and the output terminal is connected to the other input terminal of the Nth accumulator unit.
[0076] In one example, if N=2, meaning each statistical module includes two superimposed channels, each first integration period includes X statistical periods, and each statistical period includes two clock cycles, meaning each first integration period includes 2*X clock cycles. Then, for S first integration periods, where S is the number of times the laser emitting module emits pulsed lasers in one time frame, and also the number of times the laser receiving module receives echo lasers in one time frame, the specific workflow of the first superimposed channels to the Nth superimposed channel of the K statistical modules in the S first integration periods includes the following steps:
[0077] Step s1x1: The input accumulators of the K statistical modules respectively acquire the K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ..., {P[K*NN] to P[K*N-1]} within the first clock cycle of the x-th statistical cycle of the first first integration cycle in the S first integration cycles, and process the K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ... The K photon count values are accumulated within the range {P[K*NN] to P[K*N-1]}, where x is a positive integer and 1≤x≤X, generating K accumulated photon count values for the first clock cycle. Under the action of the first control signal output by the control module, the first input selection unit of the K statistical modules allows the K accumulated photon count values accumulated within the first clock cycle to pass through and output, corresponding to the K input accumulators. The second to Nth input selection units of the K statistical modules are subject to the control signal output by the control module. Under this action, the accumulation of K photon counts obtained through the K input accumulators within the first clock cycle is prohibited, and instead, data 0 is allowed to pass through and output. The K accumulated photon counts output by the K first input selection units are sequentially passed through the first accumulation unit of the first superposition channel and output to the first limit saturation unit of the first superposition channel. The first limit saturation unit is used to limit the bit width of the accumulated flight time corresponding to the accumulated photon counts that can pass through. If the bit width of the accumulated flight time corresponding to the accumulated photon counts input to the first limit saturation unit does not exceed the limit bit width of the first limit saturation unit, the first limit saturation unit allows the accumulated photon counts to pass through and outputs them to the first output selection unit. Under the control of the control signal output by the control module, the first output selection unit allows the accumulated photon counts to pass through and output them to the first write unit in the first superposition channel. If the bit width of the accumulated flight time in the accumulated photon counts input to the first limit saturation unit exceeds the limit bit width of the first limit saturation unit, the first limit saturation unit prohibits the accumulation of photon counts.
[0078] Step s1x2: The input accumulators of the K statistical modules respectively acquire K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ..., {P[K*NN] to P[K*N-1]} within the second clock cycle of the xth statistical cycle of the first first integration period, and perform accumulation processing on the K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ..., {P[K*NN] to P[K*N-1]} to generate K accumulated photon count values within the first clock cycle; Under the action of the first control signal output by the control module, the first input selection unit of the K statistical modules prohibits the accumulation of the K accumulated photon count values obtained by the K input accumulators within the first clock cycle, and instead allows the data to pass and outputs 0; Under the action of the control signal output by the control module, the second input selection unit to the Nth input selection unit of the K statistical modules allow the data to pass through. The system outputs K cumulative photon count values obtained by K corresponding input accumulators during the first clock cycle. The K cumulative photon count values output by the K first input selection units are sequentially passed through the second accumulation unit of the second superposition channel and output to the second limit saturation unit of the second superposition channel. The second limit saturation unit is used to limit the bit width of the accumulated flight time in the cumulative photon count values that can be passed. If the bit width of the accumulated flight time in the cumulative photon count values input to the second limit saturation unit does not exceed the limit bit width of the second limit saturation unit, the second limit saturation unit allows the passage and outputs the cumulative photon count value to the second output selection unit. Under the control of the control signal output by the control module, the second output selection unit allows the passage and outputs the cumulative photon count value to the second write unit in the second superposition channel. If the bit width of the accumulated flight time in the cumulative photon count values input to the second limit saturation unit exceeds the limit bit width of the second limit saturation unit, the second limit saturation unit prohibits the passage of the cumulative photon count value.
[0079] Step s1x3: After the first to Nth write units of the K statistical modules store the N*K accumulated photon count values obtained by the K input accumulators in the xth statistical cycle of the first first integration cycle into the N*K storage units (i.e., M storage units) of the current storage module (i.e., the (x-1)th storage module corresponding to the xth statistical cycle), the first to Nth write units of the K statistical modules point to the next storage module (i.e., the xth storage module). The input accumulators of the K statistical modules continue to acquire the N*K sets of first initial flight time data of the (x+1)th statistical cycle of the first first integration cycle. The first to second superposition channels of the K statistical modules repeat the above steps s1x1 and s1x2 X times until the first to second superposition channels of the K statistical modules sequentially complete {steps S111, S112}, ... {steps S1x1, S1x2}, ... to {steps S1X1, S1X2} of the X statistical cycles of the first first integration cycle. refer to Figure 7 The diagram shows the storage of flight time data within the first integration period. The first to second overlay channels of the K statistical modules sequentially complete the accumulation sampling of K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ..., {P[K*NN] to P[K*N-1]} in each of the X*N clock cycles of the first first integration period. The resulting X*N*K accumulated photon count values corresponding to the X*N clock cycles are stored in X*N*K storage units (i.e., X*M storage units) of the X storage modules, thereby completing the accumulation sampling and storage of the first initial flight time data for the X statistical cycles of the first first integration period.
[0080] Understandably, in this embodiment, before the end of the Nth clock cycle of each statistical period, the nth output selection unit of the K statistical modules continuously outputs the accumulated photon count values obtained by the corresponding input accumulators to their respective first writing units. This ensures that when the Nth clock cycle of each statistical period arrives, and the Nth writing unit of the K statistical modules obtains the K accumulated photon count values obtained by the K input accumulators in the Nth clock cycle of each statistical period, the nth writing unit of the K statistical modules can obtain the accumulated photon count values obtained by the K input accumulators in the nth clock cycle of each statistical period. The K accumulated photon count values are obtained by the first to Nth write units of the K statistical modules, which are the N*K accumulated photon count values obtained by the K input accumulators in N clock cycles of each statistical period. When the first to Nth write units of the K statistical modules obtain the N*K accumulated photon count values obtained by the K input accumulators in each statistical period, the first to Nth write units of the K statistical modules perform a write operation to write the N*K accumulated photon count values obtained by the K input accumulators in each statistical period into the currently pointed storage module.
[0081] For example, after completing the cumulative sampling and storage of all first initial flight time data for X statistical cycles of the first first integration cycle in the S first integration cycles based on the above steps s1x1 to s1x3, when the first superposition channel to the second superposition channel of the K statistical modules enter the second first integration cycle, the accumulated photon count values of the same accumulated flight time in the first first integration cycle are sequentially read from the storage and output to the first to Nth accumulation units of the K statistical modules to perform the first superposition of the accumulated photon count values of the same accumulated flight time in the first and second first integration cycles, thereby obtaining the first superimposed flight time data set. The resulting X*N*K first superimposed photon count values corresponding to X*N clock cycles are stored in the X*N*K storage units of the X storage modules. Specifically, the steps include the following:
[0082] Step 1: In the first statistical cycle of the second first integration cycle, the first write unit and the Nth write unit in the K statistical modules point to the write end of the first storage module in the storage module; the first read unit and the Nth read unit in the K statistical modules point to the read end of the first storage module in the storage module, and sequentially read the K accumulated photon count values of each clock cycle in the first statistical cycle of the first first integration cycle, and output them to the first to Nth accumulated units of the K statistical modules, so that the first to Nth accumulated units sequentially read the second photon count values in the first statistical cycle of the second first integration cycle. The N*K accumulated photon counts obtained from the first statistical cycle of the first integration period are superimposed with the N*K accumulated photon counts obtained from the first statistical cycle of the second first integration period. Under the control of the control signal, the superimposed N*K superimposed photon counts corresponding to the first statistical cycle are sequentially output to the first writing unit to the Nth writing unit through the first limit saturation unit to the Nth limit saturation unit and the first output selection unit to the (N-1)th output selection unit in the K statistical modules. The first writing unit to the Nth writing unit stores the N*K superimposed photon counts in the first storage module of the memory.
[0083] Step 2: In the second statistical cycle of the second first integration cycle, the first write unit and the Nth write unit in the K statistical modules point to the write end of the second storage module in the storage module; the first read unit and the Nth read unit in the K statistical modules point to the read end of the second storage module in the storage module, and sequentially read the K accumulated photon count values of each clock cycle in the second statistical cycle of the first first integration cycle, and output them to the first to Nth accumulated units of the K statistical modules, so that the first to Nth accumulated units superimpose the N*K accumulated photon count values obtained in the second statistical cycle of the second first integration cycle with the N*K accumulated photon count values obtained in the second statistical cycle of the second first integration cycle, and output the superimposed N*K superimposed photon count values corresponding to the second statistical cycle to the first to Nth write units, and the first to Nth write units store the N*K superimposed photon count values corresponding to the second statistical cycle in the memory into the second storage module of the memory.
[0084] Step 3: Repeat Step 1 and Step 2 X times from the first to the Nth superposition channel of the K statistical modules until the first to the second superposition channel of the K statistical modules sequentially complete the first superposition of the N*K superimposed photon counts within the X statistical cycles of the first first integration period and the N*K superimposed photon counts within the X statistical cycles of the second first integration period, to obtain the first superimposed flight time data set. Then, store the X*N*K superimposed photon counts corresponding to X*N clock cycles obtained from the first superposition in the X*N*K storage units (i.e., X*M storage units) of the X storage modules, complete the cumulative sampling of the initial flight time data for the X statistical cycles of the second first integration period, and simultaneously complete the first superposition and storage of the cumulative photon counts for the same cumulative flight time in the first and second first integration periods.
[0085] Step 4: Based on Steps 1 to 3 above, when the first to second superposition channels of the K statistical modules enter the third first integration cycle, the first to N superposition channels of the K statistical modules repeat Steps 1 to 3 above. That is, the first to N readout units of the K statistical modules sequentially read the superposition photon count values of the same accumulated flight time in the first superposition flight time data set stored in the memory, and output them to the first to N accumulation units of the K statistical modules, so as to perform a second superposition on the first superposition photon count value in the first superposition flight time data set obtained by the first superposition and the accumulated photon count value of the same accumulated flight time in the third first integration cycle, to obtain the second superposition flight time data set, and store the X*N*K second superposition photon count values corresponding to the X*N clock cycles in the X*N*K storage units of the X storage modules. Similarly, when the first to second superposition channels of the K statistical modules enter the Sth first integration cycle, the first to Nth readout units of the K statistical modules sequentially read the superposition photon count values of the same cumulative flight time in the S-1th superposition flight time data set stored in the memory, and output them to the first to Nth accumulation units of the K statistical modules. This allows for the S-1th superposition of the S-1th superposition photon count value in the S-1th superposition flight time data set obtained by the S-2th superposition and the cumulative photon count value of the same cumulative flight time in the Sth first integration cycle, to obtain the S-1th superposition flight time data set. The resulting X*N*K S-1th superposition photon count values corresponding to X*N clock cycles are then stored in the X*N*K storage units of the X storage modules, thereby realizing the superposition of the cumulative photon count values of the same cumulative flight time in the S first integration cycles.
[0086] In one alternative implementation, the nth input selection unit in each statistics module includes an nth data selector MUXn, which is a 2-to-1 data selector. The nth data selector MUXn includes two data input terminals, one data output terminal, and one selection input terminal. One data input terminal of the nth data selector MUXn is connected to the output terminal of the corresponding input accumulator, and the other data input terminal receives data 0. The data output terminal is connected to one input terminal of the corresponding nth accumulator, and the selection input terminal is connected to the signal output terminal of the control module. Under the action of the first control signal, the nth data selector MUXn selects to output the accumulated photon count value accumulated by the corresponding input accumulator in the nth clock cycle of each statistical period, and prohibits the output of the accumulated photon count value accumulated in other clock cycles within N clock cycles of each statistical period except for the nth clock cycle. When the nth data selector MUXn prohibits the output of the accumulated photon count value accumulated in other clock cycles within N clock cycles of each statistical period except for the nth clock cycle under the action of the first control signal, the nth data selector MUXn selects to output data 0.
[0087] In one optional implementation, the nth output selection unit in each statistical module includes a data selector MUX_n, which is a 2-to-1 data selector. The data selector MUX_n includes two data input terminals, one data output terminal, and one selection input terminal. One data input terminal of the data selector MUX_n is connected to the output terminal of the nth limit saturation unit, the other data input terminal is connected to the output terminal of the nth write unit, the data output terminal is connected to the input terminal of the nth write unit, and the selection input terminal is connected to the control signal output terminal of the control module.
[0088] When the K input accumulators acquire the first initial flight time data of the nth clock cycle of each statistical period, the nth data selector MUXn corresponding to the nth input selection unit, under the action of the first control signal, selects the accumulated photon count value accumulated by the corresponding input accumulator in the nth clock cycle of each statistical period. If the accumulated photon count value does not exceed the limit bit width of the nth limit saturation unit, the nth data selector MUX_n corresponding to the nth output selection unit, under the action of the first control signal, selects to acquire the data output by the nth limit saturation unit and outputs it to the nth write unit. When the K input accumulators acquire the initial flight time data of a period other than the nth clock cycle of each statistical period, the nth data selector MUXn corresponding to the nth input selection unit selects input data 0 under the action of the first control signal, and the data selector MUX_n corresponding to the nth output selection unit selects to acquire the data temporarily stored in the nth write unit under the action of the control signal and outputs it to the nth write unit again.
[0089] When the K input accumulators acquire the first initial flight time data of the Nth clock cycle of each statistical period, the data selector MUXN corresponding to the Nth input selection unit selects the accumulated photon count value accumulated by the corresponding input accumulator in the Nth clock cycle of each statistical period under the action of the first control signal. If the accumulated photon count value does not exceed the limit bit width of the Nth limit saturation unit, the Nth limit saturation unit outputs the accumulated photon count value to the Nth write unit.
[0090] When the Nth write unit of the K statistical modules obtains the accumulated photon count value, the first to the Nth write units of the K statistical modules perform a write operation to write the N*K accumulated photon count values obtained by the K input accumulators in each statistical cycle into the currently pointed storage module.
[0091] References are provided as examples, not as limitations. Figure 8 A schematic diagram of the specific structure of a flight time statistics device is shown. Figure 9 The diagram shows a timing diagram of the first integration cycle. Assume that M=4, N=2, K=2; the flight time statistics device includes two statistical modules, namely the first statistical module and the second statistical module, and each statistical module includes two overlay channels; each statistical cycle includes two clock cycles, namely the first clock cycle and the second clock cycle; each first integration cycle includes 2*X clock cycles; and each storage module includes four storage units.
[0092] (1) When the first statistical module and the second statistical module obtain two sets of first initial flight time data {P0, P1} and {P2, P3} for the first clock cycle of the x-th statistical cycle:
[0093] The input accumulator A1 of the first statistical module and the input accumulator A4 of the second statistical module accumulate the two sets of first initial flight time data {P0, P1} and {P2, P3} input in the first clock cycle of the x-th statistical cycle, respectively, to generate the first accumulated photon count value P01 and the second accumulated photon count value P23 corresponding to the first clock cycle. Under the action of the first control signal, the first data selector MUX1 corresponding to the first input selection unit of the first statistical module selects the first accumulated photon count value P01 corresponding to the first clock cycle. If the first accumulated photon count value P01 corresponding to the first clock cycle does not exceed the limit bit width of the first limit saturation unit included in the first statistical module, the data selector MUX_1 corresponding to the first output selection unit of the first statistical module selects the data output by the first limit saturation unit included in the first statistical module, i.e., the first accumulated photon count value P01, under the action of the first control signal, and outputs it to the first write unit hist_wdat0 of the first statistical module. Under the action of the first control signal, the first data selector MUX1 corresponding to the first input selection unit of the second statistical module selects the second accumulated photon count value P23 corresponding to the first clock cycle. Under the action of the first control signal, the data selector MUX1 corresponding to the first input selection unit of the second statistical module selects the second accumulated photon count value P23 corresponding to the first clock cycle. If the second accumulated photon count value P23 corresponding to the first clock cycle does not exceed the limit bit width of the first limit saturation unit included in the second statistical module, the data selector MUX_1 corresponding to the first output selection unit of the second statistical module selects the data output by the first limit saturation unit included in the second statistical module, namely the second accumulated photon count value P23, under the action of the first control signal, and outputs it to the first write unit hist_wdat1 of the second statistical module.
[0094] (2) When the first statistical module and the second statistical module obtain two sets of first flight time data {P0, P1} and {P2, P3} for the second clock cycle of the x-th statistical cycle:
[0095] The input accumulator A1 of the first statistical module and the input accumulator A4 of the second statistical module accumulate the two sets of first initial flight time data {P0, P1} and {P2, P3} input in the second clock cycle of the x-th statistical period, respectively, to generate the first accumulated photon count value P01 and the second accumulated photon count value P23 corresponding to the second clock cycle. Under the action of the first control signal, the data selector MUX1 corresponding to the first input selection unit of the first statistical module allows data 0 to pass through and outputs it. Under the action of the first control signal, the data selector MUX2 corresponding to the first output selection unit of the first statistical module allows data temporarily stored in the first writing unit of the first statistical module to pass through and output the first accumulated photon count value P01 corresponding to the first clock cycle to the first writing unit of the first statistical module. Under the action of the first control signal, the data selector MUX2 corresponding to the second input selection unit of the first statistical module selects the first accumulated photon count value P01 corresponding to the second clock cycle as input. If the first accumulated photon count value P01 corresponding to the second clock cycle does not exceed the limit bit width of the second limit saturation unit included in the first statistics module, the second limit saturation unit included in the first statistics module outputs the first accumulated photon count value P01 corresponding to the second clock cycle; the data selector MUX_1 corresponding to the second output selection unit of the first statistics module, under the action of the first control signal, obtains the data output by the second limit saturation unit included in the first statistics module, that is, the first accumulated photon count value P01 corresponding to the second clock cycle, and outputs it to the second write unit hist_wdat2 of the first statistics module. Under the action of a control signal, the data selector MUX1 corresponding to the first input selection unit of the second statistics module allows data 0 to pass through and outputs it. Under the action of a control signal, the data selector MUX_2 corresponding to the first output selection unit of the second statistics module allows data to pass through and outputs the data temporarily stored in the first write unit of the second statistics module, namely the second accumulated photon count value P23 corresponding to the first clock cycle, to the first write unit of the second statistics module. Under the action of a control signal, the data selector MUX1 corresponding to the second input selection unit of the second statistics module selects the second accumulated photon count value corresponding to the second clock cycle as input. If the second accumulated photon count value P23 corresponding to the second clock cycle does not exceed the limit bit width of the second limit saturation unit included in the second statistics module, the second limit saturation unit included in the second statistics module outputs the second accumulated photon count value P23 corresponding to the second clock cycle; under the action of the first control signal, the data selector MUX2 corresponding to the second output selection unit of the second statistics module obtains the data output by the second limit saturation unit included in the second statistics module, that is, the second accumulated photon count value P23 corresponding to the second clock cycle, and outputs it to the second write unit hist_wdat3 of the second statistics module.
[0096] At this time, the first write unit of the first statistical module temporarily stores the first accumulated photon count value P01 corresponding to the first clock cycle, and the first write unit of the second statistical module temporarily stores the second accumulated photon count value P23 corresponding to the first clock cycle; the second write unit of the first statistical module temporarily stores the first accumulated photon count value P01 corresponding to the second clock cycle, and the second write unit of the second statistical module temporarily stores the second accumulated photon count value P23 corresponding to the second clock cycle; the first and second write units of the first and second statistical modules, as well as the first and second write units of the second statistical module, write the four accumulated photon count values (i.e., the first accumulated photon count value P01, the second accumulated photon count value P23 corresponding to the first clock cycle of the x-th statistical cycle, and the first accumulated photon count value P01, the second accumulated photon count value P23 corresponding to the second clock cycle of the x-th statistical cycle) obtained by the input accumulators of the two statistical modules within two clock cycles of the x-th statistical cycle into the storage address a corresponding to the x-th statistical cycle. x-1 Storage module.
[0097] In this embodiment, when the storage address is a x-1 After the storage module is written with the four accumulated photon count values corresponding to the x-th statistical period by the two statistical modules, and x < X, the first write unit and the second write unit of the first statistical module and the first write unit and the second write unit of the second statistical module point to the storage address corresponding to the (x+1)-th statistical period, which is a. x The storage module, the first statistical module, and the second statistical module continue to perform the cumulative sampling of the initial flight time data of the (x+1)th statistical cycle of the current first integration cycle, and store it in the storage address a. x The storage module; when the storage address is a X-1 The storage module is written with four accumulated photon count values corresponding to the Xth statistical cycle by the two statistical modules. That is, after the first and second statistical modules complete the accumulation sampling and storage of the initial flight time data of the current first integration cycle, the control module stops outputting control signals until the next first integration cycle arrives, and the control module performs the accumulation sampling and storage of the initial flight time data of the X statistical cycles in the first integration cycle again.
[0098] It should be noted that when the statistics department executes the operation of the next first integration cycle, the first readout unit of the first statistics module is used to read and output the first accumulated photon count value P01 corresponding to the first clock cycle of the x-th statistical cycle of the previous first integration cycle to the first accumulation unit of the first statistics module in the x-th statistical cycle of the next first integration cycle; the first readout unit of the second statistics module is used to read and output the second accumulated photon count value P23 corresponding to the first clock cycle of the x-th statistical cycle of the previous first integration cycle to the first accumulation unit of the second statistics module in the x-th statistical cycle of the next first integration cycle; the second readout unit of the first statistics module is used to read... The first accumulated photon count value P01 corresponding to the second clock cycle of the xth statistical cycle of the previous first integration period is output to the second accumulation unit of the first statistical module. The second readout unit of the second statistical module is used to read and output the second accumulated photon count value P23 corresponding to the second clock cycle of the xth statistical cycle of the previous first integration period to the second accumulation unit of the second statistical module in the xth statistical cycle of the next first integration period, so as to realize the superposition of histogram data corresponding to multiple first integration periods, until the input accumulators of K statistical modules complete the accumulation sampling of the initial flight time data of the Sth first integration period, and K statistical modules complete the superposition of histogram data corresponding to all first integration periods to generate the final histogram data.
[0099] Example 2:
[0100] Embodiment 2 of this application provides another laser ranging device, which includes a light-emitting unit 100, a pixel unit 200, a time-to-digital converter 300 (TDC), and a time-of-flight statistics device 400. (Refer to...) Figure 10 The diagram shows a flight time statistics device 400, which includes a control module 430, a statistics unit 410, and a memory 420. Based on different flight time statistics devices, this laser ranging device can achieve two detection modes compared to the laser ranging device provided in Embodiment 1. Specifically, the laser ranging device in Embodiment 2 of this application can achieve a first detection mode and a second detection mode.
[0101] When the laser ranging device is in the first detection mode, the statistics unit 410 is used to acquire S sets of first initial flight time data corresponding to S first integration cycles, and to accumulate each first initial flight time data set by grouping N adjacent initial flight time data to generate S sets of accumulated flight time data corresponding one-to-one with the S sets of first initial flight time data; S is a positive integer and S≥2; N is a positive integer and N≥2; the flight time statistics device is also used to superimpose the S sets of accumulated flight time data to generate a first superimposed flight time data set, and to store at least one first superimposed photon count value in the first superimposed flight time data set in the memory 420 in such a way that one first superimposed photon count value is stored in one memory unit. The first superimposed flight time data set includes the first superimposed photon count value corresponding one-to-one with each accumulated flight time.
[0102] Each first initial flight time data set includes multiple first initial flight time data sets, each first initial flight time data set including a flight moment output by the TDC and the photon count value corresponding to that flight moment; each accumulated flight time data set includes at least one accumulated flight time data set, each accumulated flight time data set including at least one accumulated flight moment after accumulating N adjacent flight moments and at least one accumulated photon count value corresponding to at least one accumulated flight moment; the first superimposed flight time data set includes at least one first superimposed flight time data set obtained by superimposing the accumulated flight time data corresponding to the same accumulated flight moment in the S accumulated flight time data sets, each first superimposed flight time data set including a first superimposed photon count value obtained from the S accumulated photon count values corresponding to at least one accumulated flight moment.
[0103] When the laser ranging device is in the second detection mode, the statistics unit 410 is used to acquire S sets of second initial flight time data within S second integration periods, and to perform superposition processing on the S sets of second initial flight time data to generate a second superimposed flight time data set. The second superimposed flight time data set is stored in the memory 420 by storing at least one second superimposed photon count value in the second superimposed flight time data set in a storage unit as one second superimposed photon count value.
[0104] Each second initial flight time data set includes multiple second initial flight time data sets, each second initial flight time data set includes multiple flight times output by the TDC and multiple photon count values corresponding to the multiple flight times; the second superimposed flight time data set includes at least one second superimposed flight time data set obtained by superimposing the second initial flight time data corresponding to the same flight time in the S second initial flight time data sets, each second superimposed flight time data set includes multiple second superimposed photon count values corresponding to the multiple flight times.
[0105] In Example 2, it is assumed that each first integration cycle includes X*N first clock cycles, each first clock cycle includes M first initial flight time data, and each second integration cycle includes X second clock cycles, each second clock cycle includes M second initial flight time data, where X≥2, M≥2, M=K*N, M, K, and X are all positive integers, and K≥1. (Reference) Figure 10 The diagram shows the structure of a flight time statistics device. The statistics unit 410 of the flight time statistics device 400 includes K statistics modules 411 connected in parallel. The control module 430 is used to output a second control signal, which is either a first state or a second state.
[0106] When the laser ranging device is in the first detection mode, the second control signal output by the control module is in the first state. The M initial flight time data points corresponding to each clock cycle are divided into K initial flight time data sets according to the first division method. The K statistical modules, under the action of the second control signal in the first state, sequentially acquire the K initial flight time data sets in each first clock cycle within each first integration cycle, and accumulate the acquired initial flight time data sets to generate an accumulated flight time data set. The K statistical modules are also used, under the action of the second control signal in the first state, to superimpose the S accumulated flight time data sets to generate a first superimposed flight time data set. The first superimposed flight time data set is then stored in memory 420, with at least one first superimposed photon count value stored in each memory unit.
[0107] The first partitioning method involves dividing the M initial flight time data corresponding to each first clock cycle within each first integration period into K groups of initial flight time data, i.e., K sets of initial flight time data, where each group consists of N adjacent initial flight time data. For example, assuming the M initial flight time data included in each first clock cycle are sequentially represented as P0, P1, ..., P[K*N-2] to P[K*N-1], where K*N = M, then the k-th initial flight time data set within each first clock cycle is {P[k*NN] to P[k*N-1]}, and the k-th initial flight time data set corresponds to the k-th statistical module among the K statistical modules. It should be noted that when the laser ranging device is in the first detection mode, the statistical unit 410 uses a continuous superposition method to superimpose the accumulated flight time data sets corresponding to the first to the S-th first integration periods. The method for generating the first superimposed flight time data set can be referred to the relevant description in Embodiment 1, and will not be repeated here.
[0108] When the laser ranging device is in the second detection mode, the second control signal output by the control module is in the second state. The M second initial flight time data corresponding to each clock cycle are divided into K groups of second initial flight time data according to the second division method, thus obtaining K sets of second initial flight time data. K statistical modules are used to acquire the K sets of second initial flight time data in each second clock cycle in each second integration cycle according to the clock cycle sequence under the action of the second control signal in the second state.
[0109] The second partitioning method is to group the M initial flight time data corresponding to each second clock cycle within each second integration period into K sets of second initial flight time data. Then, the kth set of second initial flight time data within each second clock cycle is {P[0*K+(k-1)], P[1*K+(k-1)], ..., P[(N-1)*K+(k-1)]}, and the kth set of second initial flight time data corresponds to the kth statistical module among the K statistical modules. It should be noted that when the laser ranging device is in the second detection mode, the k-th statistical module is used, under the action of the second control signal in the second state, to acquire the N second initial flight time data included in the k-th second initial flight time data set {P[0*K+(k-1)], P[1*K+(k-1)], ..., P[(N-1)*K+(k-1)]}, and stores the N second initial flight time data included in the k-th second initial flight time data set {P[k*NN] to P[k*N-1]} in a one-to-one corresponding storage unit. When the K statistical modules acquire the second initial flight time data sets corresponding to the first to the S-th second integration periods, the K statistical modules are also used, under the action of the second control signal in the second state, to perform superposition processing on the S second initial flight time data sets corresponding to the first to the S-th second integration periods to generate a second superimposed flight time data set, and store the M second superimposed photon count values included in the second superimposed flight time data set in a one-to-one corresponding storage unit.
[0110] In this embodiment of the application, when the laser ranging device is in the second detection mode, the statistics unit 410 can also perform superposition processing on the second initial flight time data set corresponding to the first to the Sth second integration period by using a continuous superposition method to generate a second superimposed flight time data set.
[0111] Specifically, when the K statistical modules obtain the second initial flight time data set corresponding to the first second integration period, the K statistical modules write the second initial flight time data set corresponding to the first second integration period into the memory; when the K statistical modules obtain the initial flight time data set corresponding to the second second integration period, the K statistical modules read the second initial flight time data set corresponding to the first second integration period from the memory, and perform a first superposition process with the second initial flight time data set corresponding to the second second integration period to obtain a first second superimposed flight time data set, and write the first second superimposed flight time data set into the memory; when the K statistical modules obtain the initial flight time data set corresponding to the third second integration period, the K statistical modules read the first second superimposed flight time data set from the memory, and perform a second superposition process with the second initial flight time data set corresponding to the third second integration period to obtain a second second superimposed flight time data set, and write the second second superimposed flight time data set into the memory. The above operations are repeated multiple times until the K statistical modules obtain the second initial flight time data set corresponding to the Sth second integration period. Then, the K statistical modules read the (S-2)th second superimposed flight time data set from the memory, perform the (S-1)th superposition process with the second initial flight time data set corresponding to the Sth second integration period, obtain the (S-1)th second superimposed flight time data set, and write the (S-1)th second superimposed flight time data set into the memory 420.
[0112] In this embodiment, the memory 420 includes X*M storage units, where X is a positive integer and X≥1. When the laser ranging device is in the first detection mode, the X*M storage units included in the memory can store up to X*M (i.e., X*N*K) accumulated photon count values. Correspondingly, the number of clock cycles included in the first integration period can reach up to (X*N*K) / K (i.e., X*N). The detection distance L1 that the laser ranging device can achieve in the first integration period is L1 = c*(X*N*t), where c is the speed of light and t is the duration of one clock cycle. The detection accuracy Δt1 = N*t of the laser ranging device in the first detection mode. When the laser rangefinder is in the second detection mode, the memory, comprising X*M storage units, can store a maximum of X*M initial flight time data. Correspondingly, the second integration period includes a maximum of (X*M) / M (i.e., X) clock cycles. The detection distance achievable by the laser rangefinder in the second integration period is L2 = c*(X*t), and the detection accuracy in the second detection mode is Δt2 = t. From the above, we know that L1 = N*L2, Δt1 = N*Δt2. In other words, the detection distance of the laser rangefinder in the first detection mode is greater than that in the second detection mode, satisfying the laser rangefinder's requirement for long detection distances; the ranging accuracy of the laser rangefinder in the second detection mode is less than that in the first detection mode, satisfying the laser rangefinder's requirement for high detection accuracy.
[0113] Based on the laser ranging device provided in Embodiment 2 of this application, different detection requirements of the laser ranging device can be met by switching detection modes. The flight time statistics device provided in this application uses a second control signal to control each statistics module to output the accumulated photon count value or the initial flight time data to the memory, which not only realizes the flight time statistics of the laser ranging device in two detection modes, but also simplifies the structure of each statistics module.
[0114] Furthermore, the X*M storage units in the memory can be divided into X storage modules, and the storage addresses of the X storage modules are a0, a1, ... to a0, a1, ... X-1 Each storage module includes M storage units. A first integration cycle consisting of X*N first clock cycles can be divided into X first statistical cycles, each of which includes N clock cycles. A second integration cycle consisting of X second clock cycles can be divided into X second statistical cycles, each of which includes 1 clock cycle.
[0115] When the laser rangefinder is in the first detection mode, the storage address is a. x-1The storage module includes M storage units used to store the N*K accumulated photon count values obtained by the K statistical modules in the x-th first statistical cycle of the current first integration cycle, that is, the N*K accumulated photon count values corresponding to the N first clock cycles included in the x-th first statistical cycle. When the laser ranging device is in the second detection mode, the storage address is a. x-1 The storage module includes M storage units for storing M second initial flight time data corresponding to the xth second clock cycle (i.e. the xth second statistical cycle) of the current second integration cycle obtained by the K statistical modules.
[0116] Specifically, when the laser ranging device is in the first detection mode, K statistical modules are used to accumulate N*M first initial flight time data corresponding to N first clock cycles included in the current first statistical period, and store the accumulated N*K photon count values in the M storage units of the current storage module. Then, the output of the K statistical modules points to the next storage module. K statistical modules are used to accumulate N*M first initial flight time data corresponding to N first clock cycles included in the next first statistical period, and store the accumulated N*K photon count values in the M storage units of the next storage module. The above operation is repeated until the output of the K statistical modules points to storage address a. X-1 The storage module and K statistical modules accumulate N*M first initial flight time data corresponding to N first clock cycles included in the Xth first statistical cycle, and store the accumulated N*K photon count values at storage address a. X-1 The K statistical modules complete the statistics of all initial flight time data within the current first integration period. After these K modules complete the statistics, the control module stops controlling the K statistical modules. If there are still first integration periods within a single time frame where flight time statistics are not yet completed, the control module restarts control of the K statistical modules at the arrival of the next first integration period, ensuring the flight time statistics device completes the statistics of all initial flight time data within the next first integration period. Once the flight time statistics device has completed the statistics of all initial flight time data for S first integration periods within a single time frame, the control module can again stop controlling the K statistical modules until the arrival of the next time frame.
[0117] When the laser ranging device is in the second detection mode, and after the K statistical modules have stored the M second initial flight time data corresponding to the current second clock cycle in the M storage units of the current storage module, the output of the K statistical modules points to the next storage module; the K statistical modules then store the M second initial flight time data corresponding to the next second clock cycle in the M storage units of the next storage module; this operation is repeated until the output of the K statistical modules points to storage address a. X-1 The storage module, K statistics modules, store the M second initial flight time data corresponding to the Xth second clock cycle within the current second integration cycle in storage address a. X-1 The storage module. After the K statistical modules complete the flight time statistics for the current second integration period, the control module stops controlling the K statistical modules. If there are still second integration periods in a single time frame where the flight time statistics have not been completed, the control module will restart the K statistical modules when the next second integration period arrives, so that the flight time statistics device can complete the flight time statistics for the next second integration period. After the flight time statistics device completes the flight time statistics for all second integration periods in a single time frame, the control module can stop controlling the K statistical modules again until the next time frame arrives.
[0118] In this embodiment, the control module is used to output control signals. For example... Figure 10 As shown, specifically, the control module includes a first control module and a second control module. The first control module outputs a first control signal and a second control signal, wherein the first control signal is a clock cycle control signal and the second control signal is a sampling mode control signal; the second control signal can be either a first state or a second state. When the second control signal is in the first state, the laser ranging device is in a first detection mode (i.e., cumulative sampling mode), and when the second control signal is in the second state, the laser ranging device is in a second detection mode (i.e., normal sampling mode); the second control module outputs a combined control signal based on the first control signal and the second control signal output by the first control module. For example, the second control module can be an AND gate.
[0119] In the embodiments of this application, the K statistical modules in the statistics department all have the same structure. For example... Figure 11 As shown, in a specific implementation of this embodiment, each statistical module includes an input accumulator and N superimposed channels connected in parallel, namely the first superimposed channel, the second superimposed channel to the Nth superimposed channel, and the input accumulator is connected in series with the N superimposed channels connected in parallel.
[0120] Specifically, the input accumulator includes N input terminals and one output terminal. Each superposition channel includes a first statistical input terminal, a second statistical input terminal, a first superposition output terminal, and a superposition feedback terminal. The input accumulator of each statistical module is used to acquire K sets of initial flight time data for each first clock cycle within each first integration period, and to accumulate each of the K sets of initial flight time data to generate an accumulated flight time data set corresponding to each first integration period.
[0121] The output of the input accumulator is connected to the first statistical input of the first superposition channel, the second superposition channel, and the Nth superposition channel. When the second control signal is in the first state, the N first superposition inputs are used to receive, one by one, the N*K accumulated photon count values generated by the input accumulator in each first statistical period of each first integration period, according to the second control signal.
[0122] Specifically, when the second control signal output by the control module is in the first state, the laser ranging device is in the first detection mode. Following the order of the first clock cycles within each first statistical cycle, the first statistical input terminal of the nth superposition channel included in the K statistical modules allows input of the K accumulated photon count values obtained by the input accumulator of each statistical module within the nth first clock cycle of the current first statistical cycle. Other superposition channels in the K statistical modules (i.e., the superposition channels other than the nth superposition channel among the N superposition channels of each statistical module) prohibit input of the K accumulated photon count values obtained by the input accumulator of their respective statistical modules within the nth clock cycle. When the Nth superposition channel of the K statistical modules completes the input of the K accumulated photon count values obtained by the input accumulator of each statistical module within the Nth clock cycle, that is, when the K statistical modules complete the first clock cycle of the current first statistical cycle... After inputting N*K accumulated photon count values up to the Nth clock cycle, the K statistical modules, following the order of the first clock cycle in the next first statistical cycle, complete the input of N*K accumulated photon count values from the first clock cycle to the Nth clock cycle of the next first statistical cycle, until the K statistical modules have completed the input of X*N*K accumulated photon count values for X first statistical cycles of the current first integration cycle. When the laser ranging device enters the next first integration cycle, the K statistical modules perform the above operation again, completing the input of X*N*K accumulated photon count values for X first statistical cycles of the next first integration cycle, until the input of accumulated photon count values for all required first integration cycles is completed.
[0123] The second statistical input terminals of the first to Nth superposition channels of the K statistical modules are respectively used to acquire the second initial flight time data set corresponding to the statistical module in each second clock cycle within each second integration period. Furthermore, when the second control signal is in the second state, the output terminals of the first to Nth superposition channels of the K statistical modules sequentially point to the X storage modules in the memory within each integration period, following a sequence of X second clock cycles. That is, the K*N superposition output terminals corresponding to the first to Nth superposition channels of the K statistical modules point to the currently corresponding statistical module in the current second statistical period, and to the next corresponding storage module in the next second statistical period.
[0124] Specifically, when the second control signal output by the control module is in the second state, the laser ranging device is in the second detection mode. Following the sequence of X second clock cycles (i.e., second statistical cycles) within each second integration period, the second statistical input terminals of the first to Nth superimposed channels of the K statistical modules allow input of K sets of second initial flight time data for each second clock cycle. This operation is repeated until the first to Nth superimposed channels of the K statistical modules complete the input of K sets of second initial flight time data for the Xth second clock cycle. Then, the first to Nth superimposed channels of the K statistical modules complete the input of X*M sets of second initial flight time data for the current second integration period (X clock cycles). When the laser ranging device enters the next second integration period, the K statistical modules again perform the above operation to complete the input of X*M sets of second initial flight time data for the next second integration period (X clock cycles), until the input of second initial flight time data for all required second integration periods is completed.
[0125] It should be noted that when the second control signal output by the control module is in the second state, the nth superposition channel of the kth statistical module among the K statistical modules is used to obtain the nth second initial flight time data in the kth second initial flight time data set {P[0*K+(k-1)], P[1*K+(k-1)], ..., P[(N-1)*K+(k-1)]} of a second clock cycle. In other words, the K statistical modules correspond one-to-one with the K sets of second initial flight time data in each second clock cycle, and the nth superposition channel of the kth statistical module corresponds to the nth second initial flight time data in the N sets of second initial flight time data in each second clock cycle. The K*N superimposed output terminals of the K statistical modules point sequentially to the write terminals of the X memory modules in the memory during each second integration cycle, according to the order of the second clock cycle. That is, each second clock cycle corresponds to one memory module. The K*N superimposed output terminals of the K statistical modules point to the write terminal of the memory module with memory address ax-1 in the x-th clock cycle of each second integration cycle. The read terminals of the X statistical modules of the memory 420 point sequentially to the K*N superimposed feedback terminals of the K statistical modules in the K statistical modules during each second integration cycle, according to the order of the second clock cycle. That is, the read terminal of the memory module with memory address ax-1 points to the K*N superimposed feedback terminals of the K statistical modules in the x-th second clock cycle of each second integration cycle.
[0126] In one example, the structure and function of each statistical module are illustrated by taking the kth statistical module out of the K statistical modules.
[0127] Specifically, when the second control signal output by the control module is in the first state, the laser ranging device is in the first detection mode. The input accumulator included in the k-th statistics module is used to acquire the k-th set of first initial flight time data P[k*NN] to P[k*N-1] in each first clock cycle, and to accumulate the N sets of first initial flight time data P[k*NN] to P[k*N-1] to generate the k-th accumulated photon count value. The first superposition channel included in the k-th statistical module is turned on in the first clock cycle of each first statistical period to store the k-th accumulated photon count value generated by the input accumulator of the k-th statistical module in the first clock cycle of the first statistical period in the corresponding storage unit of the current storage module corresponding to the first statistical period; the n-th superposition channel included in the k-th statistical module is turned on in the n-th clock cycle of each first statistical period to store the k-th accumulated photon count value generated by the input accumulator of the k-th statistical module in the n-th clock cycle of the first statistical period in the corresponding storage unit of the current storage module; the N-th superposition channel included in the k-th statistical module is turned on in the N-th clock cycle of each first statistical period to store the k-th accumulated photon count value generated by the input accumulator of the k-th statistical module in the N-th clock cycle of the first statistical period in the corresponding storage unit of the current storage module; n is a positive integer, and 1≤n≤N.
[0128] When the laser ranging device is in the first detection mode, the time-of-flight statistics device, in each first statistics module, sequentially activates the first superposition channel, the second superposition channel, and so on, up to the Nth superposition channel, according to the N clock cycles of the first statistics period. This achieves the cumulative sampling and storage of the first initial flight time data corresponding to each first statistics period, ensuring that the statistics of the first initial flight time data in each first clock cycle do not interfere with each other. Simultaneously, by repeatedly activating the first superposition channel, the second superposition channel, and so on, up to the Nth superposition channel X times, the cumulative sampling and storage of the first initial flight time data corresponding to each first integration period is achieved. This eliminates the need to increase the number of superposition channels, resulting in a simple structure.
[0129] For example, assuming the number of clock cycles included in the first integration period is N*X, the detection distance L1 that the laser ranging device can achieve in the first integration period is L1 = c*(N*X*t), where c is the speed of light and t is the duration of one clock cycle. The k-th statistical module acquires N*X sets of the first initial flight time data P[k*NN] to P[k*N-1] corresponding to N*X clock cycles in sequence according to the clock cycle, and accumulates and samples the first initial flight time data P[k*NN] to P[k*N-1] within N*X clock cycles to generate N*X accumulated photon count values; the k-th statistical module is also used to store the N*X accumulated photon count values obtained by accumulating and sampling N*X clock cycles corresponding to each first integration period in N*X corresponding storage units under the control of the second control signal output by the control module in the first state. K statistical modules sequentially acquire N*X sets of initial flight time data corresponding to N*X clock cycles, generating N*X*K, or M*X, accumulated photon count values. These accumulated photon count values are then stored in corresponding M*X storage units. When the laser ranging device completes a first integration cycle, the control module stops controlling the K statistical modules until the next first integration cycle begins. At this point, the control module restarts control of the K statistical modules to store the accumulated photon count values obtained from the sampling in the next first integration cycle into their corresponding storage units.
[0130] When the second control signal output by the control module is in the second state, the laser ranging device is in the second detection mode.
[0131] The k-th statistics module is used to obtain the k-th set of second initial flight time data for each second clock cycle within the second integration period. The k-th set of second flight time data includes N second initial flight time data P[(k-1)], ..., P[(k-1)+(N-2)*K] to P[(k-1)+(N-1)*K] from the M second initial flight time data P[0] to P[K*N-1] for each second clock cycle. The N superposition channels of the k-th statistical module are turned on under the action of the second control signal; the first superposition channel of the k-th statistical module is used to store the nth second initial flight time data in the k-th group of second initial flight time data in each second clock cycle in a storage unit of the current storage module; the n-th superposition channel of the k-th statistical module is used to store the nth second initial flight time data in the k-th group of second initial flight time data in each second clock cycle in a storage unit of the current storage module; the N-th superposition channel of the k-th statistical module is used to store the Nth second initial flight time data in the k-th group of second initial flight time data in each second clock cycle in a storage unit of the current storage module, thereby realizing the sampling and storage of the second initial flight time data corresponding to each second clock cycle in each second integration cycle.
[0132] For example, assuming the number of clock cycles included in the second integration period is X, the detection distance L2 = c*(X*t) that the laser ranging device can achieve in the second integration period is L2 = c*(X*t), where c is the speed of light and t is the duration of one clock cycle. The k-th statistical module obtains X sets of second initial flight time data {P[0*K+(k-1)], P[1*K+(k-1)], ..., P[(N-1)*K+(k-1)]} corresponding to X second clock cycles in the second integration period according to the order of the second clock cycles. Under the control of the second control signal output by the control module in the second state, the X sets of second initial flight time data {P[0*K+(k-1)], P[1*K+(k-1)], ..., P[(N-1)*K+(k-1)]} obtained in the X clock cycles corresponding to each second integration period are stored in N*X corresponding storage units. K statistical modules sequentially acquire X sets of second initial flight time data corresponding to X clock cycles, i.e., X*M sets of second initial flight time data, and store them in N*X*K (i.e., X*M) corresponding storage units. When the laser ranging device completes a second integration cycle, the control module stops controlling the K statistical modules until the next second integration cycle arrives. Then, the control module restarts control of the K statistical modules to store the initial flight time data for the next second integration cycle in the corresponding storage units.
[0133] In Example 2, the structures of the first to N-1th overlay channels in each statistical module are identical, but the structure of the Nth overlay channel in each statistical module differs from the structure of the previous N-1 overlay channels. See below for reference. Figure 12 The diagram shows the structure of the kth statistical module among the K statistical modules. Taking the first N-1 overlay channels of the kth statistical module (i.e., the nth overlay channel among the first overlay channel to the N-1th overlay channel) as an example, the specific structure of the first N overlay channels in each statistical module is illustrated. Here, n is a positive integer and 1≤n≤N-1.
[0134] In one possible implementation, the nth overlay channel of each statistical module includes an nth input selection unit, an nth selection unit, an nth accumulation unit, an nth limit saturation unit, an nth output selection unit, an nth write unit, and an nth readout unit.
[0135] Specifically, the nth input selection unit includes two input terminals, one output terminal, and one control terminal. One input terminal is connected to the output terminal of the input accumulator in the statistical module, the other input terminal receives data 0, the output terminal is connected to one input terminal of the nth selection unit, and the control terminal is connected to the output terminal of the first control module in the control module. When the second control signal is in the first state, the nth input selection unit is used to select, according to the second control signal, the accumulated photon count value of the kth group of first initial flight time data corresponding to the nth first clock cycle within each first statistical cycle, and output it to the nth selection unit.
[0136] The nth selection unit includes two input terminals, one output terminal, and one control terminal. One input terminal is used to acquire the nth initial flight time data in the kth group of second initial flight time data in each clock cycle. The kth group of second flight time data includes N initial flight time data P[(k-1)], ..., P[(k-1)+(N-2)*K] to P[(k-1)+(N-1)*K] from M initial flight time data P[0] to P[K*N-1] in each clock cycle. The other input terminal is connected to the output terminal of the nth selection unit, the output terminal is connected to one input terminal of the nth accumulation unit, and the control terminal is connected to the output terminal of the first control module in the control module. Specifically, when the second control signal is in the first state, the nth selection unit is used to select, according to the second control signal, in the nth first clock cycle of each first statistical cycle, to output the accumulated photon count value of the kth group of first initial flight time data corresponding to the nth first clock cycle to the nth accumulation unit; when the second control signal is in the second state, the nth selection unit is used to select, according to the second control signal, in the nth second clock cycle of each second integration cycle, to output the nth second initial flight time data from the kth group of second initial flight time data in the nth second clock cycle to the nth accumulation unit.
[0137] The nth accumulator unit includes two input terminals and one output terminal. One input terminal is connected to the output terminal of the nth selection unit, and the output terminal is connected to the input terminal of the nth limit saturation unit. The nth limit saturation unit includes one input terminal and one output terminal. The input terminal is connected to the output terminal of the nth accumulator unit, and the output terminal is connected to one input terminal of the nth output selection unit.
[0138] The nth output selection unit includes two input terminals, one output terminal, and one control terminal. One input terminal is connected to the output terminal of the nth limit saturation unit, the other input terminal is connected to one output terminal of the nth write unit, the output terminal is connected to the input terminal of the nth write unit, and the control terminal is connected to the output terminal of the second control module in the control module. Specifically, when the second control signal is in the first state, the nth output selection unit outputs the data from the nth limit saturation unit to the nth write unit in the nth first clock cycle of each first statistical period, according to the first control signal. When the second control signal is in the second state, the nth output selection unit outputs the data from the nth write unit to the nth write unit in the nth second clock cycle, according to the second control signal.
[0139] The nth write unit includes one input terminal and two output terminals. The input terminal is connected to the output terminal of the nth output selection unit, one of the output terminals is connected to the other input terminal of the nth output selection unit, and the other output terminal is connected to the memory. The nth read unit includes one input terminal and one output terminal. The input terminal is connected to the memory, and the output terminal is connected to the other input terminal of the nth accumulator unit.
[0140] refer to Figure 12 In one possible implementation, the Nth overlay channel of each statistical module includes an Nth input selection unit, an Nth selection unit, an Nth accumulation unit, an Nth limit saturation unit, an Nth write unit, and an Nth readout unit.
[0141] Specifically, the Nth input selection unit includes two input terminals, one output terminal, and one control terminal. One input terminal is connected to the output terminal of the input accumulator of the statistical module, the other input terminal receives data 0, the output terminal is connected to one input terminal of the Nth selection unit, and the control terminal is connected to the output terminal of the first control module in the control module. When the second control signal is in the first state, the Nth input selection unit is used to select, according to the second control signal in the first state, the accumulated photon count value of the kth group of first initial flight time data corresponding to the Nth first clock cycle within each first statistical cycle, and output it to the Nth selection unit.
[0142] The Nth selection unit includes two input terminals, one output terminal, and one control terminal. One input terminal is used to acquire the Nth initial flight time data in the kth group of second initial flight time data in each clock cycle. The kth group of second flight time data includes N initial flight time data P[(k-1)], ..., P[(k-1)+(N-2)*K] to P[(k-1)+(N-1)*K] from M initial flight time data P[0] to P[K*N-1] in each clock cycle. The other input terminal is connected to the output terminal of the Nth selection unit, the output terminal is connected to one input terminal of the Nth accumulation unit, and the control terminal is connected to the output terminal of the first control module in the control module. Specifically, when the second control signal is in the first state, the Nth selection unit is used to select, according to the second control signal in the first state, the accumulated photon count value of the kth group of first initial flight time data corresponding to the Nth first clock cycle in each first statistical cycle and output it to the Nth accumulation unit. When the second control signal is in the second state, the Nth selection unit is used to select, according to the second control signal in the second state, the Nth second clock cycle in each second integration cycle, the Nth second initial flight time data of the kth group of second initial flight time data in the Nth second clock cycle and output it to the Nth accumulation unit.
[0143] The Nth accumulator unit includes two input terminals and one output terminal. One input terminal is connected to the output terminal of the Nth selection unit, and the output terminal is connected to the input terminal of the Nth limit saturation unit. The Nth limit saturation unit includes one input terminal and one output terminal. The input terminal is connected to the output terminal of the Nth accumulator unit, and the output terminal is connected to one input terminal of the Nth output selection unit. The Nth write unit includes one input terminal and two output terminals. The input terminal is connected to the output terminal of the Nth output selection unit, one of the output terminals is connected to the other input terminal of the Nth output selection unit, and the other output terminal is connected to the memory. The Nth read unit includes one input terminal and one output terminal. The input terminal is connected to the memory, and the output terminal is connected to the other input terminal of the Nth accumulator unit.
[0144] In one example, when the second control signal output by the control module is in the first state, the laser ranging device is in the first detection mode. If N=2, that is, the number of superimposed channels included in each statistical module is two; each first integration cycle includes X first statistical cycles, and the number of first clock cycles included in each first statistical cycle is two, that is, the number of first clock cycles included in each first integration cycle is 2*X; then for S first integration cycles, the specific workflow of the first superimposed channels to the Nth superimposed channels of the K statistical modules in the S first integration cycles includes the following steps:
[0145] Step s2x1: When the second control signal output by the control module is in the first state, the laser ranging device is in the first detection mode. The input accumulators of the K statistical modules respectively acquire K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ..., {P[K*NN] to P[K*N-1]} within the first clock cycle of the first first integration cycle of the first first integration cycle of the S first integration cycles, and process the K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ..., {P[K*NN] to P[K*N-1]}, ..., {P[K*NN] to P[K*N-1]}. The K-1]} are accumulated, where x is a positive integer and 1≤x≤X, generating K accumulated photon count values within the first clock cycle. Under the action of the second control signal output by the control module (in the first state), the first input selection units of the K statistical modules allow the K accumulated photon count values accumulated by the corresponding K input accumulators within the first clock cycle to pass through and output. Under the action of the second control signal output by the control module, the second to Nth input selection units of the K statistical modules prohibit the accumulation of the K accumulated photon count values within the first clock cycle through the K input accumulators, and instead allow the data 0 to pass through and output. Under the action of the second control signal output by the control module (in the first state), the first selection units of the K statistical modules allow the K accumulated photon count values accumulated within the first clock cycle output by the corresponding K first input selection units to pass through and output. K accumulated photon count values output from K first selection units are sequentially passed through the first accumulation unit of the first superposition channel and output to the first limiting saturation unit of the first superposition channel. The first limiting saturation unit is used to limit the bit width of the accumulated flight time corresponding to the accumulated photon count value that can pass through. If the bit width of the accumulated flight time corresponding to the accumulated photon count value input to the first limiting saturation unit does not exceed the limiting bit width of the first limiting saturation unit, the first limiting saturation unit allows the accumulated photon count value to pass through and outputs it to the first output selection unit. Under the control of the combined control signal output by the control module, the first output selection unit allows the accumulated photon count value to pass through and outputs it to the first write unit in the first superposition channel. If the bit width of the accumulated flight time in the accumulated photon count value input to the first limiting saturation unit exceeds the limiting bit width of the first limiting saturation unit, the first limiting saturation unit prohibits the accumulated photon count value from passing through.
[0146] Step s2x2: When the second control signal output by the control module is in the first state, the laser ranging device is in the first detection mode. The input accumulators of the K statistical modules respectively acquire the K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ..., {P[K*NN] to P[K*N-1]} within the second first clock cycle of the xth first statistical cycle of the first first integration cycle, and process the K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ..., {P[K*NN] to P[K*N-1]}, ..., {P[K*NN] to P[K*N-1]}, ..., {P[K*NN] to P[K*N-1]}, ... [1] The K statistical modules perform accumulation processing to generate K accumulated photon count values within the first clock cycle. Under the action of the second control signal output by the control module in the first state, the second input selection unit of the K statistical modules allows the K accumulated photon count values accumulated by the corresponding K input accumulators within the second clock cycle to pass through and output. Under the action of the second control signal output by the control module in the first state, the first input selection unit and the third to Nth input selection units of the K statistical modules prohibit the accumulation of the K accumulated photon count values within the second clock cycle through the K input accumulators, and instead allow the data 0 to pass through and output. Under the action of the second control signal output by the control module in the first state, the second selection unit of the K statistical modules allows the K accumulated photon count values accumulated within the second clock cycle output by the corresponding K second input selection units to pass through and output. The K accumulated photon count values output from the K second selection units are sequentially passed through the second accumulation unit of the second superposition channel and output to the second limit saturation unit of the second superposition channel. The second limit saturation unit is used to limit the bit width of the accumulated flight time in the accumulated photon count values that can pass through. If the bit width of the accumulated flight time in the accumulated photon count values input to the second limit saturation unit does not exceed the limit bit width of the second limit saturation unit, the second limit saturation unit allows the accumulated photon count value to pass through and outputs it to the second output selection unit. Under the control of the combined control signal output by the control module, the second output selection unit allows the accumulated photon count value to pass through and outputs it to the second write unit in the second superposition channel. If the bit width of the accumulated flight time in the accumulated photon count values input to the second limit saturation unit exceeds the limit bit width of the second limit saturation unit, the second limit saturation unit prohibits the accumulated photon count value from passing through.
[0147] Step s2x3: When the second control signal output by the control module is in the first state, the laser ranging device is in the first detection mode. If the first to Nth write units of the K statistical modules store the N*K accumulated photon count values obtained by accumulating the K input accumulators in the xth first statistical cycle of the first first integration cycle in the N*K storage units (i.e., M storage units) of the current storage module (i.e., the x-1th storage module), then the first to Nth write units of the K statistical modules point to the next storage module (i.e., the xth storage module). (block), the input accumulators of K statistical modules continue to acquire the initial flight time data of the (x+1)th statistical cycle of the first integration cycle. The first and second overlay channels of the K statistical modules repeat steps s2x1 and s2x2 X times, until the first and second overlay channels of the K statistical modules sequentially complete {steps S211, S212}, ... {steps S2x1, S2x2}, ..., up to {steps S2X1, S2X2} within the X statistical cycles of the first integration cycle. Reference Figure 7 The diagram shows the storage of flight time data within the first integration period. The first to second overlay channels of the K statistical modules sequentially complete the accumulation sampling of K sets of first initial flight time data {P0 to P[N-1]}, ..., {P[k*NN] to P[k*N-1]}, ..., {P[K*NN] to P[K*N-1]} in each of the X*N first statistical periods of the first first integration period. The resulting X*N*K accumulated photon count values corresponding to the X*N first clock periods are stored in X*N*K storage units (i.e., X*M storage units) of the X storage modules, thus completing the accumulation sampling and storage of the first initial flight time data for the X first statistical periods of the first first integration period.
[0148] After completing the cumulative sampling and storage of all first initial flight time data for the X statistical cycles of the first first integration cycle in the S first integration cycles based on the above steps s2x1 to s2x3, when the first to second superposition channels of the K statistical modules enter the second first integration cycle, the accumulated photon count values of the same accumulated flight time in the first first integration cycle are sequentially read from the storage and output to the first to Nth accumulation units of the K statistical modules to perform the first superposition of the accumulated photon count values of the same accumulated flight time in the first and second first integration cycles, thereby obtaining the first superimposed flight time data set. The resulting X*N*K first superimposed photon count values corresponding to X*N clock cycles are stored in the X*N*K storage units of the X storage modules. The specific superposition steps can be referred to the relevant description in Implementation 1, and will not be repeated here.
[0149] In another example, when the second control signal output by the control module is in the second state, the laser ranging device is in the second detection mode. If N=2, each second integration cycle includes X second statistical cycles, and each second statistical cycle includes one second clock cycle, meaning the number of second clock cycles included in each second integration cycle is 2*X. Then, for S second integration cycles, the specific workflow of the first to Nth superposition channels of the K statistical modules in each of the S second integration cycles includes the following steps:
[0150] Step s3x1: When the second control signal output by the control module is in the second state, the laser ranging device is in the second detection mode. In the first second clock cycle within the first second integration period, the first selection unit of the K statistical modules is used to acquire the first initial flight time data in each of the K groups of second initial flight time data within the first second clock cycle. Under the action of the second control signal output by the control module in the second state, the first initial flight time data in each group of second initial flight time data is selected and output to the corresponding first limit saturation unit. If the bit width of the flight time corresponding to the second initial flight time data input to the first limit saturation unit does not exceed the limit bit width of the first limit saturation unit, the first limit saturation unit allows the first initial flight time data in each group of second initial flight time data within the first second clock cycle to be passed through and output to the first output selection unit. Under the control of the combined control signal output by the control module, the first output selection unit allows the first initial flight time data in each group of second initial flight time data within the first second clock cycle to be passed through and output to the first writing unit in the first superposition channel.
[0151] The second selection units of the K statistical modules respectively acquire the second initial flight time data from each of the K groups of second initial flight time data within the first second clock cycle. Under the action of the second control signal output by the control module in the second state, they select the second initial flight time data from each group of second initial flight time data and output it to the corresponding second limit saturation unit. If the bit width of the flight time corresponding to the second initial flight time data input to the second limit saturation unit does not exceed the limit bit width of the second limit saturation unit, the first limit saturation unit allows the second initial flight time data from each group of second initial flight time data within the first second clock cycle to be passed through and output to the second output selection unit. Under the control of the combined control signal output by the control module, the second output selection unit allows the second initial flight time data from each group of second initial flight time data within the first second clock cycle to be passed through and output to the second write unit in the second superposition channel.
[0152] Step s3x2: When the second control signal output by the control module is in the second state, the laser ranging device is in the second detection mode. In the second second clock cycle within the first second integration cycle, the first selection unit of the K statistical modules is used to acquire the first second initial flight time data in each of the K groups of second initial flight time data within the second second clock cycle. Under the action of the second control signal output by the control module in the second state, the first second initial flight time data in each group of second initial flight time data is selected and output to the corresponding first limit saturation unit. If the bit width of the flight time corresponding to the second initial flight time data input to the first limit saturation unit does not exceed the limit bit width of the first limit saturation unit, the first limit saturation unit allows the first second initial flight time data in each group of second initial flight time data within the second second clock cycle to the first output selection unit. Under the control of the combined control signal output by the control module, the first output selection unit allows the first second initial flight time data in each group of second initial flight time data within the second second clock cycle to the first write unit in the first superposition channel.
[0153] The second selection units of the K statistical modules respectively acquire the second initial flight time data from each of the K groups of second initial flight time data within the second second clock cycle. Under the action of the second control signal output by the control module in the second state, they select the second initial flight time data from each group of second initial flight time data and output it to the corresponding second limit saturation unit. If the bit width of the flight time corresponding to the second initial flight time data input to the second limit saturation unit does not exceed the limit bit width of the second limit saturation unit, the first limit saturation unit allows the passage and outputs the second initial flight time data from each group of second initial flight time data within the second second clock cycle to the second output selection unit. Under the control of the combined control signal output by the control module, the second output selection unit allows the passage and outputs the second initial flight time data from each group of second initial flight time data within the second second clock cycle to the second write unit in the second superposition channel.
[0154] Step s3x3: If the first to Nth write units of the K statistical modules store the N*K second initial flight time data obtained by the first to Nth selection units in the xth second clock cycle of the first second integration period into the N*K storage units (i.e., M storage units) of the current storage module (i.e., the (x-1)th storage module), then the first to Nth write units of the K statistical modules point to the next storage module (i.e., the xth storage module), and the first to Nth selection units of the K statistical modules continue to acquire the second initial flight time data in the (x+1)th second clock cycle of the first second integration period. The first to second overlay channels repeat steps s3x1 and s3x2 above X times until the first to second overlay channels of the K statistical modules sequentially complete {steps S311, S312}, ... {steps S3x1, S3x2}, ..., up to {steps S3X1, S3X2} within X second clock cycles of the first second integration period. (Reference) Figure 13 The diagram shows the storage of the second initial flight time data within the second integration period. The first to second overlay channels of the K statistical modules sequentially store the M second initial flight time data of each clock cycle in the X second clock cycles of the first second integration period into the X*N*K storage units (i.e., X*M storage units) of the X storage modules, thus completing the storage of the second initial flight time data for the X second clock cycles of the first second integration period.
[0155] After sampling and storing all the second initial flight time data in the first second integration cycle based on the above steps s3x1 to s3x3, when the first superposition channel to the second superposition channel of the K statistical modules enter the second second integration cycle, the second initial flight time data of the same flight moment in the same second clock cycle of the first second integration cycle are read from the storage in sequence and output to the first to the Nth accumulation unit of the K statistical modules to perform the first superposition of the second initial flight time data of the same flight moment in the first second integration cycle and the second second integration cycle, so as to obtain the first superimposed flight time data set, and store the X*M second superimposed photon count values corresponding to the X second clock cycles in the X*M storage units of the X storage modules.
[0156] In one optional implementation, the nth selection unit in each statistics module includes a data selector MUXn_, which is a 2-to-1 data selector. The data selector MUXn_ includes two data input terminals, one data output terminal, and one selection input terminal. One data input terminal of the nth data selector MUXn_ is connected to the output terminal of the nth input selection unit in its respective statistics module, the other data input terminal is used to acquire second initial flight time data, the data output terminal is connected to one input terminal of the nth accumulator in its respective statistics module, and the selection input terminal is connected to the signal output terminal of the control module.
[0157] When the second control signal output by the control module is in the first state, the laser ranging device is in the first detection mode. Under the action of the second control signal in the first state, the data selector MUXn_ selects and outputs the accumulated photon count value output by the nth input selection unit in the nth clock cycle of each statistical cycle. When the second control signal output by the control module is in the second state, the laser ranging device is in the second detection mode. Under the action of the second control signal in the second state, the data selector MUXn_ selects and outputs the corresponding second initial flight time data.
[0158] References are provided as examples, not as limitations. Figure 14 A schematic diagram of the specific structure of a flight time statistics device is shown. Figure 15 The first integration period and the second integration period are shown in (a) and (b) in the figure. Figure 15 The control module outputs a clock cycle control signal `clock`, which defines a consecutive high-level and low-level signal as one clock cycle. `sta_vld` is a signal used to control the duration of the integration cycle; `sta_vld` is high within one integration cycle. `mem_wen` represents periodically alternating low and high levels, defining a consecutive low-level and high-level signal as one statistical cycle. Assume M = 4, N = 2, K = 2. The flight time statistics device includes two statistical modules: a first statistical module and a second statistical module. Each statistical module includes two overlay channels. The first integration cycle comprises X first statistical cycles, and each statistical cycle includes two first clock cycles: the first first clock cycle and the second first clock cycle. Therefore, each first integration cycle includes 2*X clock cycles. The second integration cycle comprises X second statistical cycles, and each second statistical cycle includes one second clock cycle. Therefore, each second integration cycle includes X second clock cycles. Each storage module includes four storage units.
[0159] (1) When the second control signal output by the control module is in the first state and the laser ranging device is in the first detection mode:
[0160] When the first statistical module and the second statistical module obtain two sets of first initial flight time data {P0, P1} and {P2, P3} in the first clock cycle of the xth statistical cycle within the first integration period, the input accumulator A1 of the first statistical module and the input accumulator A4 of the second statistical module respectively accumulate the two sets of first initial flight time data {P0, P1} and {P2, P3} input in the first clock cycle of the xth first statistical cycle to generate the first accumulated photon count value P01 and the second accumulated photon count value P23 corresponding to the first clock cycle.
[0161] Under the action of the second control signal, the first data selector MUX1 and the first selector MUX1_ corresponding to the first input selection unit of the first statistical module select the first accumulated photon count value P01 corresponding to the first clock cycle. If the first accumulated photon count value P01 corresponding to the first clock cycle does not exceed the limit bit width of the first limit saturation unit included in the first statistical module, the data selector MUX_1 corresponding to the first output selection unit of the first statistical module selects the data output by the first limit saturation unit included in the first statistical module, i.e., the first accumulated photon count value P01, under the action of the combined control signal, and outputs it to the first write unit hist_wdat0 of the first statistical module. Under the action of the second control signal, the first data selector MUX1 and the first selector MUX1_ corresponding to the first input selection unit of the second statistical module select the second accumulated photon count value P23 corresponding to the first clock cycle. The data selector MUX1 corresponding to the first input selection unit of the second statistical module and the first selector MUX1_ under the action of the second control signal select the second accumulated photon count value P23 corresponding to the first clock cycle. If the second accumulated photon count value P23 corresponding to the first clock cycle does not exceed the limit bit width of the first limit saturation unit included in the second statistical module, the data selector MUX_2 corresponding to the first output selection unit of the second statistical module selects the data output by the first limit saturation unit included in the second statistical module, namely the second accumulated photon count value P23, under the action of the combined control signal, and outputs it to the first write unit hist_wdat1 of the second statistical module.
[0162] When the first statistical module and the second statistical module obtain two sets of flight time data {P0, P1} and {P2, P3} in the second first clock cycle of the xth statistical cycle within the first integration period: the input accumulator A1 of the first statistical module and the input accumulator A4 of the second statistical module accumulate the two sets of first initial flight time data {P0, P1} and {P2, P3} input in the second first clock cycle of the xth second statistical cycle, respectively, to generate the first accumulated photon count value P01 and the second accumulated photon count value P23 corresponding to the second first clock cycle.Under the action of the second control signal, the data selector MUX1 corresponding to the first input selection unit of the first statistical module and the data selector MUX1_ corresponding to the first selection unit are allowed to pass through and output data 0. Under the action of the combined control signal, the data selector MUX_1 corresponding to the first output selection unit of the first statistical module is allowed to pass through and output the data temporarily stored in the first write unit of the first statistical module, that is, the first accumulated photon count value P01 corresponding to the second first clock cycle is output to the first write unit of the first statistical module. The data selector MUX2 corresponding to the second input selection unit of the first statistical module and the data selector MUX2_ corresponding to the first selection unit are allowed to pass through and output the data temporarily stored in the first write unit of the first statistical module under the action of the control signal. Next, select the first accumulated photon count value P01 corresponding to the second first clock cycle. If the first accumulated photon count value P01 corresponding to the second clock cycle does not exceed the limit bit width of the second limit saturation unit included in the first statistics module, the second limit saturation unit included in the first statistics module outputs the first accumulated photon count value P01 corresponding to the second first clock cycle. Under the action of the combined control signal, the data selector MUX_1_ corresponding to the second output selection unit of the first statistics module selects to acquire the data output by the second limit saturation unit included in the first statistics module, that is, the first accumulated photon count value P01 corresponding to the second first clock cycle, and outputs it to the second writing unit hi of the first statistics module. st_wdat2; Under the action of the second control signal, the data selector MUX1 corresponding to the first input selection unit of the second statistical module and the first selection unit MUX1_ are allowed to pass through and output data 0. Under the action of the combined control signal, the data selector MUX1_ corresponding to the first output selection unit of the second statistical module is allowed to pass through and output the data temporarily stored in the first writing unit of the second statistical module, that is, the second accumulated photon count value P23 corresponding to the first clock cycle is output to the first writing unit of the second statistical module. Under the action of the second control signal, the data selector MUX2 corresponding to the second input selection unit of the second statistical module and the first selection unit MUX2_ select the second input. If the second accumulated photon count value P23 corresponding to the first clock cycle does not exceed the limit bit width of the second limit saturation unit included in the second statistical module, the second limit saturation unit included in the second statistical module outputs the second accumulated photon count value P23 corresponding to the second clock cycle. Under the action of the combined control signal, the data selector MUX_2 corresponding to the second output selection unit of the second statistical module obtains the data output by the second limit saturation unit included in the second statistical module, that is, the second accumulated photon count value P23 corresponding to the second clock cycle, and outputs it to the second writing unit hist_wdat3 of the second statistical module.
[0163] At this time, the first writing unit of the first statistical module temporarily stores the first accumulated photon count value P01 corresponding to the first first clock cycle within the first integration period, and the first writing unit of the second statistical module temporarily stores the second accumulated photon count value P23 corresponding to the first first clock cycle; the second writing unit of the first statistical module temporarily stores the first accumulated photon count value P01 corresponding to the second first clock cycle, and the second writing unit of the second statistical module temporarily stores the second accumulated photon count value P23 corresponding to the second first clock cycle; the first writing unit and the second writing unit of the first statistical module and the first writing unit and the second writing unit of the second statistical module write the four accumulated photon count values obtained by accumulating the input accumulators of the two statistical modules within two first clock cycles of the x-th first statistical period (i.e., the first accumulated photon count value P01 corresponding to the first first clock cycle of the x-th statistical period, the second accumulated photon count value P23, the first accumulated photon count value P01 corresponding to the second first clock cycle of the x-th statistical period, and the second accumulated photon count value P23) into the storage module with the storage address ax-1.
[0164] In this embodiment, when the storage module with the storage address ax-1 is written with the four accumulated photon count values corresponding to the x-th first statistical period by the two first statistical modules, and x < X, the first writing unit and the second writing unit of the first statistical module and the first writing unit and the second writing unit of the second statistical module point to the storage module with the storage address ax. The first statistical module and the second statistical module continue to perform the accumulation sampling of the first initial flight time data of the (x + 1)-th first statistical period of the current first integration period and store it in the storage module with the storage address ax; when the storage module with the storage address aX-1 (here X is in uppercase) is written with the four accumulated photon count values corresponding to the X-th first statistical period by the two statistical modules, that is, after the first statistical module and the second statistical module complete the accumulation sampling and storage of the first initial flight time data of the first integration period, the control module stops outputting the control signal until the next first integration period arrives, and the control module performs the accumulation sampling and storage of the first initial flight time data of X statistical periods within the first integration period again.
[0165] It should be noted that when the statistics department executes the operation of the next first integration cycle, the first readout unit of the first statistics module is used to read and output the first accumulated photon count value P01 corresponding to the first clock cycle of the xth first statistical cycle of the previous first integration cycle to the first accumulation unit of the first statistics module in the xth first statistical cycle of the next first integration cycle; the first readout unit of the second statistics module is used to read and output the second accumulated photon count value P23 corresponding to the first clock cycle of the xth first statistical cycle of the previous first integration cycle to the first accumulation unit of the second statistics module in the xth statistical cycle of the next first integration cycle; the second readout unit of the first statistics module is used to read and output The first accumulated photon count value P01 corresponding to the second clock cycle of the xth first statistical cycle of the previous first integration cycle is given to the second accumulation unit of the first statistical module; the second readout unit of the second statistical module is used to read and output the second accumulated photon count value P23 corresponding to the second clock cycle of the xth first statistical cycle of the previous first integration cycle to the second accumulation unit of the second statistical module in the xth first statistical cycle of the next first integration cycle, so as to realize the superposition of the second accumulated photon count values corresponding to multiple first integration cycles, until the input accumulators of K statistical modules complete the accumulation sampling of the first initial flight time data of the Sth first integration cycle, and K statistical modules complete the superposition of the second accumulated photon count values corresponding to all first integration cycles to generate the final histogram data.
[0166] (2) When the second control signal output by the control module is in the second mode and the laser ranging device is in the second detection mode:
[0167] The first and second statistical modules respectively acquire two sets of second initial flight time data {P0, P2} and {P1, P3} in the first second clock cycle within the second integration period. Under the action of the second control signal in the second mode, the first selector MUX1_ of the first statistical module selects the first second initial flight time data P0 in the first set of second initial flight time data corresponding to the first second clock cycle. If the second initial flight time data P0 does not exceed the limit bit width of the first limit saturation unit included in the first statistical module, the data selector MUX_1 corresponding to the first output selection unit of the first statistical module selects the data output by the first limit saturation unit included in the first statistical module, i.e., the first second initial flight time data P0 in the first set of second initial flight time data corresponding to the first second clock cycle, under the action of the combined control signal, and outputs it to the first write unit hist_wdat0 of the first statistical module.
[0168] Under the action of the second control signal in the second mode, the second selector MUX2 of the first statistical module selects the first initial flight time data P1 in the second group of second initial flight time data corresponding to the first second clock cycle. If the second initial flight time data P1 does not exceed the limit bit width of the first limit saturation unit included in the first statistical module, the data selector MUX_1 corresponding to the second output selection unit of the first statistical module selects the data output by the first limit saturation unit included in the first statistical module, i.e., the first initial flight time data P1 in the second group of second initial flight time data corresponding to the first second clock cycle, under the action of the combined control signal, and outputs it to the second write unit hist_wdat1 of the first statistical module.
[0169] Under the action of the second control signal in the second mode, the first selector MUX1 of the second statistical module selects the second initial flight time data P2 in the first group of second initial flight time data corresponding to the first second clock cycle. If the second initial flight time data P2 does not exceed the limit bit width of the first limit saturation unit included in the second statistical module, the data selector MUX_1 corresponding to the first output selection unit of the second statistical module selects the data output by the first limit saturation unit included in the second statistical module, i.e., the second initial flight time data P2 in the first group of second initial flight time data corresponding to the first second clock cycle, under the action of the combined control signal, and outputs it to the first write unit hist_wdat2 of the second statistical module.
[0170] The second selector MUX2_ of the second statistical module selects the second second initial flight time data P3 in the second set of second initial flight time data corresponding to the first second clock cycle under the action of the second control signal. If the second initial flight time data P3 does not exceed the limit bit width of the second limit saturation unit included in the second statistical module, the data selector MUX_1 corresponding to the first output selection unit of the second statistical module selects the data output by the second limit saturation unit included in the second statistical module, that is, the second second initial flight time data P3 in the second set of second initial flight time data corresponding to the first second clock cycle, and outputs it to the second write unit hist_wdat3 of the second statistical module. In this embodiment, when the storage module with the storage address ax-1 (x is lowercase here) is stored with the four second initial flight time data corresponding to the xth second clock cycle within the second integration period, and x < X, the first write unit and the second write unit of the first statistical module and the first write unit and the second write unit of the second statistical module point to the storage module with the storage address ax. The first statistical module and the second statistical module continue to execute to obtain the four second initial flight time data of the (x + 1)th second clock cycle of the current second integration period and store them in the storage module with the storage address ax; when the storage module with the storage address aX-1 (X is uppercase here) is written with the four second initial flight time data corresponding to the Xth second clock cycle by the two statistical modules, that is, after the first statistical module and the second statistical module complete the storage of the second initial flight time data of the current second integration period, the control module stops outputting the control signal until the next second integration period arrives, and the control module executes the storage operation of the second initial flight time data of X second clock cycles within the second integration period again.
[0171] It should be noted that when the statistics department executes the operation of the next second integration cycle, the first readout unit of the first statistics module is used to read and output the first second initial flight time data P0 corresponding to the xth second clock cycle of the previous second integration cycle to the first accumulation unit of the first statistics module at the xth second clock cycle of the next second integration cycle; the first readout unit of the second statistics module is used to read and output the second second initial flight time data P1 corresponding to the xth second clock cycle of the previous second integration cycle to the first accumulation unit of the second statistics module at the xth second clock cycle of the next second integration cycle; the second readout unit of the first statistics module is used to read and output the second initial flight time data P1 corresponding to the xth second clock cycle of the previous second integration cycle at the xth second clock cycle of the next second integration cycle. The third initial flight time data P2 corresponding to the xth second clock cycle of the second integration period is fed to the second accumulation unit of the first statistical module; the second readout unit of the second statistical module is used to read and output the fourth initial flight time data P3 corresponding to the xth second clock cycle of the previous second integration period to the second accumulation unit of the second statistical module at the xth second clock cycle of the next second integration period, so as to realize the superposition of the second initial flight time data corresponding to multiple first integration periods, until the input accumulators of K statistical modules complete the accumulation sampling of the second initial flight time data of the Sth second integration period, and K statistical modules complete the superposition of the second initial flight time data corresponding to all second integration periods, generating the final histogram data.
[0172] In one possible implementation, based on the same inventive concept and according to the flight time statistics device provided in Embodiment 1 above, this application embodiment also provides a flight time statistics method. The method includes: acquiring S first initial flight time data sets within S first integration periods, and performing cumulative processing on each first initial flight time data set by grouping N adjacent first initial flight time data sets to obtain S cumulative flight time data sets corresponding one-to-one with the S first initial flight time data sets, where S is a positive integer, S≥2, and N is a positive integer, N≥2; each first initial flight time data set includes multiple first initial flight time data corresponding one-to-one with multiple flight times, and each cumulative flight time data set includes at least one cumulative photon count value corresponding one-to-one with at least one cumulative flight time; performing superposition processing on the S cumulative flight time data sets to obtain a superimposed flight time data set, and storing the superimposed flight time data set in a memory by storing at least one superimposed photon count value in a storage unit, wherein the superimposed flight time data set includes a superimposed photon count value corresponding one-to-one with each cumulative flight time.
[0173] In one possible implementation, based on the same inventive concept and according to the flight time statistics device provided in Embodiment 2 above, this application embodiment also provides a flight time statistics method, the method comprising: in a first detection mode, acquiring S first initial flight time data sets within S first integration periods, and accumulating each first initial flight time data set by grouping every N adjacent first initial flight time data sets to obtain S accumulated flight time data sets corresponding one-to-one with the S first initial flight time data sets, where S is a positive integer, S≥2, and N is a positive integer, N≥2; each first initial flight time... The time data set includes multiple first initial flight time data corresponding to multiple flight times one-to-one. Each accumulated flight time data set includes at least one accumulated photon count value corresponding to at least one accumulated flight time. The S accumulated flight time data sets are superimposed to obtain a superimposed flight time data set. At least one superimposed photon count value in the superimposed flight time data set is stored in the memory in a way that each superimposed photon count value is stored in a storage unit. The superimposed flight time data set includes a superimposed photon count value corresponding to each accumulated flight time. In the second detection mode, S sets of second initial flight time data within S second integration periods are acquired, and the S sets of second initial flight time data are superimposed to obtain a second superimposed flight time data set. The second superimposed flight time data set is stored in the memory by storing at least one second superimposed photon count value in each storage unit. The second superimposed flight time data set includes the second superimposed photon count value corresponding to each flight time, and each second initial flight time data set includes second initial flight time data corresponding to multiple flight times one by one.
[0174] It should be noted that the specific implementation process of the flight time statistics method embodiment can refer to the specific working process of each module in the flight time statistics device in Embodiments 1 and 2 above, and will not be repeated here. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, only the above division of functional units and modules is used as an example. In actual applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. Each functional unit and module in the embodiment can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or software functional units. In addition, the specific names of each functional unit and module are only for easy distinction and are not used to limit the scope of protection of this application. Based on the same inventive concept, the embodiments of this application also provide a terminal device. The embodiments of this application also provide a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the specific process of the above statistical method embodiment. This application also provides a computer program product that, when run on a photon counting laser ranging device, enables the photon counting laser ranging device to execute the specific process of the above-described statistical method embodiment.
[0175] If the integrated units described above are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable storage medium can include at least: any entity or device capable of carrying the computer program code to a photographing device / terminal device, a recording medium, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium. Examples include USB flash drives, portable hard drives, magnetic disks, or optical disks.
[0176] References to "one embodiment" or "some embodiments" in this application mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized. In the description of this application, it should be understood that the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. Furthermore, in this application, unless otherwise expressly specified and limited, the terms "connection" and "linkage" should be interpreted broadly. For example, they can refer to mechanical connections or electrical connections; they can refer to direct connections or indirect connections through an intermediate medium; they can refer to the internal connection of two components or the interaction between two components. Unless otherwise expressly limited, those skilled in the art can understand the specific meaning of the above terms in this application according to the specific circumstances.
[0177] The above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features therein. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
Claims
1. A flight time statistics device, characterized in that, include: Statistics department and memory; The statistics department is used to obtain S sets of first initial flight time data within S first integration periods, and to accumulate each first initial flight time data set by grouping N adjacent first initial flight time data sets to obtain S sets of accumulated flight time data that correspond one-to-one with the S sets of first initial flight time data sets, where S is a positive integer, S≥2, and N is a positive integer, N≥2. Each of the first initial flight time data sets includes multiple first initial flight time data corresponding to multiple flight times, and each of the accumulated flight time data sets includes at least one accumulated photon count value corresponding to at least one accumulated flight time. The statistics department is also used to perform superposition processing on the S accumulated flight time data sets to obtain superimposed flight time data sets, and to store at least one superimposed photon count value in the superimposed flight time data set in the memory in such a way that each superimposed photon count value is stored in a storage unit. The superimposed flight time data set includes superimposed photon count values that correspond one-to-one with each of the accumulated flight times.
2. The flight time statistics device according to claim 1, characterized in that, Each first integration cycle includes X*N clock cycles, and each clock cycle includes M first initial flight time data, where X≥2, M≥2, and X and M are both positive integers. The statistics department includes: a control module and K statistical modules connected in parallel; The control module is used to output a first control signal; The K statistical modules are used to acquire K sets of first initial flight time data within each clock cycle of each first integration period, and according to the first control signal, to accumulate N sets of first initial flight time data in each set of first initial flight time data to obtain S sets of accumulated flight time data corresponding one-to-one with the S first integration periods, M=K*N, K≥1, and K is a positive integer; The K statistical modules are also used to perform superposition processing on the S accumulated flight time data sets to obtain the superimposed flight time data set, and to store the superimposed flight time data set in the memory according to the first control signal, storing at least one superimposed photon count value in the superimposed flight time data set in a storage unit as one superimposed photon count value.
3. The flight time statistics device according to claim 2, characterized in that, The K statistical modules are further configured to, according to the first control signal, divide the X*N clock cycles within each first integration cycle into a statistical cycle, and store the N*K accumulated photon count values corresponding to the N*K groups of first initial flight time data included in the N clock cycles within a statistical cycle into a storage module. The memory includes X storage modules, each storage module includes N*K storage units, and the N*K storage units in each storage module are used to store N*K accumulated photon count values corresponding to N clock cycles within a statistical period.
4. The flight time statistics device according to claim 2 or 3, characterized in that, Each of the statistical modules includes an input accumulator and N overlay channels connected in parallel; The input accumulator includes N input terminals and one output terminal. The K input accumulators in the K statistical modules are used to obtain K sets of first initial flight time data for each clock cycle within each first integration period, and to perform accumulation processing on each set of initial flight time data in the K sets of first initial flight time data to generate an accumulated flight time data set corresponding to each first integration period. Each of the superposition channels includes a first superposition input terminal, a superposition output terminal, and a superposition feedback terminal; The N first superposition input terminals of the N superposition channels are connected to the output terminal of the input accumulator; the N first superposition input terminals are used to receive, one by one, the N*K accumulated photon count values generated by the input accumulator in each statistical period of each first integration period according to the first control signal; The N first superposition output terminals of the N superposition channels are connected to the write terminal of the memory; the N superposition output terminals are used to store the N*K accumulated photon count values generated by the input accumulator in each statistical cycle of each first integration cycle in the N*K storage units of the memory according to the first control signal. The N superposition feedback terminals of the N superposition channels are connected to the output terminals of the N storage cells in the memory, which correspond one-to-one with the N first superposition output terminals.
5. The flight time statistics device according to claim 4, characterized in that, For the N overlay channels of the kth statistical module among the K statistical modules, the nth overlay channel among the first N-1 overlay channels of the N overlay channels includes the nth input selection unit, the nth accumulation unit, the nth limit saturation unit, the nth output selection unit, the nth write unit and the nth readout unit, where n is a positive integer and 1≤n≤N-1, and k is a positive integer and 1≤k≤K; The nth input selection unit includes two input terminals, one output terminal, and one control terminal; one input terminal of the nth input selection unit is connected to the output terminal of the input accumulator of the kth statistical module, the other input terminal of the nth input selection unit is used to receive data 0, the output terminal of the nth input selection unit is connected to the nth accumulator unit, and the control terminal of the nth input selection unit is connected to the control module; in the nth clock cycle within each statistical period, the nth input selection unit is used to select, according to the first control signal, the accumulated photon count value of the kth group of first initial flight time data corresponding to the nth clock cycle and output it to the nth accumulator unit; The nth accumulator unit includes two input terminals and one output terminal. One input terminal of the nth accumulator unit is connected to the output terminal of the nth input selection unit, and the output terminal of the nth accumulator unit is connected to the input terminal of the nth limit saturation unit. The nth limiting saturation unit includes an input terminal and an output terminal. The input terminal of the nth limiting saturation unit is connected to the output terminal of the nth accumulator unit, and the output terminal of the nth limiting saturation unit is connected to an input terminal of the nth output selection unit. The nth output selection unit includes two input terminals, one output terminal, and one control terminal; one input terminal of the nth output selection unit is connected to the output terminal of the nth limit saturation unit, the other input terminal of the nth output selection unit is connected to one output terminal of the nth write unit, the output terminal of the nth output selection unit is connected to the input terminal of the nth write unit, and the control terminal of the nth output selection unit is connected to the output terminal of the control module; in the nth clock cycle of each statistical cycle, the nth output selection unit is used to output the data output by the nth limit saturation unit to the nth write unit according to the first control signal; The nth write unit includes one input terminal and two output terminals. The input terminal of the nth write unit is connected to the output terminal of the nth output selection unit, one output terminal of the nth write unit is connected to one input terminal of the nth output selection unit, and the other output terminal of the nth write unit is connected to the memory. The nth readout unit includes an input terminal and an output terminal. The input terminal of the nth readout unit is connected to the memory, and the output terminal of the nth readout unit is connected to the other input terminal of the nth accumulator unit.
6. The flight time statistics device according to claim 5, characterized in that, The Nth superposition channel among the N superposition channels includes: the Nth input selection unit, the Nth accumulation unit, the Nth limit saturation unit, the Nth write unit, and the Nth readout unit; The Nth input selection unit includes two input terminals, one output terminal, and one control terminal. One input terminal of the Nth input selection unit is connected to the output terminal of the input accumulator of the kth statistical module. The other input terminal of the Nth input selection unit is used to receive data 0. The output terminal of the Nth input selection unit is connected to the Nth accumulator unit. The control terminal of the Nth input selection unit is connected to the control module. In the Nth clock cycle of each statistical period, the Nth input selection unit is used to select the accumulated photon count value of the kth group of first initial flight time data corresponding to the Nth clock cycle according to the first control signal and output it to the Nth accumulator unit. The Nth accumulator unit includes two input terminals and one output terminal; one input terminal of the Nth accumulator unit is connected to the output terminal of the Nth input selection unit, and the output terminal of the Nth accumulator unit is connected to the input terminal of the Nth limit saturation unit. The Nth limiting saturation unit includes an input terminal and an output terminal; the input terminal of the Nth limiting saturation unit is connected to the output terminal of the Nth accumulating unit, and the output terminal of the Nth limiting saturation unit is connected to an input terminal of the Nth writing unit. The Nth write unit includes one input terminal and two output terminals. The input terminal of the Nth write unit is connected to the output terminal of the Nth output selection unit. One output terminal of the Nth write unit is connected to one input terminal of the Nth limit saturation unit. The other output terminal of the Nth write unit is connected to the memory. The Nth readout unit includes an input terminal and an output terminal. The input terminal of the Nth readout unit is connected to the memory, and the output terminal is connected to the other input terminal of the Nth accumulator unit.
7. A flight time statistics device, characterized in that, include: Statistics department and memory; When the flight time statistics device is in the first detection mode, the statistics unit is used to acquire S sets of first initial flight time data within S first integration periods, and to perform cumulative processing on each first initial flight time data set in groups of N adjacent first initial flight time data to obtain S sets of cumulative flight time data corresponding one-to-one with the S sets of first initial flight time data, where S is a positive integer, S≥2, and N is a positive integer, N≥2; each set of first initial flight time data includes multiple sets of first initial flight time data corresponding one-to-one with multiple flight times, and each set of cumulative flight time data includes at least one cumulative photon count value corresponding one-to-one with at least one cumulative flight time; the statistics unit is also used to perform superposition processing on the S sets of cumulative flight time data to obtain a first superimposed flight time data set, and to store the first superimposed flight time data set in the memory in a manner that at least one first superimposed photon count value in the first superimposed flight time data set is stored in a memory unit, whereby the first superimposed flight time data set includes a first superimposed photon count value corresponding one-to-one with each of the cumulative flight times; When the flight time statistics device is in the second detection mode, the statistics unit is used to acquire S sets of second initial flight time data within S second integration periods, and to perform superposition processing on the S sets of second initial flight time data to obtain a second superimposed flight time data set. The unit also stores the second superimposed flight time data set in the memory by storing at least one second superimposed photon count value from the second superimposed flight time data set in a storage unit, with each second superimposed photon count value stored in a storage unit. The second superimposed flight time data set includes a second superimposed photon count value corresponding to each flight time, and each second initial flight time data set includes second initial flight time data corresponding one-to-one with multiple flight times.
8. The flight time statistics device according to claim 7, characterized in that, Each first integration cycle includes X*N first clock cycles, each first clock cycle includes M first initial flight time data, each second integration cycle includes X second clock cycles, each second clock cycle includes M second initial flight time data, X≥2, M≥2, and X and M are both positive integers; The statistics department includes: a control module and K statistical modules connected in parallel; The control module is used to output a second control signal, which is either a first state or a second state. When the second control signal is in the first state, the flight time statistics device is in the first detection mode. The K statistics modules are used to acquire K sets of first initial flight time data within each first clock cycle of each first integration cycle, and according to the second control signal, accumulate N first initial flight time data in each set of first initial flight time data to obtain S accumulated flight time data sets corresponding one-to-one with the S first integration cycles. The K statistics modules are also used to superimpose the S accumulated flight time data sets to obtain the first superimposed flight time data set, and according to the second control signal, store at least one first superimposed photon count value in the first superimposed flight time data set in the memory in a way that stores one first superimposed photon count value in one storage unit, M=K*N, K≥1, K is a positive integer; When the second control signal is in the second state, the flight time statistics device is in the second detection mode. The K statistics modules are used to acquire K sets of second initial flight time data within each second clock cycle of each second integration cycle according to the second control signal, and to perform superposition processing on the S sets of second initial flight time data corresponding to the S second integration cycles to obtain the second superimposed flight time data set. The second superimposed flight time data set is stored in the memory by storing at least one second superimposed photon count value in the second superimposed flight time data set in a storage unit as one second superimposed photon count value.
9. The flight time statistics device according to claim 8, characterized in that, The memory includes X storage modules, and each storage module includes N*K storage units; When the flight time statistics device is in the first detection mode, the K statistics modules are further configured to, according to the second control signal, divide the X*N first clock cycles within each first integration period into a first statistical period, and store the N*K accumulated photon count values corresponding to the N*K groups of first initial flight time data included in the N first clock cycles within a first statistical period into a storage module. The N*K storage units in each storage module are respectively used to store the N*K accumulated photon count values corresponding to the N clock cycles within a first statistical period. When the flight time statistics device is in the second detection mode, the K statistics modules are further configured to, according to the second control signal, divide the X second clock cycles within each second integration period into a second statistical period, and store the N*K second initial flight time data included in one second clock cycle into a storage module. The N*K storage units in each storage module are respectively used to store the N*K second initial flight time data corresponding to one second clock cycle.
10. The flight time statistics device according to claim 8 or 9, characterized in that, Each of the statistical modules includes an input accumulator and N overlay channels connected in parallel; The input accumulator includes N input terminals and one output terminal. The K input accumulators in the K statistical modules are used to obtain K sets of first initial flight time data for each clock cycle within each first integration period, and to perform accumulation processing on each set of initial flight time data in the K sets of first initial flight time data to generate an accumulated flight time data set corresponding to each first integration period. Each of the overlay channels includes a first statistical input terminal, a second statistical input terminal, and a first overlay output terminal; The N first statistical input terminals of the N superimposed channels are connected to the output terminal of the input accumulator; When the second control signal is in the first state, the N first superposition input terminals are used to receive, one by one, the N*K accumulated photon count values generated by the input accumulator in each first statistical period of each first integration period according to the second control signal; When the second control signal is in the second state, the N second statistical input terminals of the N superimposed channels are used to receive, one by one, the N*K second initial flight time data of the input accumulator in each second statistical period of each second integration period according to the second control signal; The N first superposition output terminals of the N superposition channels are connected to the write terminals of the memory; When the second control signal is in the first state, the N superimposed output terminals are used to store the N*K accumulated photon count values generated by the input accumulator in the N*K storage units of the memory in each first statistical cycle of each first integration cycle according to the second control signal. When the second control signal is in the second state, the N superimposed output terminals are used to store the N*K second initial flight time data of the input accumulator in each second statistical period of each second integration period in the N*K storage units of the memory according to the second control signal.
11. The flight time statistics device according to claim 10, characterized in that, For the N overlay channels of the kth statistical module among the K statistical modules, the nth overlay channel among the first N-1 overlay channels of the N overlay channels includes the nth input selection unit, the nth selection unit, the nth accumulation unit, the nth limit saturation unit, the nth output selection unit, the nth write unit and the nth readout unit, where n is a positive integer and 1≤n≤N-1, and k is a positive integer and 1≤k≤K; The nth input selection unit includes two input terminals, one output terminal, and one control terminal. One input terminal of the nth input selection unit is connected to the output terminal of the input accumulator of the kth statistical module. The other input terminal of the nth input selection unit is used to receive data 0. The output terminal of the nth input selection unit is connected to the nth selection unit. The control terminal of the nth input selection unit is connected to the control module. When the second control signal is in the first state, the nth input selection unit is used to select, according to the second control signal, in the nth first clock cycle within each first statistical cycle, the accumulated photon count value of the kth group of first initial flight time data corresponding to the nth first clock cycle and output it to the nth selection unit. The nth selection unit includes two input terminals, one output terminal, and one control terminal. One input terminal of the nth selection unit is used to acquire the nth second initial flight time data from the kth group of second initial flight time data within each second clock cycle. The other input terminal of the nth selection unit is connected to the output terminal of the nth input selection unit. The output terminal of the nth selection unit is connected to one input terminal of the nth accumulation unit. The control terminal of the nth selection unit is connected to the control module. When the second control signal is in the first state, the nth selection unit is used to select, according to the second control signal, in the nth first clock cycle of each first statistical cycle, the accumulated photon count value of the kth group of first initial flight time data corresponding to the nth first clock cycle and output it to the nth accumulation unit. When the second control signal is in the second state, the nth selection unit is used to select, according to the second control signal, in the nth second clock cycle of each second integration cycle, the nth second initial flight time data from the kth group of second initial flight time data within the nth second clock cycle and output it to the nth accumulation unit. The nth accumulator unit includes two input terminals and one output terminal. One input terminal of the nth accumulator unit is connected to the output terminal of the nth selection unit, and the output terminal of the nth accumulator unit is connected to the input terminal of the nth limit saturation unit. The nth limiting saturation unit includes an input terminal and an output terminal. The input terminal of the nth limiting saturation unit is connected to the output terminal of the nth accumulator unit, and the output terminal of the nth limiting saturation unit is connected to an input terminal of the nth output selection unit. The nth output selection unit includes two input terminals, one output terminal, and one control terminal; one input terminal of the nth output selection unit is connected to the output terminal of the nth limit saturation unit, the other input terminal of the nth output selection unit is connected to one output terminal of the nth write unit, the output terminal of the nth output selection unit is connected to the input terminal of the nth write unit, and the control terminal of the nth output selection unit is connected to the control module; wherein, when the second control signal is in the first state, the nth output selection unit is used to output the data output by the nth limit saturation unit to the nth write unit according to the second control signal in the nth clock cycle of each statistical period; The nth write unit includes one input terminal and two output terminals. The input terminal of the nth write unit is connected to the output terminal of the nth output selection unit, one output terminal of the nth write unit is connected to one input terminal of the nth output selection unit, and the other output terminal of the nth write unit is connected to the memory. The nth readout unit includes an input terminal and an output terminal. The input terminal of the nth readout unit is connected to the memory, and the output terminal of the nth readout unit is connected to the other input terminal of the nth accumulator unit.
12. The flight time statistics device according to claim 11, characterized in that, The Nth superposition channel among the N superposition channels includes: the Nth input selection unit, the Nth selection unit, the Nth accumulation unit, the Nth limit saturation unit, the Nth write unit, and the Nth readout unit; The Nth input selection unit includes two input terminals, one output terminal, and one control terminal. One input terminal of the Nth input selection unit is connected to the output terminal of the input accumulator of the kth statistical module. The other input terminal of the Nth input selection unit is used to receive data 0. The output terminal of the Nth input selection unit is connected to the Nth selection unit. The control terminal of the Nth input selection unit is connected to the control module. When the second control signal is in the first state, the Nth input selection unit is used to select, according to the second control signal, the accumulated photon count value of the kth group of first initial flight time data corresponding to the Nth first clock cycle in each first statistical cycle and output it to the Nth selection unit. The Nth selection unit includes two input terminals, one output terminal, and one control terminal. One input terminal of the Nth selection unit is used to acquire the Nth second initial flight time data from the kth group of second initial flight time data within each second clock cycle. The other input terminal of the Nth selection unit is connected to the output terminal of the Nth input selection unit. The output terminal of the Nth selection unit is connected to one input terminal of the Nth accumulation unit. The control terminal of the Nth selection unit is connected to the control module. When the second control signal is in the first state, the Nth selection unit is used to select, according to the second control signal, in the Nth first clock cycle of each first statistical cycle, the accumulated photon count value of the kth group of first initial flight time data corresponding to the Nth first clock cycle and output it to the Nth accumulation unit. When the second control signal is in the second state, the Nth selection unit is used to select, according to the second control signal, in the Nth second clock cycle of each second integration cycle, the Nth second initial flight time data from the kth group of second initial flight time data within the Nth second clock cycle and output it to the Nth accumulation unit. The Nth accumulator unit includes two input terminals and one output terminal. One input terminal of the Nth accumulator unit is connected to the output terminal of the Nth selection unit, and the output terminal of the Nth accumulator unit is connected to the input terminal of the Nth limit saturation unit. The Nth limiting saturation unit includes an input terminal and an output terminal. The input terminal of the Nth limiting saturation unit is connected to the output terminal of the Nth accumulating unit, and the output terminal of the Nth limiting saturation unit is connected to an input terminal of the Nth writing unit. The Nth write unit includes one input terminal and two output terminals. The input terminal of the Nth write unit is connected to the output terminal of the Nth limit saturation unit, one output terminal of the Nth write unit is connected to one input terminal of the Nth limit saturation unit, and the other output terminal of the Nth write unit is connected to the memory. The Nth readout unit includes an input terminal and an output terminal. The input terminal of the Nth readout unit is connected to the memory, and the output terminal of the Nth readout unit is connected to the other input terminal of the Nth accumulator unit.
13. A laser ranging device, characterized in that, Includes the flight time statistics device as described in any one of claims 1 to 12.
Citation Information
Patent Citations
Time-of-flight distance measurement method, system and equipment
CN112924981A
Time-of-flight distance measurement system and method
CN114089352A