Simulation methods for semiconductor devices, electronic devices, and computer-readable storage media

By constructing a multi-branch tree index structure, the problem of misjudgment in positioning of semiconductor device simulation methods in complex crystal structures in the existing technology is solved, realizing efficient and accurate particle position tracking and simulation, and improving simulation accuracy and speed.

CN121279043BActive Publication Date: 2026-04-03QUANXIN INTELLIGENT MFG TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-12-08
Publication Date
2026-04-03

AI Technical Summary

Technical Problem

Existing semiconductor device simulation methods are difficult to be compatible with Monte Carlo methods in ion implantation simulation of complex crystal structures, resulting in high positioning misjudgment rates, large simulation deviations, and failure to meet the requirements of high precision and real-time performance.

Method used

A multi-branch tree structure is constructed, and a multi-branch tree index is built through grid data. Based on the correspondence between leaf nodes and polyhedra, the search path of particles in semiconductor devices is determined, reducing the time overhead of particle position remapping.

Benefits of technology

It achieves accurate positioning of particle space, reduces the time overhead of particle movement tracking, improves simulation accuracy and efficiency, and supports high-precision Monte Carlo simulation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121279043B_ABST
    Figure CN121279043B_ABST
Patent Text Reader

Abstract

This disclosure relates to a simulation method, electronic device, and computer-readable storage medium for semiconductor devices. The method includes: constructing a multi-branch tree structure based on meshed data of a meshed semiconductor device, the multi-branch tree structure including at least a root node, multiple layers, and multiple leaf nodes, each leaf node representing a corresponding polyhedron among multiple polyhedra in the meshed semiconductor device; in response to determining a first spatial position of a particle within the semiconductor device, determining a first search path from the root node to a first leaf node among the multiple leaf nodes based on the correspondence between each leaf node and its corresponding polyhedron; and in response to the particle moving from the first spatial position to a second spatial position within the semiconductor device, determining a second search path in the multi-branch tree structure based on the first search path to determine a second leaf node representing the polyhedron where the second spatial position is located. This method effectively improves the performance of ion implantation simulation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of this disclosure primarily relate to the field of semiconductor devices, and more specifically, to simulation methods for semiconductor devices, electronic devices, and computer-readable storage media. Background Technology

[0002] Ion implantation is a crucial process in semiconductor manufacturing. It involves precisely injecting a beam of charged ions with a specific energy into a crystalline material matrix, enabling controllable adjustment of the spatial distribution of dopant elements. The Monte Carlo method is widely used for ion implantation simulation because it can accurately simulate the physical processes of ion scattering, energy loss, and lattice damage in crystalline materials. This method tracks the trajectories of a large number of ions and statistically analyzes their distribution in the material, thus providing a theoretical basis for process optimization and significantly reducing experimental costs and development cycles.

[0003] However, in ion implantation simulations of complex crystal structures (such as compound semiconductors), existing semiconductor device simulation methods still struggle to achieve compatibility with Monte Carlo methods. Existing methods are prone to misidentification (false positive rate can reach 10%) when dealing with mesh degradation or distortion. -2 The magnitude of the error (on the order of magnitude) caused simulation deviations of more than 40% for key physical phenomena such as the channeling effect. Summary of the Invention

[0004] According to exemplary embodiments of this disclosure, a simulation scheme for semiconductor devices is provided to at least partially address the above-mentioned or other potential defects.

[0005] In a first aspect of this disclosure, a simulation method for a semiconductor device is provided. The simulation method includes: constructing a multi-branch tree structure based on mesh data of a meshed semiconductor device, the multi-branch tree structure including at least a root node, multiple layers, and multiple leaf nodes, wherein each leaf node represents a corresponding polyhedron among multiple polyhedra in the meshed semiconductor device; in response to determining a first spatial position of a particle within the semiconductor device, determining a first search path from the root node to a first leaf node among the multiple leaf nodes based on the correspondence between each leaf node and the corresponding polyhedron, wherein the first spatial position is in the polyhedron represented by the first leaf node; and in response to the particle moving from the first spatial position to a second spatial position within the semiconductor device, determining a second search path in the multi-branch tree structure based on the first search path to determine a second leaf node representing the polyhedron where the second spatial position is located.

[0006] In a second aspect of this disclosure, an electronic device is provided. The electronic device includes a processor and a memory coupled to the processor, the memory having instructions stored therein, which, when executed by the processor, cause the electronic device to perform actions. The actions include constructing a multi-branch tree structure based on mesh data of a meshed semiconductor device, the multi-branch tree structure including at least a root node, multiple layers, and multiple leaf nodes, wherein each leaf node represents a corresponding polyhedron among multiple polyhedra in the meshed semiconductor device; in response to determining a first spatial position of a particle within the semiconductor device, determining a first search path from the root node to a first leaf node among the multiple leaf nodes based on the correspondence between each leaf node and a corresponding polyhedron, wherein the first spatial position is in the polyhedron represented by the first leaf node; and in response to the particle moving from the first spatial position to a second spatial position within the semiconductor device, determining a second search path in the multi-branch tree structure based on the first search path to determine a second leaf node representing the polyhedron where the second spatial position is located.

