Semiconductor device classification methods and related devices

By determining the optimal range of initial group number k and using the K-means clustering algorithm, the problem of current imbalance in semiconductor devices operating in parallel was solved, improving the accuracy of classification and the stability of the system.

CN118228153BActive Publication Date: 2026-07-17HEFEI UNIV OF TECH

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HEFEI UNIV OF TECH
Filing Date
2024-03-12
Publication Date
2026-07-17

AI Technical Summary

Technical Problem

When semiconductor devices operate in parallel, immature manufacturing processes can lead to uneven current, resulting in thermal imbalance and overshoot stress, which affects system lifespan and safe operation.

Method used

By determining the optimal range of initial group number k, the semiconductor devices are clustered multiple times using the K-means clustering algorithm. A line graph of the intra-cluster error variance (SSE) is plotted, and the devices are selected and divided into N semiconductor device groups to prevent over-subdivision or over-aggregation.

Benefits of technology

This improves the accuracy of semiconductor device classification, reduces current imbalance, and ensures stable system operation and extended lifespan.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118228153B_ABST
    Figure CN118228153B_ABST
Patent Text Reader

Abstract

This application discloses a semiconductor device classification method and related apparatus. The method includes obtaining the total number n of semiconductor devices to be grouped and the number N of final grouping groups; determining the optimal initial grouping number k based on the n, where n, N, and k are all positive integers; obtaining the device parameters of the semiconductor devices to be grouped, and clustering the semiconductor devices to be grouped multiple times within the value range based on the device parameters; determining the intra-cluster error variance (SSE) of each clustering group, and plotting a line graph of the value of k versus the SSE; determining k based on the line graph, and filtering the semiconductor devices to be grouped based on k, classifying the filtered semiconductor devices into the N semiconductor device groups. Using this application embodiment can prevent over-subdivision or over-aggregation during hierarchical structure construction, which could affect the accuracy of the classification results.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of semiconductor manufacturing technology, and in particular to a method for classifying semiconductor devices and related apparatus. Background Technology

[0002] Due to the immaturity of semiconductor device fabrication processes, it is difficult to maintain consistent device parameters, inevitably leading to dynamic and static current imbalances when devices are connected in parallel. This current imbalance causes unequal losses and voltage and current stresses among the parallel devices, particularly creating higher overshoot stress on the weakest devices, jeopardizing the safety of other parallel devices. Furthermore, current imbalances among parallel devices can cause thermal imbalances, reducing the overall system lifespan and affecting the safe operation of the converter. Simultaneously, current imbalances will force the entire parallel module to operate at a derating rate.

[0003] For chip selection in current balancing methods, hierarchical clustering-based device selection methods are currently the primary approach. These methods typically treat each semiconductor as a set, calculate the distance between each set, merge the two nearest sets into a new set, and then calculate the distance between this new set and all other sets, repeating this process until all sets are merged into a single set. This type of model does not require pre-specifying the number of clusters, can generate hierarchical structures, provides more information about the similarity between data, and adapts to clusters of different shapes and sizes. However, constructing the hierarchical structure can lead to over-subdivision or over-aggregation. Summary of the Invention

[0004] This application provides a semiconductor device classification method and related apparatus, which can prevent excessive subdivision or excessive aggregation during the construction of hierarchical structures, thus affecting the accuracy of the classification results.

[0005] The first aspect of this application provides a method for classifying semiconductor devices, the method comprising:

[0006] Obtain the total number n of semiconductor devices to be grouped and the number N of the final groupings;

[0007] The optimal initial grouping number k is determined based on n, where n, N, and k are all positive integers.

[0008] Obtain the device parameters of the semiconductor devices to be grouped, and cluster and group the semiconductor devices to be grouped multiple times within the range of the device parameters;

[0009] Determine the intra-cluster error variance for each clustering group, and plot a line graph of the value of k versus the intra-cluster error variance SSE;

[0010] The k is determined based on the line graph, and the semiconductor devices to be grouped are screened based on the k, and the screened semiconductor devices are divided into the N semiconductor device groups.

