A particle trajectory tracking method based on Retina iterative algorithm and FPGA hardware acceleration
Through the Retina algorithm and the FPGA hardware-accelerated particle trajectory tracking method, the problem of quickly identifying particle events and reducing data volume in high-energy physics experiments is solved, and high-resolution particle trajectory positioning and cost optimization are achieved.
Patent Information
- Application Number
- CN202510403179.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-01
- Publication Date
- 2025-08-12
- Estimated Expiration
- 2045-04-01
AI Technical Summary
The prior art is difficult to quickly identify particle events of interest and reduce the amount of read data in high-energy physics experiments, resulting in high data transmission bandwidth and increased cost of DAQ system.
The particle trajectory tracking method based on Retina algorithm and FPGA hardware acceleration is adopted. By constructing a retinal cell computing array and comparator module, the rapid real-time trace search and parameter reconstruction of particle trajectory is realized. Combined with the front-end particle detector system based on pixel chip, a dedicated FPGA algorithm firmware is designed.
Fast real-time positioning of particle trajectories in two-dimensional plane space is achieved, with position resolution reaching half or one-quarter of the single pixel size, reducing data transmission bandwidth and reducing the implementation cost of readout electronics systems.
Smart Images

Figure CN119919683B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of particle trajectory tracking, and in particular to a particle trajectory tracking method based on a Retina algorithm and FPGA hardware acceleration. Background Art
[0002] With the rapid development of modern physics, various high-energy physics experiments related to particle detection are using increasingly higher energies of collision or target particles to identify smaller target events and particles. This requires the accompanying detectors and readout electronics systems to be able to locate the target events and particles of interest within ever-shorter times (tens of μs to several nanoseconds). To meet these stringent experimental requirements, online, real-time particle tracking algorithms have been incorporated into readout electronics systems and are widely used in particle detection technology.
[0003] In recent years, research on online particle tracking algorithms has been increasing. These algorithms are typically deployed in the front-end and mid-range of detector DAQ systems. This research involves deploying tracking algorithms on a variety of platforms, including commercial CPUs, GPUs, and FPGAs. Placido Fernandez Declara proposed Compass, a configurable particle tracking algorithm designed for highly parallel architectures and optimized for GPU deployment. Compared to the LHCb baseline, the algorithm's data throughput increased by 7.4 times. S. Citraro proposed a high-performance "pattern matching" implementation based on an associative memory system.
[0004] The current research direction is how to quickly identify particle events of interest while reducing the amount of readout data, thereby reducing the data transmission bandwidth of the DAQ system and reducing the implementation cost of the readout electronics system. Summary of the Invention
[0005] In response to the technical problems existing in the prior art, the present invention provides a particle trajectory tracking method based on the Retina algorithm and FPGA hardware acceleration, designs an online trajectory recognition algorithm for SEE (single event effects) positioning, uses the Retina algorithm as the trajectory tracking algorithm, improves the algorithm and combines it with a front-end pixel chip-based particle detector system to design a dedicated FPGA algorithm firmware to complete the rapid tracking of heavy ion trajectories, realize the physical goal of real-time tracking of heavy ion trajectories in SEE positioning, and can realize rapid and real-time trajectory tracking and parameter reconstruction of the coordinate position information data of the straight particle trajectory detected by the pixel detector in the two-dimensional plane space, thereby completing the positioning task of the single particle effect in the two-dimensional space.
[0006] According to a first aspect of the present invention, a particle trajectory tracking method based on a Retina algorithm and FPGA hardware acceleration is provided, comprising:
[0007] Step 1: Use a detector to detect and obtain sample information and input the sample information into the FPGA; the sample information includes: the coordinate position information of the pixel points when the particle passes through each layer of the detector plane;
[0008] Step 2: Divide the two-dimensional space into various spatial units according to a set granularity, and construct a retinal cell computing array on the FPGA using the spatial units as the cell units in the retinal algorithm; calculate the similarity weights of each coordinate position information of the particle and each cell unit based on the longitudinal distance, and sum the similarity weights of each cell unit with the coordinate position information of the particle to obtain the similarity weight value of the cell unit;
[0009] Step 3, building a comparator module on the FPGA, and finding the cell unit and its corresponding reconstruction parameters when the similarity weight value is the largest based on the comparison of the comparator module;
[0010] Step 4: construct a firmware algorithm result output transmission module on the FPGA, and the firmware algorithm result output transmission module outputs the reconstructed particle trajectory to a PC or other terminal.
[0011] On the basis of the above technical solution, the present invention can also make the following improvements.
[0012] According to a second aspect of the present invention, there is provided a particle trajectory tracking device based on the Retina algorithm and FPGA hardware acceleration, comprising: a sample event storage and input module and an FPGA;
[0013] The sample event storage and input module is used to obtain sample information detected by the detector and input the sample information into the FPGA; the sample information is the coordinate position information of the pixel points when one or more particles pass through the planes of each layer of the detector;
[0014] The FPGA includes: a Retina cell calculation array, a comparator module and a firmware algorithm result output transmission module;
[0015] The two-dimensional space is divided into various spatial units according to a set granularity, and the spatial units are used as cell units in the retina algorithm to establish the Retina retina cell calculation array, wherein the retina cell calculation array is used to sequentially calculate the similarity weights of each coordinate position information of the particle and each cell unit based on the longitudinal distance, and the similarity weights of each cell unit with each coordinate position information of the particle are summed to obtain the similarity weight value of the cell unit;
[0016] The comparator module is configured to find the cell unit and its corresponding reconstruction parameter when the similarity weight value is the largest based on comparison by the comparator module;
[0017] The firmware algorithm result output transmission module is used to output the reconstructed particle trajectory to a PC or other terminal.
[0018] According to a third aspect of the present invention, an electronic device is provided, comprising a memory and a processor, wherein the processor is configured to implement the steps of a particle trajectory tracking method based on a Retina algorithm and FPGA hardware acceleration when executing a computer management program stored in the memory.
[0019] According to a fourth aspect of the present invention, a computer-readable storage medium is provided, on which a computer management program is stored. When the computer management program is executed by a processor, the steps of a particle trajectory tracking method based on the Retina algorithm and FPGA hardware acceleration are implemented.
[0020] The present invention provides a particle trajectory tracking method, device, electronic device, and storage medium based on the Retina algorithm and FPGA hardware acceleration. The position resolution reaches 44.11 μm at an algorithm granularity of 39*39, nearly half the size of a single pixel (83 μm); and 18.11 μm at a granularity of 99*99, less than one-quarter the size of a single pixel. With a global firmware clock frequency of 50 MHz, the algorithm processes a single position information item from a single heavy ion trajectory sample event in 49 system clock cycles, or 0.98 μs. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] Figure 1 A flow chart of a particle trajectory tracking method based on the Retina algorithm and FPGA hardware acceleration provided by the present invention;
[0022] Figure 2 A block diagram of a particle trajectory tracking device based on the Retina algorithm and FPGA hardware acceleration provided by an embodiment of the present invention;
[0023] Figure 3 This is a schematic structural diagram of an embodiment of the Retina retinal cell computing array provided by the present invention;
[0024] Figure 4 A schematic structural diagram of an embodiment of a comparator module provided by the present invention;
[0025] Figure 5 A schematic diagram of the hardware structure of a possible electronic device provided by the present invention;
[0026] Figure 6A schematic diagram of the hardware structure of a possible computer-readable storage medium provided by the present invention. DETAILED DESCRIPTION
[0027] The principles and features of the present invention are described below with reference to the accompanying drawings. The examples given are only used to explain the present invention and are not used to limit the scope of the present invention.
[0028] Example 1
[0029] Embodiment 1 provided by the present invention is an embodiment of a particle trajectory tracking method based on the Retina algorithm and FPGA hardware acceleration provided by the present invention. Figure 1 A flow chart of particle trajectory tracking based on Retina algorithm and FPGA hardware acceleration is provided in an embodiment of the present invention, such as Figure 1 As shown, an embodiment of the method includes:
[0030] Step 1: Use a detector to detect and obtain sample information and input the sample information into the FPGA; the sample information includes: the coordinate position information of the pixel points when the particle passes through the plane of each layer of the detector.
[0031] In the implementation, the single-track sample information used for simulation input comes from a Topmetal pixel chip, a semiconductor detector installed in a heavy ion detection platform. The platform's sealed chamber is filled with an inert gas. When a charged particle passes through the gas detector, ions and photons along the particle's trajectory react with the inert gas in the device, producing electron-hole pairs. Under the influence of an applied electric field, these electrons drift toward the Topmetal pixel array, which acts as an anode, ultimately forming a projected image of the particle's trajectory. The principle of using a Topmetal sensor to track a single charged particle is shown in the figure. The positioning module consists of two positioning units. In each unit, a silicon pixel sensor acts as an anode to collect drifting electrons for tracking and imaging. The two silicon pixel sensors are appropriately positioned in two orthogonal planes. Through position correction, two-dimensional position information of the incident charged particle can be obtained. During sample generation, Kr ions with a charge of 25 MeV / µl are injected into a chamber filled with a 70:30 ratio of argon and carbon dioxide at a pressure of 300 K and an electric field strength of 300 V / cm. The Topmetal sensor has a 72x72 pixel array, with a single pixel size of 83 μm, providing an effective scanning area of 6 mm x 6 mm per sensor.
[0032] In one possible embodiment, in order to realize real-time tracking of a single heavy ion event, the sample constructed by the embodiment of the present invention is 5000 frames of single-track particle trajectory data generated by the Topmetal sensor. Each frame contains a two-dimensional position distribution of the particle flight trajectory with a resolution of 72*72, that is, 5184 coordinate information. These position information are output in the form of coordinate points, and only the integer part of the coordinate point value is retained, and the value range is 1 to 72.
[0033] To better evaluate the algorithm's tracking accuracy, the present invention introduces two new parameters: a distance threshold and a pixel weight. The pixel weight refers to the energy value of each pixel on the pixel sensor, determined by the number of times the pixel is hit by electrons. The pixel weight is rounded to four decimal places. The distance threshold determines whether the pixel's position information should be used as an input sample. Only the position information of pixels with a pixel weight greater than the distance threshold is used as sample coordinate data input to the retinal array. The pixel weight also participates in the calculation of retinal units, providing appropriate weights to the contribution of each input element to help filter out more valuable pixel position information. Each frame of sample processed by threshold filtering generates 200-300 coordinate point data and pixel weights. These coordinate and pixel value information are referred to as a set of single-track sample events. Statistics show that the number of coordinate points in 5,000 frames of sample events ranges from 160 to 240, with an average of approximately 210.
[0034] Step 2: Divide the two-dimensional space into various spatial units according to the set granularity, and use the spatial units as the cell units in the retinal algorithm to build a retinal cell computing array on the FPGA; based on the longitudinal distance, calculate the similarity weights of each coordinate position information of the particle and each cell unit in turn, and sum the similarity weights of each cell unit with the coordinate position information of the particle to obtain the similarity weight value of the cell unit.
[0035] The retinal algorithm is a pattern recognition algorithm invented by imitating the biological visual system and inspired by the recognition characteristics of the biological retina.
[0036] The first step is to construct a parameter space, or a set of patterns. This is done using two parameters: the intercept b and the slope k of a linear trajectory in two-dimensional space. After restricting the range of k and b, a line y = kx + b in physical space corresponds to a coordinate point (k, b) in the parameter space.
[0037] The second step is to divide the established Retina parameter space into equal parts according to a certain granularity, forming M*N sub-parameter spaces. Each sub-parameter space is called a retinal computation unit, also called a retina cell. Thus, the entire parameter space is a retina cell array consisting of M*N retina cells. The center coordinates (i, j) of the parameter space where each retina cell resides corresponds to a straight line pattern y=ix+j in physical space. In retina algorithms, the algorithm's granularity M*N is used to measure the density of pattern cells contained within the parameter space and is a key parameter for algorithm debugging.
[0038] The third step is to input the straight line sample information into a single retinal cell (i, j) to calculate the similarity weight value of the sample information .
[0039] In a possible embodiment, the formula (1) for obtaining the similarity weight value of the cell unit based on the longitudinal distance is:
[0040]
[0041] Where i and j represent the horizontal and vertical serial numbers of the cell unit / super retinal unit, respectively; m and k represent the total number and serial number of the layers of the parallel plane of the detector, respectively; is the similarity weight value of the coordinate position information of the particle detected by the cell unit / super retinal unit in the i-th row and j-th column and the k-th layer detector; The coordinate position information of the particle detected by the k-th layer detector and the distance between the cell unit / super retinal unit in the i-th row and j-th column in the longitudinal direction; It is the adjustment factor of the operation, and its size is determined by the granularity of the retina.
[0042] Step 4: Calculate the similarity weight value according to step 3 The method scans all retinal cells in the retinal unit array and obtains the input sample in the retinal parameter space. The distribution of values. In general, the algorithm will The parameter space position (i_sum max, j_sum max) corresponding to the cell unit with the largest value is output as the identified straight line trajectory and the reconstructed longitudinal intercept and slope parameters.
[0043] In a possible embodiment, in order to better describe how to use the retinal algorithm to track linear particle trajectories in two-dimensional space, python is used to simulate the process of the retinal algorithm. A parameter space (k, b) is set in the two-dimensional space, where the value range of k is (-1, 1), representing the slope of the particle trajectory reconstructed by the algorithm; the value range of b is (0, 72), representing the intercept of the reconstructed particle trajectory. The granularity is set to 70*70, that is, 4900 retinal cell units. Then a particle trajectory represented by y=0.025k+34 in the two-dimensional space (x, y) is simulated, and 210 coordinate points on the trajectory are taken as sample event elements and input into the array, and the obtained The parameter space coordinates of the retinal unit with the largest similarity weight value are (0.014, 34.35), that is, the linear trajectory parameter recognized by the retinal array is y=0.014x+34.35.
[0044] Step 3: Build a comparator module on the FPGA, and find the cell unit with the largest similarity weight value and its corresponding reconstruction parameters based on the comparison of the comparator module.
[0045] Step 4: Build a firmware algorithm result output transmission module on the FPGA. The firmware algorithm result output transmission module outputs the reconstructed particle trajectory to a PC or other terminal.
[0046] In a possible embodiment, step 4 further includes:
[0047] Set up a netlist configuration module in the FPGA. The netlist configuration module calculates the parameters of any cell unit in the i-th row and j-th column based on the input granularity parameters M and N. .
[0048] in, ; .
[0049] M and N represent the number of horizontal and vertical cell units in the retinal cell calculation array, respectively. and They represent the slope and intercept of the cell in the i-th row and j-th column respectively.
[0050] In one possible embodiment, the process of determining the linear trajectory of the particle based on the position and outputting the result includes:
[0051] Determine the horizontal and vertical serial numbers i and j of the cell unit / super retinal unit, and use the slope and intercept of the cell unit / super retinal unit in the i-th row and j-th column as the slope and intercept of the particle linear track.
[0052] In SEE positioning, the key issue is to quickly identify the trajectories of heavy ions, the main target particles that produce the SEE effect. The present invention provides a particle trajectory tracking method based on the Retina algorithm and FPGA hardware acceleration. An online trajectory recognition algorithm is designed for SEE positioning. The Retina algorithm is used as the trajectory tracking algorithm. After the algorithm is improved, it is combined with a front-end pixel chip-based particle detector system to design a dedicated FPGA algorithm firmware to complete the rapid tracking of heavy ion trajectories, realizing the physical goal of real-time tracking of heavy ion trajectories in SEE positioning.
[0053] Example 2
[0054] Example 2 of the present invention is an embodiment of the present invention based on the Retina algorithm and FPGA hardware acceleration method. The two-dimensional parameter space of the Retina algorithm is (k, b). k represents the slope of the line, with a value range of -1 to 1. b represents the vertical intercept of the line, with a value range of 0 to 72 pixels.
[0055] To improve the computational accuracy of the retinal algorithm in this experimental environment, three new influencing factors were added to the calculation of the weight value W by the retinal algorithm calculation unit: pixel value, pixel threshold, and distance threshold. In specific implementations, three read-only memories can be used to store the sample information. These three read-only memories are used to store the x-coordinate information, y-coordinate information, and pixel brightness value of each valid pixel in each sample event. All three data are stored in a fixed-bit-width ROM as fixed-point decimals.
[0056] In a possible embodiment, the pixel value A of each input sample coordinate point n is added to the similarity weight calculation formula (1): n This impact factor, The calculation formula becomes as shown in formula (2):
[0057]
[0058] Using formula (2) can ensure that the coordinate point pairs with high brightness (pixel value) in the trajectory samples have a higher matching weight in the predicted line L represented by the corresponding visual cell. This can improve the tracking accuracy of the retinal algorithm.
[0059] In a possible embodiment, based on the similarity weight calculation formula (2), the distance threshold d_th and the pixel threshold A_th are further added. The calculation formula becomes formula (3):
[0060]
[0061]
[0062] Since a straight line track sample contains a large number of valid coordinate points, formula (3) sets two thresholds d_th and A_th to allow the algorithm to ignore those pixels that are far away from the predicted line L (dij_n>d_th) or have pixel values A n The lower the contribution of the coordinate position to the weight value W, the less computational effort the algorithm has to make while improving its computational efficiency and tracking accuracy.
[0063] According to the generated heavy ion trajectory samples, the pixel threshold value A_th is set to 10 brightness, and the distance threshold value d_th is set to 1.5 times the size of a single retinal computing unit on the vertical intercept parameter axis, that is, 1.5*83*72 / J μm, where J represents the granularity of the intercept.
[0064] Example 3
[0065] The embodiment 3 provided by the present invention is an embodiment of a particle trajectory tracking device based on the Retina algorithm provided by the present invention, such as Figure 2 The figure shows a schematic diagram of the structure of an embodiment of the trajectory tracking device provided by the embodiment of the present invention, Figure 2 It can be seen that the embodiment of the trajectory tracking device includes: an FPGA. The FPGA includes: a sample event storage and input module, a Retina cell calculation array, a comparator module, and a firmware algorithm result output transmission module.
[0066] The sample event storage and input module is used to obtain the sample information detected by the detector and input the sample information into the Retina retinal cell computing array; the sample information is the coordinate position information of the pixel points when one or more particles pass through the detector planes of each layer.
[0067] In a specific implementation, the sample event storage and input module can be composed of three read-only memories, which are used to store the x-coordinate information, y-coordinate information, and pixel brightness value of each valid pixel in each sample event. All three data are stored in the form of fixed-point decimals in a fixed-bit width ROM.
[0068] The two-dimensional space is divided into various spatial units according to the set granularity. The spatial units are used as the cell units in the retina algorithm to establish a Retina retinal cell calculation array. The retinal cell calculation array is used to calculate the similarity weights of each coordinate position information of the particle and each cell unit based on the longitudinal distance. The similarity weight value of each cell unit is obtained by summing the similarity weights of each cell unit with the coordinate position information of the particle.
[0069] The Retina retinal cell computing array is responsible for allocating and generating a retinal array of corresponding size according to the input granularity, and then calculating and outputting the similarity weight value of each retinal cell based on the input sample information.
[0070] The comparator module is used to find the cell unit with the largest similarity weight value and its corresponding reconstruction parameter based on the comparison of the comparator module.
[0071] When the sample is a single-particle sample, we use this module to find the maximum similarity weight value and output the corresponding cell unit coordinate information (i, j) as the straight line trajectory found by the algorithm and its corresponding reconstruction parameters.
[0072] The firmware algorithm result output transmission module is used to output the reconstructed particle trajectory to a PC or other terminal. In the embodiment of the present invention, the IPBUS bus is used as the main upload data exchange bus.
[0073] The retina array is a core component of the tracking firmware. In one possible embodiment, it is composed of a netlist and a large number of retina units. During the firmware design process, a fixed number of retina cell units are placed in the retina array based on the firmware resources of the specific FPGA actually used. When the algorithm is working, after the granularity information is input through the netlist, the number of retina cell units corresponding to the input granularity information is activated to the working state, and the retina cell units corresponding to the excess are suspended and enter the idle state, thereby realizing the online configuration function of the retina array. When the number of retina cell units that need to be activated exceeds the total number of retina cell units pre-solidified into the firmware algorithm, the netlist module uses the repeated configuration function to reuse the retina cell units in the array to complete the scan of the retina algorithm. In addition, the retina algorithm is integrated into all retina cell units, which can simultaneously perform similarity weighting on the input sample event elements. The calculation of , ensures the high parallelism of the algorithm, giving the algorithm a speed advantage in real-time particle trajectory tracing applications.
[0074] In the retina array module, the Retina Cell unit is the core module of the entire Retina algorithm firmware. The Retina Cell unit's input consists of two parts: the first is the position coordinate data and corresponding pixel brightness values from the heavy ion sample; the second is the parameter pair (ki, bj) assigned to the retina cell unit from the netlist configuration module. These parameters assigned by the netlist configuration module are fixed during the retina cell unit's operation, while the heavy particle sample information is input serially into the retina cell unit.
[0075] The overall design framework of the Retina algorithm reveals that the majority of the algorithm's space is comprised of an array of retina cell modules. Therefore, the design structure, resource consumption, and computational latency of the retina cell modules play a decisive role in determining the final real-time performance and resource consumption of the Retina firmware algorithm. To achieve optimal online performance, the Retina cell firmware design must optimize the structure to balance computational latency and resource consumption.
[0076] like Figure 3 The structure diagram of the embodiment of the Retina retinal cell computing array provided by the present invention is shown in FIG. Figure 3 It can be seen that the overall structure of the Retina retinal cell computing array calculates the weight value and The steps are arranged in sequence. In order to optimize the calculation delay and resource consumption, each calculation step is designed with a pipeline structure. Since each calculation step has a different calculation delay, each unit is connected with a fifo to ensure that the calculation result will not be lost. Using the pipeline structure, the retina cell unit can realize the input and calculation of sample point data information without delay. The design goal is to output the value of the algorithm, that is, to complete the input of the valid pixel information in a sample and the calculation result every time a system clock cycle passes. Under this condition, in order to reduce the resource consumption of a single retina cell module as much as possible, the entire The computing process is divided into multiple minimum delay computing units that cannot be further divided. The Retina retinal cell computing array includes multiple minimum delay computing units.
[0077] Each minimum delay calculation unit is connected in sequence, and is used from front to back to complete the addition and multiplication calculation of the output dij_v, the square calculation of the output dij_v2 value, Multiplication calculation, Lookup table calculation and similarity weight value of cell unit The cumulative calculation of .
[0078] When implementing latency-free input and output computation using a pipeline approach, the number of pipelines in the pipeline is equal to the system clock cycles consumed by the corresponding computation for that module. Combining the computational steps of the designed retina cell unit, the computational steps for a single retina cell module, along with their corresponding computational latency, computational functionality, and computational resource overhead, are ultimately calculated. The total latency for the retina cell calculation is 41 system clock cycles, while the time required to calculate a single heavy particle trajectory sample is 41 + V system clock cycles, where V is the number of valid pixels contained in the heavy particle sample, ranging from 150 to 250, with an average of 210. A single retina cell unit internally consists of two lookup tables (LUTs), five addition and subtraction units, and 11 multiplication units, consuming a total of five DSP48 resources and a small number of LUTs.
[0079] like Figure 4 The diagram shows a schematic diagram of the structure of an embodiment of a comparator module provided by the present invention, Figure 4 It can be seen that in a possible embodiment, the comparator module is an 8-level comparator network composed of multiple two-input comparators connected in series and parallel in a cascade manner.
[0080] The comparator module is the last step of the Retina algorithm calculation step. Its function is to calculate the comparator of all retina cells in the retina array. The algorithm compares and ranks the values of and selects the maximum value, Summax. When Summax exceeds a given threshold, Sum_th, the algorithm successfully finds a heavy particle trajectory. The parameters (ki, bj) corresponding to Summax become the reconstructed trajectory parameters. In this embodiment of the present invention, two-input comparators are connected in series and parallel to form an eight-stage comparator network. After eight clock cycles, this module can output the tracking results for a single-particle trajectory sample.
[0081] In a possible embodiment, in order to realize the function of online configuration of Retina scanning granularity during the design of the algorithm firmware, thereby making the algorithm universal, the netlist configuration module is designed and added to the retina algorithm array module. The input parameter of the netlist configuration module is the granularity of the retina algorithm. In the application of the present invention, the parameter space of the algorithm is a two-dimensional parameter space, so the input parameters of the netlist configuration module are M and N. Before the retina array performs calculations, the netlist configuration module receives the granularity parameters M and N. The netlist configuration module is internally designed to consist of a fixed-point DSP48 computing unit and necessary logic functions. After calculation by the netlist module, the module finally outputs M*N parameter pairs [ki, bj] that match the input granularity. These parameter pairs are respectively connected to the corresponding retina cell modules for use as the configuration of the scanning parameters of each retina cell module.
[0082] In the actual design, based on the characteristics of the heavy ion samples generated by the aforementioned experimental environment, the parameter space of the particle trajectory slope parameter k is set to a range of -1 to 1, and the parameter space of the vertical intercept b is set to a range of 0 to 72*83μm (where the size of a single pixel is 83μm*83μm). Therefore, the specific calculation formula for the parameter pair ki and bj in the netlist firmware is:
[0083]
[0084]
[0085] The present invention provides an embodiment of a particle trajectory tracking device based on the Retina algorithm. In the firmware design, a KC705 development board equipped with a Xilinx 7-series FPGA chip was selected as the platform for firmware implementation. The firmware algorithm input samples consist of single-particle sample events of heavy ions Kr readout using a Topmetal pixel detector array chip. The pixel array size is 72*72, and the individual pixel size is 83μm*83μm. Retina algorithms with different granularities were selected for testing, and detailed algorithm performance evaluation results were obtained. Under the firmware algorithm with a granularity of 99*99, the algorithm achieved a position resolution of 18.11μm. With a global firmware clock frequency of 50MHz, processing a standard single-track heavy ion trajectory sample event with 210 coordinates took 5.18μs. These test results demonstrate that the algorithm can achieve fast, real-time heavy ion trajectory reconstruction with high resolution, thereby enabling real-time SEE positioning.
[0086] It is understandable that the particle trajectory tracking device based on the Retina algorithm provided by the present invention corresponds to the particle trajectory tracking based on the Retina algorithm and FPGA hardware acceleration provided by the aforementioned embodiments. The relevant technical features of the particle trajectory tracking device based on the Retina algorithm can refer to the relevant technical features of the particle trajectory tracking based on the Retina algorithm and FPGA hardware acceleration, and will not be repeated here.
[0087] See also Figure 5 , Figure 5 Schematic diagram of an embodiment of an electronic device provided by an embodiment of the present invention. Figure 5 As shown, an embodiment of the present invention provides an electronic device, including a memory 1310, a processor 1320, and a computer program 1311 stored in the memory 1310 and executable on the processor 1320. When the processor 1320 executes the computer program 1311, the following steps are implemented: dividing the two-dimensional space into various spatial units according to a set granularity, and establishing a cell array with the spatial units as the cell units in the retinal algorithm; using a detector to detect and obtain the coordinate position information of the pixel point when a particle passes through each layer of the detector plane; calculating the similarity weights of each coordinate position information of the particle and each cell unit based on the longitudinal distance, summing the similarity weights of a cell unit and each coordinate position information of the particle to obtain the similarity weight value of the cell unit, traversing all the cell units in the cell array, determining the position of the cell unit corresponding to the largest similarity weight value, determining the straight line trajectory of the particle based on the position and outputting it.
[0088] See also Figure 6 , Figure 6 Schematic diagram of an embodiment of a computer-readable storage medium provided by the present invention. Figure 6 As shown, this embodiment provides a computer-readable storage medium 1400, on which a computer program 1411 is stored. When the computer program 1411 is executed by a processor, the following steps are implemented: dividing the two-dimensional space into various spatial units according to a set granularity, and establishing a cell array with the spatial units as the cell units in the retinal algorithm; using a detector to detect and obtain the coordinate position information of the pixel point when a particle passes through each layer of the detector plane; calculating the similarity weights of each coordinate position information of the particle and each cell unit based on the longitudinal distance, summing the similarity weights of a cell unit and each coordinate position information of the particle to obtain the similarity weight value of the cell unit, traversing all cell units in the cell array, determining the position of the cell unit corresponding to the largest similarity weight value, and determining the straight line trajectory of the particle based on the position and outputting it.
[0089] Embodiments of the present invention provide a particle trajectory tracking device, electronic device, and storage medium based on the Retina algorithm and FPGA hardware acceleration. The device achieves a position resolution of 44.11 μm at an algorithm granularity of 39*39, nearly half the size of a single pixel (83 μm); and 18.11 μm at an algorithm granularity of 99*99, less than 1 / 4 the size of a single pixel. With a global firmware clock frequency of 50 MHz, the algorithm consumes 49 system clock cycles, or 0.98 μs, to process a single position information item in a single heavy ion trajectory sample event. When the computational portion of the algorithm is pipelined within the retina cell unit, the algorithm firmware consumes between 3.98 μs and 5.98 μs, with an average of 5.18 μs, to process a single heavy ion sample event. A single retinal computing unit consumes 5 DSP48 units. When 100 retinal computing units are embedded, the entire algorithm firmware consumes 74.63% of the LUT, 41.81% of the flip-flop, 67.41% of the block RAM, and 83.32% of the DSP48 resources of the K7-325t FPGA chip.
[0090] It should be noted that, in the above embodiments, the description of each embodiment has its own focus. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant description of other embodiments.
[0091] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, apparatuses, or computer program products. Thus, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROMs, optical storage, etc.) containing computer-usable program code.
[0092] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded computer, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0093] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0094] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 The steps for the function specified in one or more boxes.
[0095] Although the preferred embodiments of the present invention have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the present invention.
[0096] Obviously, those skilled in the art may make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if such changes and modifications fall within the scope of the claims and their equivalents, the present invention is intended to include such changes and modifications.
[0097] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded computer, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0098] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0099] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 The steps for the function specified in one or more boxes.
[0100] Although the preferred embodiments of the present invention have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the present invention.
[0101] Obviously, those skilled in the art may make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if such changes and modifications fall within the scope of the claims and their equivalents, the present invention is intended to include such changes and modifications.
Claims
1. A particle trajectory tracking method based on Retina iterative algorithm and FPGA hardware acceleration, characterized in that: The particle trajectory tracking method comprises: Step 1: Use a detector to detect and obtain sample information and input the sample information into the FPGA; the sample information includes: the coordinate position information of the pixel points when the particle passes through each layer of the detector plane; Step 2: Divide the two-dimensional space into various spatial units according to a set granularity, and construct a retinal cell computing array on the FPGA using the spatial units as the cell units in the retinal algorithm; calculate the similarity weights of each coordinate position information of the particle and each cell unit based on the longitudinal distance, and sum the similarity weights of each cell unit with the coordinate position information of the particle to obtain the similarity weight value of the cell unit; Step 3, building a comparator module on the FPGA, and finding the cell unit and its corresponding reconstruction parameters when the similarity weight value is the largest based on the comparison of the comparator module; Step 4: constructing a firmware algorithm result output transmission module on the FPGA, wherein the firmware algorithm result output transmission module outputs the reconstructed particle trajectory to a PC or other terminal; The sample information also includes: pixel brightness values of the pixels when the particles pass through the detector planes of each layer; The formula for obtaining the similarity weight value of the cell unit / super retinal unit based on the longitudinal distance is: Where i and j represent the horizontal and vertical serial numbers of the cell unit / super retinal unit, respectively; m and n represent the total number and serial number of the layers of the parallel plane of the detector, respectively; is the similarity weight value of the coordinate position information of the cell in the i-th row and j-th column and the particle detected by the detector in the n-th layer; The coordinate position information of the particle detected by the n-th layer detector and the distance between the cell unit / super retinal unit in the i-th row and j-th column in the longitudinal direction; A is the adjustment factor of the operation; n Indicates the pixel brightness value of the particle detected by the n-th layer detector; d_th is the set distance threshold, A_th is the set pixel threshold; The step 4 further comprises: A netlist configuration module is set in the FPGA, and the netlist configuration module calculates the parameters of any cell unit in the i-th row and j-th column based on the input granularity parameters M and N. ; in, ; ; M and N represent the number of cell units in the horizontal and vertical directions in the retinal cell calculation array, respectively. and They represent the slope and intercept of the cell in the i-th row and j-th column respectively.
2. The trajectory tracking method according to claim 1, characterized in that: The reconstruction parameters corresponding to the cell unit when the similarity weight value is the largest in step 3 include: the horizontal and vertical serial numbers i and j of the cell unit; The process of reconstructing the particle trajectory obtained in step 4 includes: The slope and intercept of the cell in the i-th row and j-th column are used as the slope and intercept of the particle reconstructed trajectory.
3. A particle trajectory tracking device based on Retina iterative algorithm and FPGA hardware acceleration, characterized in that: include: FPGA; The FPGA includes: a sample event storage and input module, a Retina retinal cell calculation array, a comparator module and a firmware algorithm result output transmission module; The sample event storage and input module is used to obtain sample information detected by the detector and input the sample information into the Retina retinal cell computing array; the sample information is the coordinate position information of the pixel points when one or more particles pass through the planes of each layer of the detector; The two-dimensional space is divided into various spatial units according to a set granularity, and the spatial units are used as cell units in the retina algorithm to establish the Retina retina cell calculation array, wherein the retina cell calculation array is used to sequentially calculate the similarity weights of each coordinate position information of the particle and each cell unit based on the longitudinal distance, and the similarity weights of each cell unit with each coordinate position information of the particle are summed to obtain the similarity weight value of the cell unit; The comparator module is configured to find the cell unit and its corresponding reconstruction parameter when the similarity weight value is the largest based on comparison by the comparator module; The firmware algorithm result output transmission module is used to output the reconstructed particle trajectory to a PC or other terminal; The sample information also includes: pixel brightness values of the pixels when the particles pass through the detector planes of each layer; The formula for obtaining the similarity weight value of the cell unit / super retinal unit based on the longitudinal distance is: Where i and j represent the horizontal and vertical serial numbers of the cell unit / super retinal unit, respectively; m and n represent the total number and serial number of the layers of the parallel plane of the detector, respectively; is the similarity weight value of the coordinate position information of the cell in the i-th row and j-th column and the particle detected by the detector in the n-th layer; The coordinate position information of the particle detected by the n-th layer detector and the distance between the cell unit / super retinal unit in the i-th row and j-th column in the longitudinal direction; A is the adjustment factor of the operation; n Indicates the pixel brightness value of the particle detected by the n-th layer detector; d_th is the set distance threshold, A_th is the set pixel threshold; The FPGA further includes a netlist configuration module, which calculates the parameters of any cell unit in the i-th row and j-th column based on the input granularity parameters M and N. ; in, ; ; M and N represent the number of cell units in the horizontal and vertical directions in the retinal cell calculation array, respectively. and They represent the slope and intercept of the cell in the i-th row and j-th column respectively.
4. The trajectory tracking device according to claim 3, characterized in that The Retina retinal cell computing array includes a plurality of minimum delay computing units; Each of the minimum delay calculation units is connected in sequence, and is used to complete the addition calculation and multiplication calculation of the output dij_v, the square calculation of the output dij_v2 value, Multiplication calculation, Lookup table calculation and similarity weight value of cell unit The cumulative calculation of .
5. The trajectory tracking device according to claim 3, characterized in that: The comparator module is an 8-level comparator network composed of multiple two-input comparators connected in series and parallel.
6. An electronic device, characterized in that: The invention comprises a memory and a processor, wherein the processor is used to implement the steps of the particle trajectory tracking method based on the Retina iterative algorithm and FPGA hardware acceleration as claimed in claim 1 or 2 when executing the computer management program stored in the memory.
7. A computer-readable storage medium, characterized in that A computer management program is stored thereon, and when the computer management program is executed by the processor, the steps of the particle trajectory tracking method based on the Retina iterative algorithm and FPGA hardware acceleration as claimed in claim 1 or 2 are implemented.
Citation Information
Patent Citations
Systems and methods for magnetic field localization of charged particle beam end point
WO2018182429A1