[0007] In some embodiments, constructing the multi-branch tree structure based on the grid data of the gridded semiconductor device includes: determining the spatial range occupied by all the polyhedra of the semiconductor device; representing the spatial range occupied by all the polyhedra as a whole with the root node; and recursively subdividing the spatial range represented by the root node until each leaf node corresponds to only one polyhedron.

[0008] In some embodiments, determining the spatial extent occupied by all the polyhedra includes: determining the minimum axial bounding box of the vertices of all the polyhedra; and determining the spatial extent occupied by the minimum axial bounding box as the spatial extent occupied by all the polyhedra.

[0009] In some embodiments, determining the second search path in the multi-branch tree structure based on the first search path includes: starting from the first leaf node, searching from the spatial range corresponding to the parent node of the first leaf node to determine the second search path from the first leaf node to the second leaf node.

[0010] In some embodiments, determining the second search path from the first leaf node to the second leaf node includes at least: starting from the first leaf node, sequentially checking the spatial range corresponding to the nodes in each of the plurality of layers upwards until it is determined that the second spatial position is located within the spatial range corresponding to the third node in the currently checked layer; and in response to determining that the second spatial position is located within the spatial range corresponding to the third node, traversing downwards from the third node to determine the second leaf node corresponding to the second spatial position; and determining the second search path as a sequence of nodes starting from the first leaf node, passing through the third node, and reaching the second leaf node.

[0011] In some embodiments, sequentially checking the spatial range corresponding to the node in each of the N layers includes: checking the spatial range corresponding to the direct parent node of the first leaf node; and in response to determining that the second spatial position is not located within the spatial range corresponding to the direct parent node, continuing to check the spatial range corresponding to the direct parent node of the direct parent node.

[0012] In some embodiments, the first search path is stored as a sequence of nodes from the root node to the first leaf node, and determining the second search path from the first leaf node to the second leaf node includes: reading the stored sequence of nodes to determine the first leaf node; and backtracking upwards from the first leaf node to determine the second leaf node.

[0013] In some embodiments, a leaf node is a node located in the layer furthest from the root node.

[0014] In some embodiments, the mesh data includes: three-dimensional finite element structure mesh data, which includes at least the vertex data of the polyhedron, the overall structural size parameter information of the semiconductor device, and the element topology relationship.

[0015] In some embodiments, the first spatial position and the second spatial position of the particle are obtained by applying a physical model for calculation.

[0016] In some embodiments, the multi-branch tree structure includes an octree structure, and the polyhedron is a tetrahedron.

[0017] In some embodiments, the particles are ions, and the method is used for Monte Carlo simulation of the process of ion implantation into the semiconductor device.

[0018] In a third aspect of this disclosure, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the method according to a first aspect of this disclosure.

[0019] The solutions using the embodiments of this disclosure can achieve at least the following beneficial effects: accurately mapping the spatial position of a particle to the corresponding polyhedron in a plurality of polyhedra; and effectively reducing the time overhead of remapping the spatial position of a particle to a polyhedron in response to particle movement by reusing multi-branch tree search path information. For example, when simulating the ion implantation process of semiconductor devices, the trajectory of a single particle typically needs to be repositioned thousands of times. The embodiments of this disclosure can greatly reduce the cumulative time overhead, not to mention the situation of tracking a large number of particles simultaneously.

[0020] It should be understood that the description in the Summary of the Invention is not intended to limit the key or essential features of the embodiments of this disclosure, nor is it intended to restrict the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0021] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. In the drawings, the same or similar reference numerals denote the same or similar elements.

[0022] Figure 1 A schematic diagram of an example environment in which several embodiments of the present disclosure can be implemented is shown.

[0023] Figure 2 A flowchart illustrating a simulation method for a semiconductor device according to some embodiments of the present disclosure is shown.

[0024] Figure 3A A three-dimensional mesh structure of a semiconductor device schematically representing an embodiment of the present disclosure is shown.

[0025] Figures 3B to 3E It shows the relationship with Figure 3A The diagram shows the multi-branch tree structure corresponding to the three-dimensional mesh structure.

[0026] Figure 4 A flowchart illustrating the construction of a second search path according to some embodiments of this disclosure is shown.

[0027] Figure 5 A schematic diagram of a three-dimensional finite element mesh of a semiconductor device according to an embodiment of the present disclosure is shown.