[0011] Optionally, the step of filtering the semiconductor devices to be grouped according to k includes:

[0012] The semiconductor devices to be grouped are non-uniformly grouped according to k to obtain k groups of semiconductor devices;

[0013] x semiconductor devices are removed from the first semiconductor device group to obtain a new k semiconductor device group. The first semiconductor device group includes the group with the largest number of semiconductor devices among the k semiconductor device groups. The x is the number of semiconductor devices to be filtered and the x is determined according to the n and N.

[0014] Optionally, each of the N semiconductor device groups includes b semiconductor devices, where b is determined based on n and N. The step of assigning the selected semiconductor devices to the N semiconductor device groups includes:

[0015] A second semiconductor device group is determined from the new k semiconductor device groups, wherein the number of semiconductor devices included in the second semiconductor device group is not an integer multiple of b;

[0016] The second semiconductor device groups are recombined in pairs so that the number of semiconductor devices included in each second semiconductor device group is an integer multiple of b;

[0017] b semiconductor devices are selected from each of the second semiconductor device groups to obtain the N semiconductor device groups.

[0018] Optionally, the second semiconductor device group includes a third semiconductor device group and a fourth semiconductor device group, wherein the remainder of the number of semiconductor devices in the third semiconductor device group divided by b is less than the remainder of the number of semiconductor devices in the fourth semiconductor device group divided by b, and the sum of the remainders of the number of semiconductor devices in the third semiconductor device group and the fourth semiconductor device group divided by b is an integer multiple of b.

[0019] The step of recombining the second semiconductor device groups in pairs, such that the number of semiconductor devices in each second semiconductor device group is an integer multiple of b, includes:

[0020] c semiconductor devices are moved from the third semiconductor device group to the fourth semiconductor device group, where c is the remainder of the number of semiconductor devices in the third semiconductor device group and b.

[0021] Optionally, the method further includes:

[0022] The weighted average value of the device parameters of the semiconductor device is determined based on the device parameters and weights of the device parameters.

[0023] The step of removing x semiconductor devices from the first semiconductor device group includes: removing the x semiconductor devices with the largest weighted average value from the first semiconductor device group;

[0024] The step of moving c semiconductor devices from the third semiconductor device group to the fourth semiconductor device group includes: determining the median of the weighted average value in the third semiconductor device group, and determining the difference between the median and the weighted average value; moving the c semiconductor devices with the smallest difference from the third semiconductor device group to the fourth semiconductor device group.

[0025] The step of selecting b semiconductor devices from each of the second semiconductor device groups includes: selecting the b semiconductor devices with the largest weighted average value from each of the second semiconductor device groups.

[0026] Optionally, the value of k can be in the range [2, int]. ], , , where int is the floor function and mod is the modulo function.

[0027] Optionally, the semiconductor device is a SiC MOSFET device, and the device parameters of the semiconductor device include on-resistance and threshold voltage.

[0028] A second aspect of this application provides a semiconductor device sorting apparatus, the apparatus comprising:

[0029] The data acquisition unit is used to acquire the total number n of semiconductor devices to be grouped and the number N of the final grouping groups;

[0030] The value determination unit is used to determine the range of values ​​for the optimal initial grouping number k based on the n, where n, N, and k are all positive integers;

[0031] A clustering and grouping unit is used to obtain the device parameters of the semiconductor devices to be grouped, and to cluster and group the semiconductor devices to be grouped multiple times within the range of the device parameters.

[0032] The icon drawing unit is used to determine the intra-cluster error variance for each clustering group and to draw a line graph of the value of k and the intra-cluster error variance SSE.

[0033] The device partitioning unit is used to determine k based on the line graph, and to screen the semiconductor devices to be grouped based on k, and to partition the screened semiconductor devices into the N semiconductor device groups.

[0034] A third aspect of this application provides an electronic device, including: a processor and a memory;

[0035] The processor is connected to a memory, wherein the memory is used to store computer programs and the processor is used to invoke the computer programs to execute the methods as described in the first aspect of the embodiments of this application.

[0036] A fourth aspect of this application provides a computer-readable storage medium storing a computer program, the computer program including program instructions, which, when executed by a processor, perform the method as described in the first aspect of this application.

