Disclosure of Invention
The invention aims to provide a method and a system for automatically identifying devices, which can reduce the occurrence of false alarms of DRC verification, improve the development efficiency and shorten the development time.
The invention provides a method for automatically identifying a device, which comprises the following steps:
dividing the device into n layers, each layer including a plurality of device groups;
Selecting any device group in an nth layer as a device group to be identified, and setting all device groups including the device group to be identified in the first to nth layers as target device groups; setting all other device groups which are similar to any target device group and belong to the same father set device group as comparison device groups of the target device group;
Acquiring a union set of n first sets as a second set; wherein the elements in the first set comprise a common layer within a target device group within any layer;
Sequencing the shared layers in the second set according to a preset sequence to obtain a third set;
Performing INTERACT operations on all the shared layers in the third set in sequence to obtain a combined expression;
acquiring a union set of n fourth sets as a fifth set; the elements in the fourth set are included in any layer, and the common layers of the comparison device group exclude other common layers after all layers in the target device group corresponding to the comparison device group;
carrying out NOT INTERACT operation on the combined expression and the shared layers in the fifth set in sequence to obtain a logic operation expression;
AND carrying out AND logic operation on the layer to be inspected AND the logic operation expression, AND judging whether the layer to be inspected can be used as an identification layer of the device group to be identified according to an operation result, wherein n is an integer greater than or equal to 1.
Further, the method further comprises:
Obtaining a common image layer in a contrast device group in any layer of device group to obtain a sixth set;
obtaining n sixth sets;
A seventh set is formed by enumerating the common layers in the n sixth sets.
Further, the method for obtaining the third set further includes:
and sorting all the shared layers in the second set according to the occurrence frequency of the shared layers in the third set in the seventh set to obtain a third set.
Further, after ordering all the common layers in the second set according to the occurrence frequency of the common layers in all the contrast device groups from low to high, the third set is obtained.
Further, if two or more shared layers in the second set occur in the seventh set at the same frequency, the shared layer corresponding to the parent set target device group is arranged in front of the shared layer corresponding to the subset target device group in the third set.
Further, in the process of obtaining the common image layer of the target device group and the contrast device group, if it is judged that the common image layer used by all devices in the target device group or the contrast device group does not exist, the common image layer of some devices in the target device group or the contrast device group and the common image layer of other devices are obtained.
Further, if there are multiple common layers in the target device group or the contrast device group, the common layers are combined together through logical or operation.
Further, the method for obtaining the fourth set includes:
obtaining all layers in the target device group, and marking the layers as an eighth set;
Acquiring an intersection of the eighth set and the sixth set in the arbitrary layer device group, and marking the intersection as a ninth set;
and subtracting the ninth set from the sixth set to obtain the fourth set.
Further, if the output result of the to-be-inspected layer AND the logic operation expression after performing the AND logic operation is the intersection of the to-be-inspected layer AND the first shared layer in the third set, the to-be-inspected layer may be used as the identification layer of the identification target device group.
The invention also discloses a system for automatically identifying the device, which comprises:
The device grading module is used for dividing the device into n layers, and each layer comprises a plurality of device groups;
The device group identification module is used for identifying the device group to be identified in the first layer, and the device group identification module is used for identifying the device group to be identified in the second layer; setting all other device groups which are similar to any target device group and belong to the same father set device group as a comparison device group of the target device group;
The first acquisition module is used for acquiring the union sets of the n first sets as a second set; wherein the elements in the first set comprise a common layer within a target device group within any layer;
the first arrangement module is used for sequencing the shared layers in the second set according to a preset sequence to obtain a third set;
The first logic operation module is used for sequentially carrying out INTERACT operations on all the shared layers in the third set to obtain a combined expression;
The second acquisition module is used for acquiring the union set of the n fourth sets as a fifth set; the elements in the fourth set are included in any layer, and the common layers of the comparison device group exclude other common layers after all layers in the target device group corresponding to the comparison device group;
the second logic operation module is used for sequentially carrying out NOT INTERACT operations on the combined expression and the shared layers in the set to obtain a logic operation expression;
The third judging module is used for carrying out AND logic operation on the layer to be inspected AND the logic operation expression;
And the judging module is used for judging whether the layer to be inspected can be used as the identification layer of the device group to be identified according to the operation result.
Compared with the prior art, the invention has at least the following technical effects:
After the devices are classified layer by layer, a user selects a device group to be identified, and the system can automatically analyze the shared layers of the target device group and the comparison device group and generate a logic expression for identifying the layers by combining logic operation. After that, the user only needs to set the layer to be checked, and the layer to be checked and the logic operation expression are operated, so that whether the layer can be used for identifying the device group to be identified can be automatically judged.
Detailed Description
The following description of a method and system for automatically identifying devices of the present invention, in conjunction with the schematic drawings, illustrates preferred embodiments of the present invention, it being understood that one skilled in the art may modify the invention described herein while still achieving the beneficial effects of the present invention. Accordingly, the following description is to be construed as broadly known to those skilled in the art and not as limiting the invention.
The invention is more particularly described by way of example in the following paragraphs with reference to the drawings. The advantages and features of the present invention will become more apparent from the following description. It should be noted that the drawings are in a very simplified form and are all to a non-precise scale, merely for convenience and clarity in aiding in the description of embodiments of the invention.
Referring to fig. 1, the present embodiment provides a method for automatically identifying a device, the method including:
s1, dividing a device into n layers, wherein each layer comprises a plurality of device groups;
S2, selecting any device group in the nth layer as a device group to be identified, and setting all device groups containing the device group to be identified in the first to nth layers as target device groups; setting all other device groups which are similar to any target device group and belong to the same father set device group as comparison device groups of the target device group;
S3, acquiring a union set of n first sets as a second set; wherein the elements in the first set comprise a common layer of the target device group in any layer;
s4, sorting the shared layers in the second set according to a preset sequence to obtain a third set;
S5, carrying out INTERACT (interaction) operation on all the shared layers in the third set in sequence to obtain a combined expression;
S6, acquiring a union set of n fourth sets, and taking the union set as a fifth set; the elements in the fourth set are included in any layer, and the common layers of the comparison device group exclude other common layers after all layers in the target device group corresponding to the comparison device group;
S7, carrying out NOT INTERACT (non-interactive) operation on the combined expression and the shared layers in the fifth set in sequence to obtain a logic operation expression;
S8, carrying out AND logic operation on the layer to be inspected AND the logic operation expression, AND judging whether the layer to be inspected can be used as an identification layer of the preset device group according to an operation result.
In this embodiment, after the devices are classified layer by layer, the user selects the device group to be identified, and the system can automatically analyze the shared layer of the target device group and the contrast device group, and combine logic operation to generate a logic expression for identifying the layer. After that, the user only needs to set the layer to be checked, and the layer to be checked and the logic operation expression are operated, so that whether the layer can be used for identifying the device group to be identified can be automatically judged.
In this embodiment, the device group to be identified needs to be distinguished from other device groups in order to perform process rule verification or circuit design.
In this embodiment, the layers represent different components of the circuit or electronic component, each layer having a different function, for example: the oxide layer is used for isolating circuit elements among different layers, preventing short circuits and serving as an insulating material; a polysilicon layer composed of polysilicon for manufacturing transistor elements, such as: a gate of the MOSFET; a diffusion layer, forming a P-type or N-type region in a silicon wafer through a diffusion process, for manufacturing elements such as a source electrode and a drain electrode of a transistor, a resistor and the like; a metal layer made of metal for connecting the respective elements in the circuit to form a conductive path of the circuit, such as aluminum or copper; an insulating layer for isolating circuit elements between different metal layers, preventing short circuits, and serving as an insulating material; and the dielectric layer is used for reducing the parasitic capacitance of the circuit and improving the signal transmission speed of the circuit.
Wherein the common layer represents a layer commonly used by all or part of the devices in a device group. For example: when a MOSFET (transistor) is used as a device group, a plurality of types of MOSFET devices are included in the device group, and the gate, source, and drain may be used as a common layer between the individual devices in the MOSFET device group.
In step S1, devices are generally divided into different groups according to classification manners such as kinds, structures or functions of the devices, so as to define rules with commonalities or differences.
For example, devices may be classified into device groups such as resistors, capacitors, and MOS transistors according to kinds, and such groups are used as first-stage groups, and each device group further includes a plurality of devices. Furthermore, each device may be further subdivided according to structure, for example: the resistive device itself can be classified into an HR structure (high resistivity structure), a Poly structure (polysilicon structure), a Diffusion structure (Diffusion structure), and a Well structure (Well structure) according to the structure. The group is used as a second-stage group, the second-stage group can be divided to obtain a third-stage group, and the third-stage group is obtained by analogy to obtain an nth-stage group, wherein the nth-stage group is a final level, and n is an integer greater than or equal to 1. The device may be divided by those skilled in the art according to the actual situation, and is not particularly limited herein.
In this embodiment, the devices may be customized to be divided into different levels, or may be automatically divided by a system, which is not limited herein.
In step S2, after the user selects the device group to be identified, the system can automatically analyze the target device group and the contrast device group of each layer.
In the steps S3 and S4, the specific steps for acquiring the third set are as follows:
S311, searching all shared layers in the target device group in the nth layer to obtain a first set;
S322, searching all the shared layers in the contrast device group in the nth layer to obtain a sixth set;
S333, repeating the operations in S311-S333 until the corresponding shared image layer is found in the device groups in all the layers, so as to obtain n first sets and n sixth sets;
s334, obtaining a second set;
s555, enumerating the common layers in the n sixth sets to form a seventh set;
S336, ordering all the shared layers in the second set according to the occurrence frequency of the shared layers in all the contrast device groups from low to high, and obtaining the third set.
Specifically, if two or more shared layers in the second set occur in the seventh set the same number of times, then in the third set the shared layer corresponding to the target device group with the higher hierarchy is arranged in front of the shared layer corresponding to the target device group with the lower hierarchy. If the common layers with the same frequency in the second set are layers with the same level, no limitation of arrangement order exists in the third set.
Further, in the steps S311 and S322, the common layer is a layer used by each of the plurality of devices, and in any device group, the common layer between the plurality of devices may be none or one or even a plurality of common layers.
When the number of the shared layers between all the devices in the target device group and the comparison device group is judged to be 0, the current device group is identified by using the combination of the shared layers of part of the devices and the shared layers of the rest of the devices in the target device group and the comparison device group. For example, layers a and B are simultaneously present in the target device group and never present or used in other peer device groups, but layer a is only shared by some devices of the target device group, layer B is only shared by some other devices of the target device group, and layer a and layer B are never simultaneously used in any of the remaining contrast device groups, then layers a and B may be considered to identify the target device group in combination. Furthermore, if the common layers appear in a combination, then the current combination is not separable and should be logically operated on in an OR fashion, such as: aor B.
It should be noted that if the shared layer does not exist in the device group to be identified, the devices need to be classified again until the shared layer exists in the target device group.
One specific embodiment of the above steps will be described below:
Assume that a particular Poly structure MOSFET device is to be identified:
S11, grading MOSFET devices:
First stage: MOSFET devices are classified by structure into Poly structures, diffusion structures, HR structures, etc.
Second stage: the MOSFET devices with the Poly structure are divided into Non-Salicide and Salicide according to silicide technology.
S12, obtaining a first set:
Searching a common layer in a target device group (all Non-Salicide MOSFET devices of the Poly structure) in the second level; a common layer set of Poly-Non-Salicide device groups was obtained: { SAB }.
S13, obtaining a sixth set:
searching a common layer in a comparison device group (all Poly structure Salicide MOSFET devices) in the second level; a common layer set of Poly-Salicide device groups was obtained: { empty set }.
S14: repeating the steps of S12 and S14, and obtaining a common layer set of the target device combination contrast device group in the first layer:
(1) Target device group: poly structure device groups share a layer set: { GTRESID };
(2) Contrast device group: common layer set for a diffion device group: { AARESID }; common layer set for HR device group: { HRPRESID }; common layer set for Well device group: { NW, NWRESID };
The common layer set for the target device group within the first hierarchy is: { GTRESID }; the common layer set for the contrast device group is: { AARESID, HRPRESID, NW, NWRESID };
s15, obtaining a second set: { SAB, GTRESID };
s16, acquiring a seventh set: { AARESID, HRPRESID, NW, NWRESID };
s17, obtaining a third set: { GTRESID, SAB }.
Further, after the step S4 is performed, the step S5 may be performed continuously, and the steps S6 to S8 may be performed continuously, or the step S6 may be performed first, and the steps S5, S7, and S8 may be performed sequentially, where the specific execution sequence is not limited, and those skilled in the art may select according to practical situations.
In one embodiment of step S5, if the third set includes three layers a, b and c, a is the layer with the lowest occurrence in the seventh set, b is the next highest occurrence of c, and the final operation result is (A INTERACT b) INTERACT C, where the expression is a combined expression.
In step S6, the specific method for obtaining the fourth set at least includes:
s61, obtaining all layers in the target device group, and marking the layers as an eighth set;
S62, obtaining an intersection of the eighth set and the sixth set, and marking the intersection as a ninth set;
S63, subtracting the ninth set from the sixth set to obtain the fourth set.
And after the first set and the second set are acquired, the subsequent step S3 is performed.
In step S7, NOT INTERACT operations are performed on the combined expression obtained in step S5 and the second set, so as to obtain an expression result finally used for identifying the preset device group.
In a specific embodiment, the common layer of the comparison node device group is d e f, and the finally generated logic operation expression is: NAME= ((((A INTERACT b) INTERACT C) NOT INTERACT D) NOT INTERACT E) NOT INTERACT F. And finally generating a logic operation result as a.
In step S8, when the user needs to define a process rule under a certain final node device group (a node corresponding to the device group to be identified), the user only needs to set the layer to be inspected. The algorithm automatically performs AND operation with the logic operation expression, so that whether the layer to be checked can be used as the identification layer of the device group to be identified is automatically identified.
In this embodiment, if the output result of the AND logic operation performed by the layer to be inspected AND the logic operation expression is the intersection of the layer to be inspected AND the first shared layer in the third set, the layer to be inspected may be used as the identification layer of the identification target device group. Otherwise, the layer to be inspected cannot be used as the identification layer of the identification target device group.
In the following, a specific embodiment will be described, where the MOSFET device is identified by the above-mentioned device structure automatic identification method:
S100, grading the device twice:
First stage: MOSFET devices are classified by structure into HR structures, poly structures, diffration structures, and Well structures;
Second stage: the HR structure is divided into Non-Salicide according to different process treatment modes; the Diffusion structures are divided into Non-Salicide and Salicide, the Poly structures are divided into Non-Salicide and Salicide, and the Well structures are divided into the render Field (Field oxide layer meaning the Well structure is built on the basis of the Field oxide layer) and the render Diffusion (Diffusion layer meaning the Well structure is built on the basis of the Diffusion layer).
S200, selecting a device group to be identified, and selecting a target device group and a contrast device group according to the device group to be identified:
Selecting a device group to be identified as a Non-Salicid device group in the Poly structure, wherein the device group is also a target device group, and the contrast device group corresponding to the device group is a Salicid device group in the Poly structure; in addition, the Poly structure device group is also a target device group, and the HR structure device group, the Diffusion structure device group and the Well structure device group are comparison device groups of the Poly structure device group.
S300, carrying out common layer analysis on the target device group:
Common layer set for Poly-Non-Salicide device group: { SAB };
All layers of the Poly-Non-Salicide device group are assembled: { SAB, NW, GT, CT.. Once again;
poly structure device groups share a layer set: { GTRESID };
all layer sets of Poly-Non-Salicide device groups and Poly structure device groups were obtained: { SAB, GTRESID, NW, GT, CT.. Once again;
acquiring a second set: { SAB, GTRESID }.
S400, carrying out common layer analysis on the comparison node device group:
common layer set for Poly-Salicide device group: { empty set };
common layer set for a diffion device group: { AARESID };
Common layer set for HR device group: { HRPRESID };
common layer set for Well device group: { NW, NWRESID };
S400, acquiring a third set: { GTRESID, SAB }.
S500, carrying out INTERACT operation on elements in the third set to obtain a combined expression: GTRESID INTERACT SAB;
s600, acquiring a fourth set:
a fourth set of Poly-Salicide device groups was obtained: { empty set };
obtaining a fourth set corresponding to the Diffusion device group: { AARESID };
Acquiring a fourth set corresponding to the HR device group: { HRPRESID };
Acquiring a fourth set corresponding to the Well device group: { NWRESID }.
S700, acquiring a fifth set: { AARESID, HRPRESID, NWRESID };
S800, obtaining a logic operation expression: ((GTRESID INTERACT SAB) NOT INTERACT AARESID) NOT INTERACT HRPRESID) NOT INTERACT NWRESID.
S900, when a user needs to define a process rule of a Poly-Non-Salicide device group, only a layer to be checked needs to be set, for example: GTRESID, the algorithm can automatically identify whether GTRESID layers are identification layers of the Poly-Non-Salicide device group.
It will be apparent to those skilled in the art that various modifications and variations can be made to the present invention without departing from the spirit or scope of the invention. Thus, it is intended that the present invention also include such modifications and alterations insofar as they come within the scope of the appended claims or the equivalents thereof.