[0028] Figure 6 A block diagram of a computing device capable of implementing several embodiments of the present disclosure is shown. Detailed Implementation

[0029] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.

[0030] In the description of embodiments of this disclosure, the term "comprising" and similar terms should be understood as open-ended inclusion, i.e., "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first", "second", etc., may refer to different or the same objects. Other explicit and implicit definitions may also be included below.

[0031] Ion implantation is a process step in semiconductor manufacturing that involves implanting charged ions with a certain energy into semiconductor materials. It is a core process in semiconductor manufacturing, which allows for the controllable adjustment of the spatial distribution of dopant elements by precisely injecting accelerated high-energy charged ion beams into the crystal material matrix.

[0032] As mentioned earlier, the Monte Carlo method is widely used for ion implantation simulation. The Monte Carlo algorithm can simulate the ion implantation process to predict ion distribution and lattice damage in materials, optimize ion implantation process parameters, reduce experimental and R&D costs, and provide theoretical guidance for a deeper understanding of the physical processes involved in ion implantation.

[0033] As mentioned earlier, in ion implantation simulations of complex crystal structures (e.g., compound semiconductors), it is often necessary to discretize the geometric model into a polyhedral mesh (e.g., a tetrahedral mesh) to describe the properties of non-uniform materials. When the mesh size reaches millions or even hundreds of millions, the rapid localization of particles within the simulated crystal structure (i.e., quickly determining the tetrahedral cell in which the particle is currently located) becomes a bottleneck for computational performance. Traditional linear scanning methods require traversing all mesh cells in the polyhedral mesh, resulting in high computational complexity and failing to meet the real-time requirements of large-scale simulations. Although spatial partitioning trees (e.g., KD-Trees or octrees) can be used to accelerate localization in some cases, the construction of spatial partitioning trees is time-consuming, and frequent global searches are still required to track particle trajectories in real time, making it difficult to efficiently support high-precision Monte Carlo simulations.

[0034] Furthermore, existing methods are prone to misidentification when dealing with mesh degradation or distortion (the misidentification rate can reach 10%). -2The magnitude of this (on the order of magnitude) causes simulation errors of over 40% in key physical phenomena such as the channeling effect. To circumvent computational bottlenecks, industry is often forced to simplify mesh models (resulting in a loss of over 50% accuracy) or limit the simulation region (e.g., to less than 1 μm). 3 This severely restricts the development efficiency of advanced process nodes (such as those below 3nm). Therefore, there is an urgent need for an improved solution, such as a robust localization algorithm with O(1) complexity, sub-millisecond update capability, and high memory efficiency, to improve the practicality and reliability of ion implantation simulation.

[0035] According to embodiments of this disclosure, a simulation method for semiconductor devices is proposed. The simulation method includes: constructing a multi-branch tree structure based on mesh data of a meshed semiconductor device, the multi-branch tree structure including at least a root node, multiple layers, and multiple leaf nodes, wherein each leaf node represents a corresponding polyhedron among multiple polyhedra in the meshed semiconductor device; in response to determining a first spatial position of a particle within the semiconductor device, determining a first search path from the root node to a first leaf node among the multiple leaf nodes based on the correspondence between each leaf node and its corresponding polyhedron, wherein the first spatial position is in the polyhedron represented by the first leaf node; and in response to the particle moving from the first spatial position to a second spatial position within the semiconductor device, determining a second search path in the multi-branch tree structure based on the first search path to determine a second leaf node representing the polyhedron where the second spatial position is located. In this document, nodes without child nodes are referred to as leaf nodes, and nodes with child nodes are referred to as non-leaf nodes and / or intermediate nodes.

[0036] The methods disclosed in some embodiments, when tracking moving particles, can construct new multi-branch tree search paths based on previously determined multi-branch tree search paths, avoiding the need to reconstruct the search path from the root node each time. In this way, the time spent updating the search path for tracking particle movement is significantly reduced while effectively controlling computational costs. This approach allows for rapid mapping of moving particles to corresponding polyhedral units with low computational cost, thereby achieving better simulation results.

[0037] The embodiments of this disclosure will now be described in detail with reference to the accompanying drawings.

[0038] Figure 1A schematic diagram of an example environment 100 in which various embodiments of the present disclosure can be implemented is shown. The computing device 10 in the example environment 100 can be any device with computing capabilities. As a non-limiting example, the computing device 10 can be any type of fixed computing device, mobile computing device, or portable computing device, including but not limited to desktop computers, laptop computers, notebook computers, netbook computers, tablet computers, multimedia computers, mobile phones, etc.; all or some components of the computing device 10 can be distributed in the cloud.