[0037] This application obtains the total number n of semiconductor devices to be grouped and the number N of final groupings; determines the optimal initial grouping number k based on n, where n, N, and k are all positive integers; obtains the device parameters of the semiconductor devices to be grouped, and clusters the semiconductor devices to be grouped multiple times within the specified value range based on the device parameters; determines the intra-cluster error variance (SSE) for each clustering, and plots a line graph of the value of k versus the SSE; determines k based on the line graph, and filters the semiconductor devices to be grouped based on k, assigning the filtered semiconductor devices to the N semiconductor device groups. It can be seen that this application embodiment first determines the optimal initial grouping number, and then filters and groups the semiconductor devices to be grouped based on the optimal initial grouping number. This can prevent over-subdivision or over-aggregation during hierarchical structure construction, which could affect the accuracy of the classification results. Attached Figure Description

[0038] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0039] Figure 1 A schematic diagram of the operating environment of a semiconductor device classification application provided in one embodiment of this application is shown;

[0040] Figure 2 A flowchart illustrating a semiconductor device classification method provided in one embodiment of this application is shown;

[0041] Figure 3 A flowchart illustrating a semiconductor device classification method provided in one embodiment of this application is shown;

[0042] Figure 4 This paper shows a schematic diagram of the structure of a semiconductor device sorting apparatus provided in one embodiment of the present application;

[0043] Figure 5 A schematic diagram of the structure of a computer device provided in one embodiment of this application is shown. Detailed Implementation

[0044] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.

[0045] Please refer to Figure 1 This diagram illustrates a schematic of the operating environment for a semiconductor device classification application provided in one embodiment of this application. The operating environment may include a terminal 10 and a server 20.

[0046] Terminal 10 includes, but is not limited to, electronic devices such as mobile phones, computers, smart voice interaction devices, smart home appliances, in-vehicle terminals, game consoles, e-book readers, multimedia playback devices, and wearable devices. Application clients can be installed on terminal 10.

[0047] In this embodiment, the application described above can be any application capable of providing semiconductor device classification services. Typically, this application is an industrial application. Of course, other types of applications besides industrial applications can also provide services dependent on semiconductor device classification. For example, research applications, browser applications, virtual reality (VR) applications, augmented reality (AR) applications, etc., are not limited in this embodiment. Optionally, a client of the aforementioned application runs on terminal 10.

[0048] Server 20 provides background services to clients of applications in terminal 10. For example, server 20 can be a background server for the aforementioned applications. Server 20 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. Optionally, server 20 can simultaneously provide background services to applications in multiple terminals 10.

[0049] Optionally, terminal 10 and server 20 can communicate with each other via network 30. Terminal 10 and server 20 can be directly or indirectly connected via wired or wireless communication, which is not limited herein.

[0050] Please refer to Figure 2 This document illustrates a flowchart of a semiconductor device classification method according to an embodiment of this application. This method can be applied to computer devices, which refer to electronic devices capable of data computation and processing. For example, the executing entity for each step could be... Figure 1 The application runtime environment shown is either terminal 10 or server 20. The method may include the following steps:

[0051] Step 201: Obtain the total number n of semiconductor devices to be grouped and the number N of the final grouping.

[0052] The total number n of semiconductor devices to be grouped and the number N of final groupings are specified in advance. Semiconductor devices can be semiconductor switching devices, such as field effect transistors (FETs), transistors, insulated-gate bipolar transistors (IGBTs), etc. FETs include junction field effect transistors (JFETs) and metal-oxide semiconductor field effect transistors (MOSFETs).

[0053] Step 202: Determine the range of values ​​for the optimal initial grouping number k based on the n, where n, N, and k are all positive integers.

[0054] Where k takes values ​​in the range [2, int] `int` is the floor function, which rounds up for negative numbers and down for positive numbers. For example, if n is 8, then `int`... =2, n is 14, then int =3, n is 21, then int =4.

[0055] Step 203: Obtain the device parameters of the semiconductor devices to be grouped, and cluster the semiconductor devices to be grouped multiple times within the range of the device parameters.

