A large-scale high-speed molecular dynamics calculation method based on an FPGA heterogeneous computing platform
By designing a multi-stage pipeline architecture and large-capacity DDR storage on an FPGA heterogeneous computing platform, the bottleneck of traditional computing platforms in large-scale molecular dynamics calculations has been solved, achieving efficient and low-power molecular dynamics calculations.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HUNAN PEISEN ELECTRONIC TECH CO LTD
- Filing Date
- 2021-06-24
- Publication Date
- 2026-07-21
AI Technical Summary
Traditional computing platforms face bottlenecks in large-scale molecular dynamics calculations, particularly in terms of computational speed, scale, power consumption, and cost. FPGAs, in particular, have limitations in complex mathematical operations and high-frequency serial computations.
By adopting an FPGA-based heterogeneous computing platform, the computing tasks are rationally allocated through the collaborative work of the host computer control system and the lower-level FPGA computing system. The parallel computing advantages and large-capacity off-chip DDR storage of FPGA are utilized to design a multi-stage pipeline architecture and optimize the molecular dynamics calculation process.
It significantly improves computing speed and scale, reduces computing power consumption and cost, and expands the atomic scale, thereby improving computing efficiency.
Smart Images

Figure CN115527617B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to heterogeneous computing platforms and molecular dynamics, and more specifically to a large-scale high-speed molecular dynamics calculation method based on an FPGA heterogeneous computing platform, belonging to the fields of electronic design automation and high-performance scientific computing. Background Technology
[0002] Molecular dynamics utilizes the microscopic states generated by molecular trajectories and obtains the dynamic properties of the system through time averaging. Traditional molecular dynamics methods can only simulate small spatial and temporal scales on small servers. In recent years, with the development of machine learning, it has become feasible to introduce neural networks to improve the computational efficiency of molecular dynamics. However, due to the limitations of the efficiency and energy consumption of traditional computing platforms, bottlenecks still exist in large-scale spatial and temporal molecular dynamics calculations.
[0003] FPGAs (Field Programmable Gate Arrays), as reconfigurable logic devices, offer extremely high parallelism, very low power consumption, and custom-optimized pipeline architectures compared to CPUs and GPUs in the field of high-performance computing. However, due to their limited internal resources and issues such as placement and routing congestion, they face bottlenecks in complex mathematical operations, high-frequency serial computing, and data-intensive applications.
[0004] To address the aforementioned issues, this invention presents a large-scale, high-speed molecular dynamics calculation method based on an FPGA heterogeneous computing platform. By rationally allocating different computational tasks within the heterogeneous computing platform, it fully leverages the advantages of the host computer in serial computing and process control, and the advantages of the FPGA in parallel computing and energy efficiency. Simultaneously, it utilizes the FPGA's off-chip DDR (Double Data Rate SDRAM) as a large-capacity data storage space, compensating for the limited on-chip memory capacity of the FPGA. This significantly improves computational speed and scale, while substantially reducing computational costs and power consumption. Summary of the Invention
[0005] Based on the above discussion, this invention primarily focuses on optimization techniques for efficient computation on heterogeneous molecular dynamics computing platforms. More specifically, the purpose of this invention is to provide a large-scale, high-speed molecular dynamics computation method based on an FPGA heterogeneous computing platform, thereby innovatively and effectively solving the difficulties faced by molecular dynamics computation in terms of computational speed, computational scale, computational power consumption, and computational cost.
[0006] To achieve the above objectives, the present invention adopts the following technical solution:
[0007] A method for large-scale high-speed molecular dynamics calculation based on an FPGA heterogeneous computing platform includes: a host computer control system and a slave FPGA computing system, wherein the host computer control system and the slave FPGA computing system are connected through a PCIe interface.
[0008] Specifically, the host computer control system mainly includes a calculation information input module, an atomic system mesh generation module, an atomic information encoding module, a host computer PCIe interface module, and an atomic information decoding module.
[0009] Specifically, the lower-level FPGA computing system mainly includes an FPGA-side PCIe interface module, a data storage module, a storage unit control module, a computing data scheduling module, and a molecular dynamics computing module.
[0010] The large-scale high-speed molecular dynamics calculation method based on the FPGA heterogeneous computing platform designed in this invention is mainly described as follows, from the overall execution flow of the method:
[0011] (1) Input the calculation configuration parameters and atom information:
[0012] The host computer control system reads the calculation configuration parameters and atomic information input by the user through the calculation information input module. Specifically, the calculation configuration parameters should include the shape of the simulation box, the calculation step size, the number of calculation steps, and the ensemble calculation category. Specifically, the atomic information should include the type of atom, atomic coordinates, and initial atomic velocity.
[0013] (2) Mesh generation of atomic systems:
[0014] The host computer control system subdivides the entire atomic system into several unit grids through the atomic system mesh generation module. Specifically, the force cutoff radius of the atomic system is used as the side length of each unit grid. After mesh generation, the grids are numbered sequentially. Atoms in the atomic system are assigned to corresponding unit grids, and the atoms in each unit grid are numbered.
[0015] (3) Atomic information encoding:
[0016] The host computer control system encodes atomic information through an atomic information encoding module. The encoded information for each atom should include the atom type, the atom's current coordinates, the atom's current velocity, the atom's grid index, the atom's index within the grid, the indexes of the grids containing the atom's neighboring atoms, and the indices of the atom's neighboring atoms within the grid.
[0017] Specifically, the atom type, the atom's current coordinates, and the atom's current velocity are generated by the user input in step (1); the atom's grid index and its index within the grid are generated in step (2); the indices of the grids containing the atom's neighboring atoms and their indices within the grid are calculated using the periodic boundary condition formula and the minimum mirror distance method formula. The periodic boundary condition formula is as follows:
[0018]
[0019] In the formula, the symbol μ represents the coordinates of the atom in the X, Y, Z directions, and the symbol L represents the coordinates of the atom in the X, Y, Z directions. μ The symbol μ′ represents the side length of the simulated box in this direction, and the symbol μ′ represents the atomic coordinates after translation under periodic boundary conditions. To round down. The formula for the minimum mirror distance method is:
[0020]
[0021] In the formula, μ lj The distance between atom l and atom j in the X, Y, Z directions is denoted by L. μ μ represents the side length of the simulated box in that direction. lj ′ represents the distance between atom l and atom j calculated using the minimum mirror image distance, and the symbol [] indicates rounding down to the nearest integer. Furthermore, the atomic information in floating-point representation is converted to fixed-point representation.
[0022] (4) PCIe data communication:
[0023] The host computer control system sends the calculation configuration parameters and atomic encoding information to the lower-level FPGA computing system via the host computer's PCIe interface module. The lower-level FPGA computing system receives the data and stores it in the data storage module via the FPGA's PCIe interface module. Specifically, the data storage module includes a small-capacity on-chip FPGA memory and a large-capacity off-chip FPGA DDR memory. Further, the calculation configuration parameters are cached in the on-chip memory for setting the molecular dynamics calculation module; the atomic encoding information is transferred to the off-chip DDR memory, and the atomic information is read by the calculation data scheduling module and input into the molecular dynamics calculation module for calculation.
[0024] (5) Atomic information scheduling:
[0025] The lower-level FPGA computing system reads atomic information stored in the external DDR into the on-chip memory through the storage unit control module. The lower-level FPGA computing system selects the atomic information to be read and the order through the computing data scheduling module. In particular, the storage unit control module judges the DDR data bus handshake signal and generates an intermediate buffer to cache the data and protect it across clock domains to achieve a high-speed and stable data flow. In particular, the grid mentioned below means the atomic information contained in the grid. Due to the limited on-chip memory, the strategy of the computing data scheduling module is to first read the cell grid numbered 1, take grid 1 as the center grid, and read 26 adjacent grids of grid 1 (26 for three-dimensional adjacency and 8 for two-dimensional adjacency) according to the adjacent grid index. After the grid read from the external DDR into the on-chip memory completes the calculation of the force in the next step (6), grid 2 is taken as the center grid, and 26 adjacent grids of grid 2 are read according to the adjacent grid index to calculate the atomic force. Furthermore, since some grids in the first reading are also adjacent grids of grid 2, only the remaining adjacent grids need to be read. Furthermore, since some grid cells in the first read are not adjacent to grid cell 2, they can be stored back in off-chip DDR to save on-chip memory space. This process continues until all grid cells have been calculated as the central grid.
[0026] (6) Calculate the forces acting on atoms:
[0027] The lower-level FPGA computing system performs force calculations on the atomic information read into the on-chip memory in step (5). It retrieves adjacent atom pairs from the atoms in the central grid, calculates the atomic energy, and then determines the force. The calculation method is as follows:
[0028] V=f(R) (3)
[0029] In the formula, the function f can be a neural network potential function, a machine learning potential function, or a traditional potential function; the symbol R represents the three-dimensional coordinates of the atom; and the symbol V represents the atomic potential energy. The calculation method from atomic potential energy to the force acting on the atom is as follows:
[0030]
[0031] In the formula, the symbol The forces acting on atoms are represented. Specifically, considering the complexity of the force field, according to the atom information scheduling strategy in step (5), the forces acting on all atoms can only be determined after all grids have been calculated as the central grid. Specifically, considering Newton's third law of motion, the forces acting on the central grid are calculated, and the forces acting on its adjacent grids can also be calculated. Therefore, during the process of calculating the central grid in turn, the component forces acting on atoms that are repeatedly calculated are cached and accumulated.
[0032] (7) Restricted molecular dynamics calculations:
[0033] The atomic forces calculated in step (6) are used to update the atomic velocities and positions. Further, restrictive molecular dynamics calculations, such as temperature control, pressure control, and constraint algorithms, are performed on the updated atomic system. The updated velocities and coordinates are stored in the external DDR via the storage unit control module, and an interrupt signal is sent to the host computer control system via the FPGA PCIe interface module. Further, without affecting the accuracy of the calculation results, steps (5), (6), and (7) can be repeated multiple times in the lower-level FPGA computing system, and an interrupt signal is sent to the host computer control system via the PCIe interface module. After receiving the interrupt signal, the host computer control system reads the updated atomic coordinates and velocities from the external DDR of the FPGA via the host computer PCIe interface module. Further, the read data is converted from fixed-point representation to floating-point representation via the atomic information decoding module.
[0034] (8) Loop judgment:
[0035] Each step is considered as completing steps (2) to (7). If the preset number of calculation steps is not reached, the atomic information received by the host computer control system in step (7) is input into the atomic system mesh generation module, and steps (2) to (7) are repeated until the preset number of calculation steps is reached, then the loop is exited and the process ends.
[0036] Compared with the prior art, the advantages of this invention are:
[0037] This invention innovatively applies molecular dynamics algorithms to a CPU-FPGA heterogeneous computing platform. Specifically designed for the FPGA architecture, it employs a multi-stage pipeline architecture with multiple parallel execution paths to accelerate molecular dynamics calculations. The large-capacity off-chip DDR of the FPGA expands the atomic scale of molecular dynamics calculations. Compared to CPUs and GPUs with equivalent computing power, the FPGA significantly reduces power consumption and computational costs. Within acceptable error and accuracy limits, it accelerates molecular dynamics calculations, expands the atomic scale of molecular dynamics calculations, reduces power consumption, and saves computational costs. Attached Figure Description
[0038] Figure 1 This is a flowchart of the operation of the present invention;
[0039] Figure 2 This is a schematic diagram of the mesh division of an atomic system;
[0040] Figure 3 This is a schematic diagram of atomic information encoding;
[0041] Figure 4 This is a schematic diagram of PCIe data communication;
[0042] Figure 5 This is a diagram illustrating the forces acting upon the body.
[0043] Figure 6 This is a schematic diagram of the system structure of the present invention; Detailed Implementation
[0044] The present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0045] This invention focuses on optimization techniques for efficient computation on heterogeneous molecular dynamics computing platforms. More specifically, the invention aims to provide a large-scale, high-speed molecular dynamics computation method based on an FPGA heterogeneous computing platform, thereby innovatively and effectively solving various difficulties faced by molecular dynamics computation in terms of computational speed, scale, power consumption, and cost. The method comprises the following steps: the user inputs computational configuration parameters and atomic system information; the host computer control system divides the atomic system into grids based on the atomic information, assigns atoms to corresponding cell grids, and sorts and numbers the grids; the host computer control system sends the computational configuration information and atomic encoding information to the FPGA via a PCIe interface module; the target address for the computational configuration information is on-chip memory, and the target address for the atomic encoding information is off-chip DDR; according to the data scheduling scheme, the forces of the central cell grid and adjacent grids are calculated and saved sequentially until all cell grids have been calculated and the forces of all atoms are determined; the velocity and coordinates are updated, and constrained molecular dynamics calculations are performed; after storing the calculation results in off-chip DDR, an interrupt signal is sent to the host computer control system; the host computer control system retrieves the latest atomic information from the DDR via the PCIe interface. The calculation is repeated until the preset number of calculation steps is reached. The invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0046] To achieve the above objectives, the present invention adopts the following technical solution:
[0047] A method for large-scale high-speed molecular dynamics calculation based on an FPGA heterogeneous computing platform includes: a host computer control system and a slave FPGA computing system, wherein the host computer control system and the slave FPGA computing system are connected through a PCIe interface.
[0048] Specifically, the host computer control system mainly includes a calculation information input module, an atomic system mesh generation module, an atomic information encoding module, a host computer PCIe interface module, and an atomic information decoding module.
[0049] Specifically, the lower-level FPGA computing system mainly includes an FPGA-side PCIe interface module, a data storage module, a storage unit control module, a computing data scheduling module, and a molecular dynamics computing module.
[0050] This invention presents a large-scale, high-speed molecular dynamics calculation method based on an FPGA heterogeneous computing platform. The method combines the following steps: Figure 1 and Figure 6 The main points are as follows:
[0051] (1) Input the calculation configuration parameters and atom information:
[0052] The host computer control system reads the calculation configuration parameters and atomic information input by the user through the calculation information input module. Specifically, the calculation configuration parameters should include the shape of the simulation box, the calculation step size, the number of calculation steps, and the ensemble calculation category. Specifically, the atomic information should include the type of atom, atomic coordinates, and initial atomic velocity.
[0053] (2) Mesh generation of atomic systems:
[0054] The host computer control system subdivides the entire atomic system into several unit grids through the atomic system grid partitioning module. For example... Figure 2 As shown, the edge length of the unit grid is based on the force cutoff radius of the atomic system. After the grid is generated, the grids are numbered sequentially according to... Figure 2 It is easy to see that the adjacent grids of each grid are fixed, meaning that finding the central grid determines the indices of the adjacent grids. The atoms in the atomic system are assigned to their corresponding cell grids, and the atoms in each cell grid are numbered.
[0055] (3) Atomic information encoding:
[0056] The host computer control system encodes atomic information through an atomic information encoding module. For example... Figure 3 As shown, the encoding information for each atom should include the atom type (spe), the atom's current coordinates (crd), the atom's current velocity (vel), the atom's grid index (cell_list), the atom's index in the grid (lst), the index of the grid containing the atom's neighboring atoms (pbc_cell), and the index of the atom's neighboring atoms in the grid (pbc_atom).
[0057] Specifically, the atom type, the atom's current coordinates, and the atom's current velocity are generated by the user input in step (1); the atom's grid index and its index within the grid are generated in step (2); the indices of the grids containing the atom's neighboring atoms and their indices within the grid are calculated using the periodic boundary condition formula and the minimum mirror distance method formula. The periodic boundary condition formula is as follows:
[0058]
[0059] In the formula, the symbol μ represents the coordinates of the atom in the X, Y, Z directions, and the symbol L represents the coordinates of the atom in the X, Y, Z directions. μ The symbol μ′ represents the side length of the simulated box in this direction, and the symbol μ′ represents the atomic coordinates after translation under periodic boundary conditions. To round down. The formula for the minimum mirror distance method is:
[0060]
[0061] In the formula, μ lj The distance between atom l and atom j in the X, Y, Z directions is denoted by L. μ μ represents the side length of the simulated box in that direction. lj ′ represents the distance between atom l and atom j calculated using the minimum mirror distance, and the symbol [] indicates rounding to the nearest integer. Inputting all atom coordinates into formula (1) yields the atom coordinates after periodic boundary translation. Further, to determine the neighboring atoms of an atom in grid 1, input the atoms in grid 1 and its 26 adjacent neighboring grids into formula (2). Atom l belongs to the central grid, and atom j belongs to the aforementioned grid 1 and its 26 adjacent neighboring grids. Determine the μ of each atom pair. lj If μ lj If the radius of curvature is less than the force cutoff radius, then the index of atom j is added to the adjacent index of atom l. Furthermore, the atomic information in floating-point representation is converted to fixed-point representation.
[0062] (4) PCIe data communication:
[0063] The host computer control system sends the calculated configuration parameters and atomic encoding information to the lower-level FPGA computing system via the host computer's PCIe interface module. The lower-level FPGA computing system receives the data via the FPGA's PCIe interface module and stores it in the data storage module. Specifically, the data storage module includes a small-capacity on-chip FPGA memory and a large-capacity off-chip FPGA DDR memory. Figure 4 As shown, the calculation configuration parameters are cached in the on-chip memory and used to set the molecular dynamics calculation module; the atomic encoding information is transferred to the off-chip DDR. In steps (5) and (6), the atomic information is read in an orderly manner according to the strategy of the calculation data scheduling module and input into the molecular dynamics calculation module for calculation.
[0064] (5) Atomic information scheduling:
[0065] The lower-level FPGA computing system reads atomic information stored in the external DDR into the on-chip memory through the storage unit control module. The lower-level FPGA computing system selects the atomic information to be read and the order through the computing data scheduling module. In particular, the storage unit control module judges the DDR data bus handshake signal and generates an intermediate buffer to cache the data and protect it across clock domains to achieve a high-speed and stable data flow. In particular, the grid mentioned below means the atomic information contained in the grid. Due to the limited on-chip memory, the strategy of the computing data scheduling module is to first read the cell grid numbered 1, take grid 1 as the center grid, and read 26 adjacent grids of grid 1 (26 for three-dimensional adjacency and 8 for two-dimensional adjacency) according to the adjacent grid index. After the grid read from the external DDR into the on-chip memory completes the calculation of force n in the next step (6), grid 2 is taken as the center grid, and 26 adjacent grids of grid 2 are read according to the adjacent grid index to calculate the atomic force. Further, since some grids in the first reading are also adjacent grids of grid 2, only the remaining adjacent grids need to be read. Furthermore, since some grid cells in the first read are not adjacent to grid cell 2, they can be stored back in off-chip DDR to save on-chip memory space. This process continues until all grid cells have been calculated as the central grid.
[0066] (6) Calculate the forces acting on atoms:
[0067] The lower-level FPGA computing system performs force calculations on the atomic information read into the on-chip memory in step (5), such as... Figure 5 As shown, using grid 1 as the central grid, atoms within it are searched to find adjacent atom pairs. These pairs are then input into the force calculation module to calculate the atomic energy and thus the force. The calculation method is as follows:
[0068] V=f(R) (3)
[0069] In the formula, the function f can be a neural network potential function, a machine learning potential function, or a traditional potential function; the symbol R represents the three-dimensional coordinates of the atom; and the symbol V represents the atomic potential energy. The calculation method from atomic potential energy to the force acting on the atom is as follows:
[0070]
[0071] In the formula, the symbol The forces acting on atoms are represented. Specifically, considering the complexity of the force field, according to the atom information scheduling strategy in step (5), the forces acting on all atoms can only be determined after all grids have been calculated as the central grid. Specifically, considering Newton's third law of motion, the forces acting on the central grid are calculated, and the forces acting on its adjacent grids can also be calculated. Therefore, during the process of calculating the central grid in turn, the component forces acting on atoms that are repeatedly calculated are cached and accumulated.
[0072] (7) Restricted molecular dynamics calculations:
[0073] The atomic forces calculated in step (6) are used to update the atomic velocities and positions. Further, restrictive molecular dynamics calculations, such as temperature control, pressure control, and constraint algorithms, are performed on the updated atomic system. The updated velocities and coordinates are stored in the external DDR via the storage unit control module, and an interrupt signal is sent to the host computer control system via the FPGA PCIe interface module. Further, without affecting the accuracy of the calculation results, steps (5), (6), and (7) can be repeated multiple times in the lower-level FPGA computing system, and an interrupt signal is sent to the host computer control system via the PCIe interface module. After receiving the interrupt signal, the host computer control system reads the updated atomic coordinates and velocities from the external DDR of the FPGA via the host computer PCIe interface module. Further, the read data is converted from fixed-point representation to floating-point representation via the atomic information decoding module.
[0074] (8) Loop judgment:
[0075] Each step is considered as completing steps (2) to (7). If the preset number of calculation steps is not reached, the atomic information received by the host computer control system in step (7) is input into the atomic system mesh generation module, and steps (2) to (7) are repeated until the preset number of calculation steps is reached, then the loop is exited and the process ends.
[0076] The above specific examples illustrate the principles and implementation methods of this invention in detail. These examples are only for helping to understand the core technical content of this invention and are not intended to limit the scope of protection of this invention. The technical solution of this invention is not limited to the specific embodiments described above. Based on the above specific embodiments of this invention, any improvements and modifications made to this invention by those skilled in the art without departing from the principles of this invention should fall within the scope of patent protection of this invention.
Claims
1. A method for large-scale high-speed molecular dynamics calculations based on an FPGA heterogeneous computing platform, comprising the following steps: (1) Input the calculation configuration parameters and atomic information. The host computer control system reads the calculation configuration parameters and atomic information input by the user through the calculation information input module. (2) Atomic system grid division: The host computer control system divides the entire atomic system into several unit grids through the atomic system grid division module, and assigns the atoms in the atomic system to the corresponding unit grids; (3) Atom information encoding: The host computer control system encodes the atom information through the atom information encoding module. The encoding information of each atom should include the atom type, the current coordinates of the atom, the current velocity of the atom, the grid index of the atom, the index of the atom in the grid, the index of the grid of the atom's neighboring atoms, and the index of the atom's neighboring atoms in the grid. (4) PCIe data communication: The host computer control system sends the calculation configuration parameters and atomic encoding information to the lower computer FPGA computing system through the host computer PCIe interface module. The lower computer FPGA computing system receives the data through the FPGA PCIe interface module and stores it in the data storage module. (5) Atomic information scheduling: The lower-level FPGA computing system reads the atomic information stored in the off-chip DDR into the on-chip memory through the storage unit control module. The lower-level FPGA computing system selects the atomic information and order to be read through the computing data scheduling module. The storage unit control module judges the DDR data bus handshake signal and generates an intermediate buffer to cache the data and protect it across clock domains, so as to achieve a high-speed and stable data flow. The following grid represents the atomic information contained within the grid; Due to limited on-chip memory, the strategy of the computational data scheduling module is as follows: first, read the cell grid numbered 1, and use grid 1 as the center grid. Then, read the corresponding number of adjacent grids of grid 1 according to the adjacent grid index. The adjacent grids are in a three-dimensional adjacent state, and 26 adjacent grids of grid 1 are read. After the grids read from the external DDR into the on-chip memory have completed the force calculation in the next step (6), grid 2 is used as the center grid. The 26 adjacent grids of grid 2 are read according to the adjacent grid index to calculate the atomic force. In the first reading, some grids are also adjacent grids of grid 2. At this time, only the remaining adjacent grids are read. In the first reading, some grids are not adjacent grids of grid 2. Then, they are stored back in the external DDR to save on-chip memory space. This process is repeated until all grids are used as the center grids for calculation. (6) Calculate the forces on the atoms. The lower-level FPGA computing system performs force calculations on the atomic information read into the on-chip memory in step (5). It searches for adjacent atom pairs in the central grid, calculates the atomic energy, and then determines the forces. The calculation method is as follows: In the formula, the function For neural network potential functions, machine learning potential functions, and traditional potential functions, the symbol is... The three-dimensional coordinates representing atoms, symbol This represents atomic potential energy; the calculation method from atomic potential energy to the force acting on an atom is as follows: In the formula, the symbol The forces acting on the atoms are represented by the atomic information scheduling strategy in step (5). Considering the complexity of the force field, the forces acting on all atoms can only be determined after all grids have been calculated as the central grid. Using Newton's third law of motion, the forces acting on the central grid are calculated, and the forces acting on the adjacent grids can also be calculated. During the process of calculating the central grid in turn, the component forces acting on the atoms that are repeatedly calculated are cached and accumulated. (7) Restricted molecular dynamics calculations: The atomic forces calculated in step (6) are used to update the atomic velocities and atomic positions; Restricted molecular dynamics calculations with temperature control, pressure control, and constraint algorithms are performed on the updated atomic system; (8) Loop judgment, complete steps (2) to (7) as one step; if the preset number of calculation steps is not reached, input the atomic information received by the host computer control system in step (7) into the atomic system grid division module, repeat steps (2) to (7) until the preset number of calculation steps is reached, jump out of the loop and end.
2. The large-scale high-speed molecular dynamics calculation method based on an FPGA heterogeneous computing platform as described in claim 1, characterized in that: This method includes a host computer control system and a lower-level FPGA computing system, wherein the host computer control system and the lower-level FPGA computing system are connected through a PCIe interface; The host computer control system mainly includes a calculation information input module, an atomic system mesh generation module, an atomic information encoding module, a host computer PCIe interface module, and an atomic information decoding module. The lower-level FPGA computing system mainly includes an FPGA-side PCIe interface module, a data storage module, a storage unit control module, a computing data scheduling module, and a molecular dynamics computing module.
3. The large-scale high-speed molecular dynamics calculation method based on an FPGA heterogeneous computing platform as described in claim 1, characterized in that: In step (2), the host computer control system subdivides the entire atomic system into several unit grids through the atomic system grid division module; after the grid division is completed, the grids are numbered in sequence; the atoms in the atomic system are assigned to the corresponding unit grids, and the atoms in each unit grid are numbered respectively.
4. The large-scale high-speed molecular dynamics calculation method based on an FPGA heterogeneous computing platform as described in claim 1, characterized in that: In step (3), the atom type, the atom's current coordinates, and the atom's current velocity are generated by the user input in step (1); the grid index where the atom is located and the atom's index in the grid are generated in step (2); the grid indices of the atom's neighboring atoms and the indices of the atom's neighboring atoms in the grid are calculated using the periodic boundary condition formula and the minimum mirror distance method formula. The periodic boundary condition formula is as follows: In the formula, the symbol This represents the atom in , , Coordinates in direction, symbol Represents the side length of the analog box in that direction, symbol Represents the atomic coordinates after translation under periodic boundary conditions, with the symbol... To round down; the formula for the minimum mirror distance method is: In the formula, For atoms With atoms exist , , Distance in direction, symbol This represents the side length of the simulated box in that direction. For atoms With atoms The distance calculated using the minimum mirror distance, symbol To round down to the nearest whole number.
5. The large-scale high-speed molecular dynamics calculation method based on an FPGA heterogeneous computing platform as described in claim 1, characterized in that: In step (4), the data storage module includes a small-capacity FPGA on-chip memory and a large-capacity FPGA off-chip DDR; the calculation configuration parameters are cached in the on-chip memory for setting the molecular dynamics calculation module; the atomic encoding information is transferred to the off-chip DDR, and the atomic information is read according to the calculation data scheduling module and input into the molecular dynamics calculation module for calculation.
6. The large-scale high-speed molecular dynamics calculation method based on an FPGA heterogeneous computing platform as described in claim 1, characterized in that: In step (7), the updated velocity and coordinates are stored in the external DDR through the storage unit control module, and an interrupt signal is sent to the host computer control system through the FPGA PCIe interface module. Under the condition that the accuracy of the calculation result is not affected, steps (5), (6), and (7) are repeated multiple times in the FPGA computing system, and an interrupt signal is sent to the host computer control system through the PCIe interface module. After receiving the interrupt signal, the host computer control system reads the updated atomic coordinates and atomic velocities in the external DDR of the FPGA through the host computer PCIe interface module. The read data is converted from fixed-point representation to floating-point representation through the atomic information decoding module.