[0039] In this example environment 100, computing device 10 may include or be deployed with acquisition module 1 and tracking module 2. The actions described below with respect to computing device 10 may be specifically performed by acquisition module 1 or tracking module 2.

[0040] The acquisition module 1 can be configured to acquire simulation information of the semiconductor device and at least one particle for which simulation calculations are required. This simulation information can be acquired from a client (not shown). As used herein, the simulation information may also be referred to as simulation data. Semiconductor device data in the simulation data may include one or more of the following: the geometry, material, and size of the semiconductor device.

[0041] The tracking module 2 can be configured to track the positional relationship of the simulated particle relative to the simulated semiconductor device in the simulated space. Specifically, in some embodiments, the tracking module 2 can be configured to iteratively and in real time update the relative positional relationship between the simulated particle and the simulated semiconductor device as the simulated particle moves continuously.

[0042] It should be understood that Figure 1 The module division shown is for illustrative purposes only and is not intended to be restrictive.

[0043] The following is for reference. Figure 2 , Figure 2 A flowchart of a simulation method 200 for a semiconductor device according to some embodiments of the present disclosure is illustrated. For example, method 200 may be performed using a computing device 10 or other computing device.

[0044] like Figure 2 As shown, method 200 can begin from box 21.

[0045] At box 21, a multi-branch tree structure is constructed based on the gridded data of the semiconductor devices. It is understood that the step of constructing the multi-branch tree structure aims to establish an efficient spatial index for subsequent spatial location queries and tracking.

[0046] It should be noted that the multiple polyhedra generated by meshing semiconductor devices through simulation are not of the same size, therefore it is not possible to simply map the spatial coordinates of a particle to a specific row, column, or row of polyhedra. Even if the spatial position information of both the polyhedra and the particle is known, it is still necessary to determine, through a retrieval method, which polyhedron occupies the space containing the particle's position coordinates. Some embodiments of this disclosure can accelerate this retrieval process.

[0047] In some embodiments, to construct a multi-branch tree structure, the three-dimensional finite element structure mesh data of the semiconductor device can first be acquired using the acquisition module 1. In some embodiments, the three-dimensional finite element structure mesh data may include at least one of the following: overall structure size parameter information, polyhedral position information, element topology relationships, etc. Information including the three-dimensional finite element structure mesh data of the semiconductor device can be input into the acquisition module 1 in any way. Then, the acquisition module 1 can output the three-dimensional finite element structure mesh data of the semiconductor device to the tracking module 2.

[0048] Next, the overall spatial extent occupied by all polyhedra in the 3D finite element mesh data of the semiconductor device can be determined. For example, determining the overall spatial extent occupied by all the polyhedra may include: determining the minimum axial bounding box (AABB) of the vertices of all the polyhedra, and then determining the spatial extent occupied by the minimum axial bounding box as the spatial extent occupied by all the polyhedra. This minimum axial bounding box can then be used as the overall spatial extent occupied by the simulated semiconductor device. In this way, it is ensured that the entire mesh structure is completely included in the simulation process.

[0049] The following reference Figure 3A and Figure 3B , such as in Figure 3A and Figure 3B As shown, after determining the total spatial extent occupied by all polyhedra, a root node s0 can be created for the multi-branch tree structure to represent the spatial extent occupied by all the polyhedra globally. For example, in Figure 3A The largest rectangle in the tree represents the area. Then, the spatial range represented by the root node can be recursively subdivided until each leaf node corresponds to only one of the polyhedra in the three-dimensional finite element mesh data of the semiconductor device. In other words, when constructing a multi-branch tree structure, the parent node divides and assigns its corresponding spatial range to child nodes according to predetermined rules, and the child nodes are mutually exclusive. According to embodiments of this disclosure, the parent node can represent a non-leaf node in the multi-branch tree structure. Figure 3A As shown, the root node s0 includes the entire space region, while node s1 includes the upper left region, node s2 includes the upper right region, and node s3 includes the lower left region. Figure 3AThe lower right region does not have a polyhedron, so no nodes need to be assigned to it. Therefore, it can be built on... Figure 3B The diagram shows a multi-branch tree structure 301 comprising at least one root node s0, multiple layers 30-33, and leaf nodes s6-s8 of the third layer 32 and multiple leaf nodes s9-s11 of the deepest layer 33. It should be understood that the deepest layer refers to the layer furthest from the root node s in the multi-branch tree structure 301, i.e., layer 33. Figure 3A and 3B The intermediate layers 31 and 32 of the multi-branch tree structure are also shown, each having corresponding intermediate nodes s1-s4. Furthermore, although this disclosure only shows and is based on an embodiment extending from the root node in three layers, the scope of this disclosure is not limited thereto. The multi-branch tree structure according to this disclosure can have fewer than three layers or more than three layers. For example, in embodiments not shown, it can have more than 100, more than 1000, or more layers. Similarly, the number of child nodes for each node can differ from the number shown in the figures of this disclosure. For example, in embodiments not shown, the number of child nodes for each node can be more than 5, more than 7, or more. Furthermore, in some embodiments, the number of child nodes for each node can be different. Moreover, although this disclosure divides the space of each parent node to each of its child nodes in an average manner, other division methods are also possible, as long as the space allocated to child nodes belonging to the same direct parent node is mutually exclusive and the sum of the space allocated to these child nodes is equal to that direct parent node.