[0056] Device parameters can include, for example, current, voltage, frequency, noise, temperature, power, delay, capacity, reliability, and size.

[0057] The semiconductor device is a SiC MOSFET device, and its device parameters include on-resistance Rds(on) and threshold voltage Vgs(th). On-resistance is the ratio of the voltage across the diode to the on-current. Threshold voltage is the voltage corresponding to a normalized current of 100nA under a certain MOSFET width-to-length ratio.

[0058] Specifically, the step of clustering the semiconductor devices to be grouped multiple times within the range of values ​​according to the device parameters includes: clustering the n semiconductor devices to be grouped for each value within the range of values ​​according to the on-resistance Rds(on) and threshold voltage Vgs(th) to achieve multiple clustering. The clustering algorithm can be the K-means clustering algorithm, and the number of clustering is equal to the number of values ​​of k within the range of values.

[0059] It should be noted that due to limitations in SiC wafer growth, device packaging, and production costs, the current-carrying capacity of existing commercially available SiC MOSFET devices remains relatively low, only tens of amperes. In high-capacity system applications such as electric aircraft, new energy vehicles, and photovoltaic inverters, it is often necessary to use SiC MOSFET modules with multiple chips connected in parallel, or multiple discrete SiC MOSFET devices operating in parallel. Therefore, classifying the manufactured SiC MOSFET devices is essential.

[0060] However, due to the immaturity of SiC MOSFET device fabrication technology, it is difficult to maintain consistent device parameters. Differences in threshold voltage, transconductance, on-resistance, and parasitic capacitance are inevitable when devices are connected in parallel, leading to dynamic and static current imbalances. Parallel circuits significantly increase the number of power devices and parasitic inductance, making it difficult to maintain a balanced distribution of parasitic inductance among the parallel SiC MOSFET devices. Because SiC devices have high switching speeds and high current change rates (up to 20 A / μs), differences in parasitic inductance across parallel branches cause induced voltage imbalances, exacerbating the current imbalance. This imbalance results in unequal losses and voltage and current stress among the parallel devices, particularly increasing overshoot stress on the weakest components, jeopardizing the safety of other parallel devices. Furthermore, the current imbalance among parallel devices can cause thermal imbalances, reducing the overall system lifespan and affecting the safe operation of the converter. Meanwhile, the current imbalance problem will also force the entire parallel module to operate at a reduced rating.

[0061] Step 204: Determine the intra-cluster error variance for each clustering group, and plot a line graph of the value of k versus the intra-cluster error variance SSE.

[0062] The sum of squared errors (SSE) within a cluster measures the looseness of the clusters. As an objective function, it is essentially a strict coordinate descent process. SSE does not guarantee finding the global optimum, only a local optimum. In other words, it may result in multiple possible partitions of the k clusters. For example... Figure 3 As shown, a line graph of the value of k and SSE provided in an embodiment of this application is presented. The horizontal axis of the line graph is k, the vertical axis is SSE, and the value of k ranges from [2, 9].

[0063] Step 205: Determine k based on the line graph, and screen the semiconductor devices to be grouped based on k, and divide the screened semiconductor devices into the N semiconductor device groups.

[0064] Specifically, determining k based on the line graph includes: determining k from the line graph using the Elbow Method.

[0065] The core idea of ​​the elbow method is that as the number of clusters k (i.e., the initial number of groups) increases, the sample partitioning becomes more refined, and the aggregation degree of each cluster gradually increases, thus the sum of squared errors (SSE) naturally decreases. Furthermore, when k is less than the actual number of clusters, increasing k significantly increases the aggregation degree of each cluster, resulting in a large decrease in SSE. However, when k reaches the actual number of clusters, the return on aggregation from further increasing k decreases rapidly, so the decrease in SSE slows down sharply. Then, as the value of k continues to increase, the decrease tends to level off. In other words, the relationship between SSE and k resembles the shape of an elbow, and the k value corresponding to this elbow is the actual number of clusters in the data. For example, according to... Figure 3 The line graph shown can be used to determine the optimal initial grouping number k=4.