[0050] Back Figure 2 After constructing the multi-branch tree structure corresponding to the three-dimensional finite element structure mesh data of the semiconductor device, method 200 can execute step 22.

[0051] like Figure 2 As shown, in step 22, in response to determining the spatial position of the particle within the semiconductor device, such as a first spatial position a, a search path can be determined starting from the root node s0 and reaching the first leaf node among a plurality of leaf nodes based on the correspondence between each leaf node and its corresponding polyhedron. According to some embodiments, the first spatial position a, such as its coordinates, can be calculated based on a physical model. Figure 3BAs shown, nodes s4 and s5 are child nodes of node s1. Therefore, the logic for path selection is as follows: the first spatial position 'a' is within the spatial range represented by the root node s0. Thus, the search is refined from the child nodes of the root node s0, and geometrically, it is determined that the first spatial position 'a' is within the spatial range represented by node s1 within the root node s0. We can continue traversing the child nodes of node s1 to find nodes representing smaller spatial ranges. However, since the first spatial position 'a' is not within the spatial range corresponding to nodes s2 and s3, there is no need to continue traversing the child nodes of nodes s2 and s3.

[0052] According to some embodiments, the particles may be ions, and the method 200 according to this disclosure can be used to simulate the process of ion implantation into the semiconductor device in Monte Carlo simulation.

[0053] Let's refer to the following together. Figure 3A and Figure 3C The method for constructing a first search path 34 according to embodiments of the present disclosure will be described in detail below. According to some embodiments of the present disclosure, simulated particles move in a simulation space according to preset positions, velocities, and directions. In order to perform the desired simulation process, the spatial relationship between the simulated particles and polyhedra in the three-dimensional finite element mesh data of the semiconductor device can be determined using methods according to some embodiments of the present disclosure. In some embodiments, octrees can be used for single-point localization. For example... Figure 3A As shown, at the first moment, the simulated particle is determined to be located at the first spatial position 'a' in the simulation space. To determine which polyhedron the particle's first spatial position 'a' at this first moment is located in, a recursive search is performed layer by layer from the root node 's0'.

[0054] For example, computing device 10 can first determine whether the first spatial location a is located among any of the direct child nodes s1-s3 of the root node, that is, whether it is located within the spatial range corresponding to the direct child nodes. Figure 3A In the example shown, computing device 10 can determine that the spatial extent corresponding to child node s1 covers the second spatial location b. Furthermore, computing device 10 can determine whether child node s1 is a leaf node, that is, whether child node s1 has child nodes. Figure 3A As illustrated in the example, node s1 includes at least direct child nodes s4-s5. Therefore, computing device 10 continues to determine whether a first spatial location a is located among any of the direct child nodes s4-s5 of node s1. According to some embodiments of this disclosure, computing device 10 can iteratively perform the above steps starting from the root node s0 until a leaf node is reached. For example, in Figure 3AIn the example, computing device 10 can determine that the first spatial location a is located in the first leaf node s11 (i.e., in the tetrahedron corresponding to the first leaf node s11), and can also determine that the first leaf node s11 no longer has further subdivided child nodes. In this case, as in Figure 3C As shown, computing device 10 can determine a first search path 34 as a search path starting from root node s0, passing through nodes s1 and s4, and then reaching the first leaf node s11. In some embodiments of this disclosure, computing device 10 can store the first search path 34, for example, by storing the sequence of nodes traversed from root node s0 to the first leaf node s11. For example, the first search path 34 can be represented as: s0->s1->s4->s11.

[0055] As mentioned above, the simulated particles move in the simulated space according to a pre-set speed and direction. In other words, in some embodiments, the simulated particles do not remain at the first spatial position a. Specifically, when the particle interacts with the tetrahedron, the particle's position, speed, and direction information change, requiring the reuse of multi-branch tree single-point positioning. Therefore, at a second moment different from the first moment, the particle can move from the first spatial position a to the second spatial position b. According to some embodiments, the second spatial position b can be calculated based on the physical model. If the particle reaches b, and conventional multi-branch tree single-point positioning is used, the result is as follows... Figure 3E As shown, its search path is s0->s1->s4->s10.