[0066] This application obtains the total number n of semiconductor devices to be grouped and the number N of final groupings; determines the optimal initial grouping number k based on n, where n, N, and k are all positive integers; obtains the device parameters of the semiconductor devices to be grouped, and clusters the semiconductor devices to be grouped multiple times within the specified value range based on the device parameters; determines the intra-cluster error variance (SSE) for each clustering, and plots a line graph of the value of k versus the SSE; determines k based on the line graph, and filters the semiconductor devices to be grouped based on k, assigning the filtered semiconductor devices to the N semiconductor device groups. It can be seen that this application embodiment first determines the optimal initial grouping number, and then filters and groups the semiconductor devices to be grouped based on the optimal initial grouping number. This can prevent over-subdivision or over-aggregation during hierarchical structure construction, which could affect the accuracy of the classification results.

[0067] In one embodiment provided in this application, the step of screening the semiconductor devices to be grouped according to the k includes:

[0068] The semiconductor devices to be grouped are non-uniformly grouped according to k to obtain k groups of semiconductor devices;

[0069] x semiconductor devices are removed from the first semiconductor device group to obtain a new k semiconductor device group. The first semiconductor device group includes the group with the largest number of semiconductor devices among the k semiconductor device groups. The x is the number of semiconductor devices to be filtered and the x is determined according to the n and N.

[0070] Specifically, the non-uniform grouping of the semiconductor devices to be grouped according to k includes: using an improved K-means clustering algorithm to non-uniformly group n semiconductor devices according to k. The improved K-means clustering algorithm adds parameter constraints compared to the previous K-means clustering algorithm to ensure the accuracy of the classification results, while also simplifying the algorithm model and reducing computational complexity. The constrained parameters include at least one of the following: a suitable number of classification groups k, setting a maximum number of runs, determining good initial values, selecting Bregman divergence as the measurement type, using squared Euclidean distance as the distance, and setting a maximum optimization step size. The maximum number of runs can be set to 1000, and the maximum optimization step size can be set to 100.

[0071] Among them, the k groups obtained by uneven grouping each have There are several devices, j = 1, 2, ..., k-1, k. The x is determined based on n and N, more specifically, mod is the modulo function.

[0072] Assuming there are 21 semiconductor devices to be grouped, an improved K-means clustering algorithm is used to cluster these 21 devices. The number of clusters k is chosen to be 3, resulting in 3 groups of semiconductor devices. Assume the first group has... Five semiconductor devices, the second group has Six semiconductor devices, the third group has There are 10 semiconductor devices. The third group has the most semiconductor devices, therefore the third group is the first semiconductor device group. Remove devices from the third group. There are 10 semiconductor devices, and 9 semiconductor devices remain.

[0073] In this embodiment, excess semiconductor devices are placed in the next batch for screening. Without increasing the loss rate, this helps to improve the robustness of the algorithm and solve the problems of noise and outliers.

[0074] In one embodiment provided in this application, each of the N semiconductor device groups includes b semiconductor devices, and the number b is determined according to n and N. The step of assigning the selected semiconductor devices to the N semiconductor device groups includes:

[0075] A second semiconductor device group is determined from the new k semiconductor device groups, wherein the number of semiconductor devices included in the second semiconductor device group is not an integer multiple of b;

[0076] The second semiconductor device groups are recombined in pairs so that the number of semiconductor devices included in each second semiconductor device group is an integer multiple of b;

[0077] b semiconductor devices are selected from each of the second semiconductor device groups to obtain the N semiconductor device groups.

[0078] Wherein, b is determined based on n and N. .

[0079] Specifically, determining the second semiconductor device group from the new k semiconductor device groups can be achieved by determining the number of semiconductor devices included in each of the new k semiconductor device groups and the modulus of b, and then determining the semiconductor device group with a non-zero modulus as the second semiconductor device group.

[0080] Continuing from the previous example, if n=21 and N=4, then =5. The number of semiconductor devices included in each semiconductor device group and the modulus of b. , , , The second and third groups are the second semiconductor device group.

[0081] The second semiconductor device groups are recombined in pairs so that the number of semiconductor devices in each second semiconductor device group is an integer multiple of b. For example, one semiconductor device can be moved from the second group to the third group, or four semiconductor devices can be moved from the third group to the second group, so that the number of semiconductor devices in both the second and third groups is an integer multiple of 5.

[0082] Select b semiconductor devices from each of the second semiconductor device groups to obtain the N semiconductor device groups. If one semiconductor device is moved from the second group to the third group, the third group will contain 10 semiconductor devices. If five semiconductor devices are moved from the third group to form the fourth group, each group will contain 5 semiconductor devices, for a total of 4 groups. If four semiconductor devices are moved from the third group to the second group, the second group will contain 10 semiconductor devices. If five semiconductor devices are moved from the second group to form the fourth group, each group will contain 5 semiconductor devices, for a total of 4 groups.

[0083] In one embodiment provided in this application, the second semiconductor device group includes a third semiconductor device group and a fourth semiconductor device group. The remainder of the number of semiconductor devices in the third semiconductor device group divided by b is less than the remainder of the number of semiconductor devices in the fourth semiconductor device group divided by b. The sum of the remainders of the number of semiconductor devices in the third semiconductor device group and the fourth semiconductor device group divided by b is an integer multiple of b.

[0084] The step of recombining the second semiconductor device groups in pairs, such that the number of semiconductor devices in each second semiconductor device group is an integer multiple of b, includes:

[0085] c semiconductor devices are moved from the third semiconductor device group to the fourth semiconductor device group, where c is the remainder of the number of semiconductor devices in the third semiconductor device group and b.

[0086] Continuing with the previous example, the number of semiconductor devices in the second group has a remainder of 1 when divided by b, and the number of semiconductor devices in the third group has a remainder of 4 when divided by b. Since the remainder of 1 when divided by b is less than the remainder of 4 when divided by b, the second group is the third semiconductor device group, and the third group is the fourth semiconductor device group. Therefore, one semiconductor device is moved from the second group to the third group.

[0087] In one embodiment provided in this application, the method further includes:

[0088] The weighted average value of the device parameters of the semiconductor device is determined based on the device parameters and weights of the device parameters.

[0089] The step of removing x semiconductor devices from the first semiconductor device group includes: removing the x semiconductor devices with the largest weighted average value from the first semiconductor device group;

[0090] The step of moving c semiconductor devices from the third semiconductor device group to the fourth semiconductor device group includes: determining the median of the weighted average value in the third semiconductor device group, and determining the difference between the median and the weighted average value; moving the c semiconductor devices with the smallest difference from the third semiconductor device group to the fourth semiconductor device group.

[0091] The step of selecting b semiconductor devices from each of the second semiconductor device groups includes: selecting the b semiconductor devices with the largest weighted average value from each of the second semiconductor device groups.

[0092] The weights of device parameters are determined based on performance indicators. For example, if the device parameters are on-resistance and threshold voltage, and the dynamic current sharing performance requirement is higher than the static current sharing performance requirement, then the weight of the threshold voltage is higher than the weight of the on-resistance; conversely, if the dynamic current sharing performance requirement is lower than the static current sharing performance requirement, then the weight of the threshold voltage is lower than the weight of the on-resistance.

[0093] The weighted average of device parameters is used This means that the x semiconductor devices with the largest weighted average value are removed from the first semiconductor device group. The larger the weighted average value, the more severe the imbalance between dynamic and static current sharing performance. Therefore, removing the x semiconductor devices with the largest weighted average value can reduce the dynamic and static current sharing performance of the remaining semiconductor devices.

[0094] The c semiconductor devices with the smallest difference between the median and the weighted average value of the weighted average value are moved from the third semiconductor device group to the fourth semiconductor device group. In this way, the weighted average values ​​of the two newly obtained groups are relatively similar, so that the dynamic current sharing performance and static current sharing performance of the two newly obtained groups are not much different.

[0095] From each of the second semiconductor device groups, select the b semiconductor devices with the largest weighted average value. This results in two groups with similar weighted average values, making the dynamic current sharing performance and static current sharing performance of each newly obtained group not much different.