[0056] Figure 3E An example of reconstructing the third search path 33 starting from the root node s0 is shown. For example, in conjunction with the reference above... Figure 3C In a similar manner, the third search path 33 can start from the root node s0, pass through nodes s1 and s4, and reach the leaf node s10. For example, in Figure 3E In the example, to construct the third search path 33, at least three recursive searches need to be performed in total across three levels.

[0057] Refer again Figure 2 Continuing with the description of method 200 according to this disclosure, in order to continue tracking the correspondence between the moved particle and the polyhedra of the three-dimensional finite element structure mesh data, step 23 of method 200 can be performed. For example, at step 23, in response to the particle moving from a first spatial position a to a second spatial position b within the semiconductor device, a second search path can be determined in the multi-branch tree structure based on the first search path 34 to determine the second leaf node representing the polyhedron where the second spatial position b is located.

[0058] The following is for reference. Figure 3A ,3D , Figure 3E as well as Figure 4 The method 402 for constructing the second search path 35 is described in detail. For example, in order to track which polyhedron a particle located at the second spatial position b is in, the computing device 10 can perform... Figure 4 Method 400 calculates a second search path 35. For example, computing device 10 can read a previously stored first search path 34 and determine the first leaf node s11 as the starting point node in step 41. Subsequently, method 402 proceeds to step 42, searching for the second spatial position b of the particle starting from the spatial range corresponding to the parent node of the starting point node. Next, in step 43, it is determined whether the particle is located in the spatial range corresponding to a node (referred to as a third node) in the currently checked layer. For example, in step 43, method 402 can detect whether the second spatial position b is located in the spatial range corresponding to the parent node of the starting point node. If the result is not, the method proceeds to step 45, and the parent node of the starting point node is determined as the new starting point node, and then the method returns to step 42. In this way, computing device 10 can sequentially check the spatial range corresponding to the nodes in each of the plurality of layers until it is determined that the second spatial position b is located in the spatial range corresponding to the third node in the currently checked layer. In other words, method 402 can iteratively execute steps 42, 43, and 45 until it is determined that the second spatial location b is within the spatial range corresponding to the third node in the currently examined layer. Figure 3D In the example shown, the spatial range corresponding to the direct parent node s4 of the first leaf node s11 includes the second spatial position b where the particle is located (see [link]). Figure 3A After determining in step 43 that the second spatial location b is located within the spatial range corresponding to the third node, the method can proceed to step 44, where the computing device 10 can access the space from the third node (e.g., in...). Figure 3D In the example, node s4) is traversed downwards to determine the second leaf node corresponding to the second spatial location b. For example, in Figure 3A and Figure 3D In the example shown, it can be determined that the second spatial location b corresponds to the second leaf node s10.

[0059] The computing device 10 can determine the second search path 35 as a sequence of nodes starting from the first leaf node s11, passing through the third node s4, and reaching the second leaf node s10, such as... Figure 3DAs shown. In addition, similar to storing the first search path 34, the computing device 10 can store the node sequence s11->s4->s10 starting from the first leaf node s11, passing through the third node s4 and reaching the second leaf node s10, for use when tracking is required in response to the movement of the particle next time.

[0060] In addition, as mentioned above Figure 3E Compared to the node sequence s0->s1->s4->s10 required to search for the second leaf node s10 by the conventional multi-way tree single-point localization method shown, the node sequence s11->s4->s10 required according to the embodiments of this disclosure reduces the search cost by one step. In fact, in more complex structures not shown, for example, with a recursion depth greater than 10... 4 Greater than 10 6 or even greater than 10 8 In such cases, the reduction in search costs achieved by utilizing embodiments of this disclosure will be even more substantial.

[0061] In some embodiments, assuming the particle's position after moving is not among the child nodes s9-s11 of node s4, but rather, for example, moved to leaf node s5, the updated path is s11->s4->s1->s5. This is because when the particle is found not to be in leaf node s11, the search range is expanded to find the spatial region corresponding to node s4. If the particle is also found not to be in the spatial region corresponding to node s4, the search range is further expanded to find the spatial region corresponding to node s1. If the particle is found to be in the spatial region corresponding to node s1, the search continues down through the child nodes s4 and s5 of node s1, finally finding it in child node s5.

[0062] In some embodiments, the particle may be located at the boundary of a polyhedron. In other words, there may be multiple polyhedra corresponding to the first spatial position a and the second spatial position b, respectively. In this case, according to some embodiments of this disclosure, the endpoint of the first search path and the second search path can be determined as the first leaf node found in the leaf node search process (e.g., blocks 22 and 23 of method 200, and block 44 of method 400) that satisfies the above-described conditions for constructing the search path.