[0096] Figure 4 A schematic diagram of a semiconductor device sorting apparatus according to an embodiment of this application is shown. The apparatus includes:

[0097] The data acquisition unit 401 is used to acquire the total number n of semiconductor devices to be grouped and the number N of the final grouping groups;

[0098] The value determination unit 402 is used to determine the range of values ​​for the optimal initial grouping number k based on the n, where n, N, and k are all positive integers;

[0099] Clustering and grouping unit 403 is used to obtain device parameters of semiconductor devices to be grouped, and to cluster and group the semiconductor devices to be grouped multiple times within the range of the device parameters.

[0100] The icon drawing unit 404 is used to determine the intra-cluster error variance for each clustering group and to draw a line graph of the value of k and the intra-cluster error variance SSE.

[0101] Device partitioning unit 405 is used to determine k according to the line graph, and to screen the semiconductor devices to be grouped according to k, and to partition the screened semiconductor devices into the N semiconductor device groups.

[0102] Figure 5 A schematic diagram of the structure of a computer device provided in one embodiment of this application is shown, including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the functions of the computer system of the semiconductor device classification method in any of the above embodiments.

[0103] This application also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a computer, causes the computer to perform the functions of the computer system of the semiconductor device classification method in any of the above embodiments.

[0104] This application also provides a computer program product containing instructions that, when executed by a computer, cause the computer to perform the functions of the computer system of the semiconductor device classification method in any of the above embodiments.

[0105] It is understood that the specific examples in this application are only intended to help those skilled in the art better understand the implementation methods of this application, and are not intended to limit the scope of the invention.

[0106] It is understood that in the various embodiments of this application, the sequence number of each process does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not limit the implementation process of the embodiments of this application in any way.

[0107] It is understood that the various implementation methods described in this application can be implemented individually or in combination, and the implementation methods in this application are not limited in this respect.

[0108] Unless otherwise stated, all technical and scientific terms used in the embodiments of this application have the same meaning as commonly understood by one of ordinary skill in the art. The terminology used in this application is for the purpose of describing particular embodiments only and is not intended to limit the scope of this application. The term "and / or" as used in this application includes any and all combinations of one or more of the associated listed items. The singular forms "a," "the," and "the" as used in the embodiments of this application and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise.

[0109] It is understood that the processor in the embodiments of this application can be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method embodiments can be completed by the integrated logic circuits in the processor's hardware or by instructions in software form. The processor can be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software modules can be located in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. This storage medium is located in memory; the processor reads information from the memory and, in conjunction with its hardware, completes the steps of the above method.

[0110] It is understood that the memory in the embodiments of this application may be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Specifically, non-volatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory may be random access memory (RAM). It should be noted that the memory in the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0111] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0112] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the aforementioned method implementations, and will not be repeated here.

[0113] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.

[0114] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment, depending on actual needs.

[0115] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0116] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0117] The above are merely specific embodiments of this application, but the scope of protection of this invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this invention should be determined by the scope of the claims.

Claims

1. A method for classifying semiconductor devices, characterized in that, The method includes: Obtain the total number n of semiconductor devices to be grouped and the number N of the final groupings; Based on the given n, the optimal initial grouping number k is determined to be within a certain range, where k ranges from [2, int]. Where n, N, and k are all positive integers; Obtain the device parameters of the semiconductor devices to be grouped, and cluster and group the semiconductor devices to be grouped multiple times within the range of the device parameters; Determine the intra-cluster error variance for each clustering group, and plot a line graph of the value of k versus the intra-cluster error variance SSE; The k is determined based on the line graph; The semiconductor devices to be grouped are non-uniformly grouped according to k to obtain k groups of semiconductor devices; and the weighted average value of the device parameters of the semiconductor devices is determined according to the device parameters of the semiconductor devices and the weights of the device parameters. The first semiconductor device group removes the x semiconductor devices with the largest weighted average from the first semiconductor device group to obtain a new k semiconductor device group. The first semiconductor device group includes the group with the largest number of semiconductor devices among the k semiconductor device groups. The x is the number of semiconductor devices to be filtered and is determined based on n and N. mod is the modulo function; A second semiconductor device group is determined from the new k semiconductor device groups, wherein the number of semiconductor devices included in the second semiconductor device group is not an integer multiple of b; The second semiconductor device groups are recombined in pairs so that the number of semiconductor devices included in each second semiconductor device group is an integer multiple of b; From each of the second semiconductor device groups, b semiconductor devices are selected to obtain the N semiconductor device groups, where each of the N semiconductor device groups includes b semiconductor devices, and the number b is determined based on n and N. , where int is the integer function.