[0063] Some embodiments of this disclosure are based on the following consideration: after a particle interacts with a tetrahedron, the particle's position does not move much; the particle remains near the previously located tetrahedron, therefore particle relocation can reuse the previous search results. For example... Figure 3D As shown, the search path s11->s4->s10 requires one less search compared to the global search method. In fact, in complex structures, the number of searches is reduced even more.

[0064] In some embodiments, the multi-branch tree structure of this disclosure may be an octree. However, in other embodiments, the multi-branch tree structure of this disclosure may also be other multi-branch trees, such as a quadtree, a 2-3 tree, etc.

[0065] In some embodiments, the polyhedron of this disclosure may be a tetrahedron. However, in other embodiments, the polyhedron of this disclosure may also be other polyhedra, such as a hexahedron, an octahedron, etc.

[0066] The embodiments of this disclosure provide a robust localization algorithm with high-speed update capability and high memory efficiency, which improves the performance of ion implantation simulation for semiconductor devices.

[0067] Some embodiments of this disclosure achieve accurate spatial positioning of particles. Specifically, an octree can be used to determine the tetrahedral information at the spatial location of a particle with relatively high accuracy. Furthermore, it accelerates the positioning of tetrahedral mesh particles by reusing the search information from the previous octree search, thereby reducing the number of searches during repositioning. Since the trajectory of a single particle typically requires thousands of repositionings, this significantly reduces the time overhead.

[0068] Figure 5 A three-dimensional finite element mesh 500 of a semiconductor device according to an embodiment of the present disclosure is schematically illustrated. In some embodiments, to save computational costs, the semiconductor device is meshed at different densities during the simulation process, thereby producing the formation of polyhedra with non-uniform dimensions, such as... Figure 5 As shown. Furthermore, in semiconductor devices with complex geometries (not shown), the spatial distribution of polyhedra will also become more complex. These factors will make it impossible to simply and directly map the spatial position coordinates of the simulated particle to the corresponding simulated polyhedron in the grid 500 using mathematical calculations. Therefore, it would be advantageous to use an improved retrieval method according to embodiments of this disclosure to search for which polyhedron among a large number of polyhedra occupies the space corresponding to the particle's coordinate position.

[0069] Figure 6 A schematic block diagram of an example device 600 that can be used to implement embodiments of the present disclosure is shown. Device 600 can be used to implement... Figure 1 The computing device 10. As shown, the device 600 includes a central processing unit (CPU) 601, which can perform various appropriate actions and processes according to computer program instructions stored in read-only memory (ROM) 602 or loaded from storage unit 608 into random access memory (RAM) 603. The RAM 603 may also store various programs and data required for the operation of the device 600. The CPU 601, ROM 602, and RAM 603 are interconnected via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0070] Multiple components in device 600 are connected to I / O interface 605, including: input unit 606, such as keyboard, mouse, etc.; output unit 607, such as various types of monitors, speakers, etc.; storage unit 608, such as disk, optical disk, etc.; and communication unit 609, such as network card, modem, wireless transceiver, etc. Communication unit 609 allows device 600 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0071] Processing unit 601 executes the various methods and processes described above. For example, according to Figure 2 , Figure 3C-3D ,and Figure 4 The construction of either the first search path or the second search path shown can be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 608. In some embodiments, part or all of the computer program can be loaded and / or installed on device 600 via ROM 602 and / or communication unit 609. When the computer program is loaded into RAM 603 and executed by CPU 601, one or more steps of constructing either the first search path or the second search path described above can be performed. Alternatively, in other embodiments, CPU 601 can be configured by any other suitable means (e.g., by means of firmware) to execute either the first search path or the second search path.

[0072] The functions described above in this document can be performed at least in part by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: field programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASICs), systems-on-a-chip (SoCs), payload programmable logic devices (CPLDs), and so on.

[0073] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0074] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0075] Furthermore, although the operations are described in a specific order, this should be understood as requiring that such operations be performed in the specific order shown or in sequential order, or requiring that all illustrated operations be performed to achieve the desired result. In certain environments, multitasking and parallel processing may be advantageous. Similarly, although several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of this disclosure. Certain features described in the context of individual embodiments may also be implemented in combination in a single implementation. Conversely, various features described in the context of a single implementation may also be implemented individually or in any suitable sub-combination in multiple implementations.

[0076] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative examples of implementing the claims.

Claims

1. A simulation method for semiconductor devices, comprising: A multi-branch tree structure is constructed based on the grid data of the gridded semiconductor device. The multi-branch tree structure includes at least one root node, multiple layers, and multiple leaf nodes, wherein each leaf node represents a corresponding polyhedron among multiple polyhedra in the gridded semiconductor device. In response to determining a first spatial position of a particle within the semiconductor device, a first search path is determined from the root node to a first leaf node among the plurality of leaf nodes based on the correspondence between each leaf node and a corresponding polyhedron, wherein the first spatial position is in the polyhedron represented by the first leaf node; as well as In response to the particle moving from the first spatial position to the second spatial position within the semiconductor device, a second leaf node representing the polyhedron where the second spatial position is located is searched and determined in the multi-branch tree structure, and a second search path is determined based on the search, which is the traversal path from the first leaf node to the second leaf node.

2. The method of claim 1, wherein constructing the multi-branch tree structure based on gridded semiconductor device grid data comprises: Determine the spatial extent occupied by all the polyhedra of the semiconductor device; The root node represents the entire spatial extent occupied by all the polyhedra. as well as The spatial range represented by the root node is recursively subdivided until each leaf node corresponds to only one polyhedron.

3. The method according to claim 2, wherein determining the spatial extent occupied by all the polyhedra comprises: Determine the minimum axial bounding box of the vertices of all the polyhedra; as well as The space occupied by the minimum axial bounding box is defined as the space occupied by all the polyhedra.

4. The method of claim 1, wherein determining the second search path based on the traversal path from the first leaf node to the second leaf node based on the search comprises: Starting from the first leaf node, the search begins from the spatial range corresponding to the parent node of the first leaf node; as well as In response to finding the second leaf node, the second search path is determined as the sequence of nodes from the first leaf node to the second leaf node during the search process.

5. The method of claim 4, wherein determining the second search path based on the traversal path from the first leaf node to the second leaf node based on the search further includes at least: Starting from the first leaf node, the spatial range corresponding to the node in each of the plurality of layers is checked sequentially upwards until it is determined that the second spatial position is located within the spatial range corresponding to the third node in the currently checked layer. as well as In response to determining that the second spatial location is within the spatial range corresponding to the third node, traverse downwards from the third node to determine the second leaf node corresponding to the second spatial location; as well as The second search path is defined as a sequence of nodes that starts from the first leaf node, passes through the third node, and arrives at the second leaf node.

6. The method of claim 5, wherein sequentially checking the spatial range corresponding to the node in each of the plurality of layers comprises: Check the spatial range corresponding to the direct parent node of the first leaf node; as well as In response to determining that the second spatial location is not located within the spatial range corresponding to the direct parent node, the spatial range corresponding to the direct parent node's direct parent node is further checked.

7. The method of claim 1, wherein the first search path is stored as a sequence of nodes from the root node to the first leaf node, and wherein determining the second search path from the first leaf node to the second leaf node comprises: Read the stored node sequence to determine the first leaf node; as well as The second leaf node is determined by tracing back upwards from the first leaf node.

8. The method of claim 1, wherein the leaf node is a node located in the layer furthest from the root node.

9. The method according to any one of claims 1 to 8, wherein the grid data comprises: The three-dimensional finite element structure mesh data includes at least the vertex data of the polyhedron, the overall structural size parameters of the semiconductor device, and the element topology.

10. The method according to any one of claims 1 to 8, wherein the first spatial position and the second spatial position of the particle are obtained by applying a physical model for calculation.

11. The method according to any one of claims 1 to 8, wherein the multi-branch tree structure comprises an octagonal tree structure, and wherein the polyhedron is a tetrahedron.

12. The method according to any one of claims 1 to 8, wherein the particle is an ion, and the method is used for Monte Carlo simulation of the process of ion implantation into the semiconductor device.

13. An electronic device, comprising: processor; as well as A memory coupled to the processor, the memory having instructions stored therein, the instructions which, when executed by the processor, cause the electronic device to perform actions, the actions including: A multi-branch tree structure is constructed based on the grid data of the gridded semiconductor device. The multi-branch tree structure includes at least one root node, multiple layers, and multiple leaf nodes, wherein each leaf node represents a corresponding polyhedron among multiple polyhedra in the gridded semiconductor device. In response to determining a first spatial position of a particle within the semiconductor device, a first search path is determined from the root node to a first leaf node among the plurality of leaf nodes, based on the correspondence between each leaf node and its corresponding polyhedron, wherein the first spatial position is within the polyhedron represented by the first leaf node; and In response to the particle moving from the first spatial position to the second spatial position within the semiconductor device, a second leaf node representing the polyhedron where the second spatial position is located is searched and determined in the multi-branch tree structure, and a second search path is determined based on the search, which is the traversal path from the first leaf node to the second leaf node.

14. A computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method according to any one of claims 1-12.

Citation Information

Patent Citations

  • Triggering method and equipment for combined graph in configuration human-computer interface station graph and medium

    CN116841531A

  • Semiconductor device simulation-oriented octree grid encryption and generation method

    CN118071960A