2. The method according to claim 1, characterized in that, The second semiconductor device group includes a third semiconductor device group and a fourth semiconductor device group. The remainder of the number of semiconductor devices in the third semiconductor device group divided by b is less than the remainder of the number of semiconductor devices in the fourth semiconductor device group divided by b. The sum of the remainders of the number of semiconductor devices in the third semiconductor device group and the fourth semiconductor device group divided by b is an integer multiple of b. The step of recombining the second semiconductor device groups in pairs, such that the number of semiconductor devices in each second semiconductor device group is an integer multiple of b, includes: c semiconductor devices are moved from the third semiconductor device group to the fourth semiconductor device group, where c is the remainder of the number of semiconductor devices in the third semiconductor device group and b.

3. The method according to claim 2, characterized in that, The step of moving c semiconductor devices from the third semiconductor device group to the fourth semiconductor device group includes: determining the median of the weighted average value in the third semiconductor device group, and determining the difference between the median and the weighted average value; moving the c semiconductor devices with the smallest difference from the third semiconductor device group to the fourth semiconductor device group. The step of selecting b semiconductor devices from each of the second semiconductor device groups includes: selecting the b semiconductor devices with the largest weighted average value from each of the second semiconductor device groups.

4. The method according to any one of claims 1-3, characterized in that, The semiconductor device is a SiC MOSFET device, and the device parameters of the semiconductor device include on-resistance and threshold voltage.

5. A semiconductor device sorting device, characterized in that, The device includes: The data acquisition unit is used to acquire the total number n of semiconductor devices to be grouped and the number N of the final grouping groups; The value determination unit is used to determine the range of values ​​for the optimal initial grouping number k based on the n, wherein the range of values ​​for k is [2, int]. Where n, N, and k are all positive integers; A clustering and grouping unit is used to obtain the device parameters of the semiconductor devices to be grouped, and to cluster and group the semiconductor devices to be grouped multiple times within the range of the device parameters. The icon drawing unit is used to determine the intra-cluster error variance for each clustering group and to draw a line graph of the value of k and the intra-cluster error variance SSE. A device partitioning unit is used to determine k based on the line graph; The device partitioning unit is further configured to non-uniformly group the semiconductor devices to be grouped according to k, obtaining k semiconductor device groups; and to determine the weighted average value of the device parameters of the semiconductor devices based on the device parameters and weights of the device parameters; to remove x semiconductor devices with the largest weighted average value from the first semiconductor device group, obtaining a new k semiconductor device group, wherein the first semiconductor device group includes the group with the largest number of semiconductor devices among the k semiconductor device groups, and x is the number of semiconductor devices to be filtered, and x is determined according to n and N. mod is the modulo function; from the new k semiconductor device groups, a second semiconductor device group is determined, wherein the number of semiconductor devices included in the second semiconductor device group is not an integer multiple of b; the second semiconductor device groups are recombined pairwise so that the number of semiconductor devices included in each second semiconductor device group is an integer multiple of b; b semiconductor devices are selected from each second semiconductor device group to obtain the N semiconductor device groups, wherein each of the N semiconductor device groups includes b semiconductor devices, and b is determined according to n and N. , where int is the integer function.

6. An electronic device, characterized in that, include: Processor and memory; The processor is connected to a memory, wherein the memory is used to store a computer program, and the processor is used to invoke the computer program to perform the method as described in any one of claims 1-4.

7. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, the computer program including program instructions that, when executed by a processor, perform the method as described in any one of claims 1-4.