A method and system for automatically generating alignment mark layouts

By automatically generating alignment marks in chip layouts using Python and skill scripts, the problem of low efficiency and unstable accuracy in existing technologies is solved, achieving efficient and automated alignment mark generation.

CN120597825BActive Publication Date: 2025-10-28NEXCHIP SEMICON CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511099987.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-08-07
Publication Date
2025-10-28
Estimated Expiration
2045-08-07

AI Technical Summary

Technical Problem

The existing methods for generating alignment marks in chip layout design are cumbersome, inefficient, and their accuracy is affected by the skill level and condition of the operator, making it impossible to guarantee the accuracy of the operation.

Method used

The system parses the requirement form using Python scripts and automatically generates alignment markers using skill scripts, including naming, position adjustment, and packaging, achieving fully automated operation.

Benefits of technology

It improves the efficiency and accuracy of alignment mark generation, reduces manual intervention, and ensures operational accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120597825B_ABST
    Figure CN120597825B_ABST
Patent Text Reader

Abstract

This invention provides a method and system for automatically generating alignment mark layouts. A Python script iterates through a request sheet to obtain all alignment mark information to be generated. This information is then written into a skill script, which is used to parse the alignment mark information and generate alignment marks one by one based on a template layout. Finally, the Python script is used to package and export the generated alignment marks as GDS format files. This invention can be used for the construction, naming, and placement of different standard units without manual intervention, improving efficiency and accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of chip layout design, specifically relating to a method and system for automatically generating alignment mark layouts. Background Technology

[0002] In chip layout design, alignment marks are typically generated manually by layout designers. The specific method is as follows: First, manually integrate various types of alignment mark data from the requirements document to determine the drawing method of the graphics and modules; integrate the graphics and module data, import them into the software to generate alignment marks, and export the alignment marks as GDS format; based on the information in the requirements document table, manually adjust the stacking and placement of the graphics of each standard cell in the alignment marks using EDA software; create a table of standard cell names and standard cell layer information to name and label each standard cell in the alignment marks; package all alignment marks into a single GDS file for later review.

[0003] It is easy to see that the existing methods are rather cumbersome, require manual intervention in many places, are inefficient, and their accuracy is affected by the person's skill level and condition, making it impossible to guarantee the accuracy of the operation. Summary of the Invention

[0004] The technical problem to be solved by this invention is to provide a method and system for automatically generating alignment mark layouts, thereby improving accuracy and efficiency.

[0005] The technical solution adopted by the present invention to solve the above-mentioned technical problems is as follows:

[0006] As a first aspect of the present invention, the present invention provides a method for automatically generating alignment mark layouts.

[0007] The Python script iterates through the requirement list to obtain all alignment mark information to be generated;

[0008] Write all the alignment mark information to be generated into the skill script, call the skill script to parse the alignment mark information to be generated, and generate alignment marks one by one based on the template layout;

[0009] The generated alignment marks are packaged and exported as GDS format files by calling the skill script via Python.

[0010] Following the method described above, the alignment marks are generated one by one in the following steps:

[0011] Name each standard unit in the alignment mark to be generated according to the preset naming rules;

[0012] Create corresponding standard units based on the naming, copy the basic graphics in the template layout to the corresponding standard units according to the alignment mark information to be generated, adjust the graphics to the specified layer, draw modules for different layers of the standard units according to the layer attributes, and label each standard unit with the layer information containing the graphics in the form of a label to generate the standard units.

[0013] Create alignment markers. Based on the alignment marker information to be generated, place the corresponding standard units under the created alignment markers in sequence, and label the alignment markers with alignment marker type information to generate alignment markers.

[0014] According to the above method, all alignment mark information to be generated mainly includes: alignment mark type, precision and name, hierarchical structure, graphics, modules, layer attributes of each standard unit in the alignment mark, and the stacking and placement position of the standard unit in the alignment mark.

[0015] Using the method described above, the preset naming rules are derived based on the alignment mark type, precision, and naming.

[0016] Using the method described above, based on the hierarchical structure, graphics, and layer attributes of each standard unit in the alignment mark, the basic graphics in the template layout are copied to the corresponding standard unit, and the graphics are adjusted to the specified layer.

[0017] Based on the module information, draw modules for different layers of the standard unit according to the layer attributes, and label each standard unit with layer information including graphics.

[0018] Following the method described above, based on the stacking and placement positions of the standard units in the alignment marks, the corresponding generated standard units are sequentially placed under the created alignment marks.

[0019] According to the above method, the corresponding generated standard units are placed sequentially under the created alignment marks, from one side of the alignment mark to the other side, or in the order specified in the requirement sheet.

[0020] Using the method described above, the template layout is generated based on the layout definition of all the basic standard units required for the alignment mark.

[0021] As a second aspect of the invention, the invention also provides an automatic alignment mark layout generation system, comprising:

[0022] The information acquisition unit is used to traverse the demand list using a Python script to obtain all alignment mark information to be generated;

[0023] The alignment mark generation unit is used to write all the acquired alignment mark information to be generated into the skill script, call the skill script to parse the alignment mark information to be generated, and generate alignment marks one by one based on the template layout;

[0024] The Packaging and Exporting unit is used to call the skill script via Python to package and export the generated alignment marks as GDS format files.

[0025] According to the above system, the alignment mark generation unit includes:

[0026] Naming unit, used to name the standard unit in the alignment mark to be generated according to the preset naming rules;

[0027] The standard unit generation unit is used to create corresponding standard units based on names. According to the alignment mark information to be generated, the basic graphics in the template layout are copied to the corresponding standard units, and the graphics are adjusted to the specified layers. Different layers of the standard units are drawn according to layer attributes. Each standard unit is labeled with layer information containing graphics in the form of labels to generate standard units.

[0028] A single alignment mark forming unit is used to create alignment marks. Based on the alignment mark information to be generated, the corresponding standard units are placed sequentially under the created alignment marks, and the alignment mark type information is labeled on the alignment marks to generate alignment marks.

[0029] The beneficial effects of this invention are as follows: It extracts requirement information by parsing the requirement sheet using Python, reads the requirement information using the skill, creates alignment marks according to the requirements, finds the corresponding module from the template layout and puts it into the newly created alignment mark, and finally exports the generated alignment mark as a GDS format file. It can be used for the construction, naming and position arrangement of different standard units. The whole process is automated and requires no manual intervention, thus improving efficiency and accuracy. Attached Figure Description

[0030] Figure 1 This is a flowchart of a method according to an embodiment of the present invention.

[0031] Figure 2 This is a template layout of a graphic in one embodiment of the present invention.

[0032] Figure 3 This is a schematic diagram of an alignment mark layout generated in one embodiment of the present invention.

[0033] Figure 4 This is a system structure block diagram of an embodiment of the present invention. Detailed Implementation

[0034] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.

[0035] Definitions:

[0036] Alignment mark: refers to a mark, which is a graphic used to mark positions in an integrated circuit (IC) layout.

[0037] Standard cell: the smallest reusable unit in a layout.

[0038] Pattern: A repeatable pattern on a layout. These patterns can be specific structures, such as the arrangement of transistors, interconnects, or other circuit elements.

[0039] Module: Block refers to a logical or physical partition in a layout. These blocks can be a group of logically related circuit elements or physically adjacent areas that are divided up to facilitate management and optimization of the layout design.

[0040] On the one hand, the present invention provides a method for automatically generating alignment mark layouts, such as... Figure 1 As shown, the specific steps include:

[0041] S1. Use a Python script to iterate through the requirement list and obtain all alignment mark information to be generated.

[0042] The requirement form needs to include the necessary information for generating standard units, such as graphics, modules, layers, and mirror information. It can automatically generate standard units that meet the requirements form's conditions and arrange them sequentially according to the order specified in the requirement form to generate an alignment mark. In this embodiment, all alignment mark information to be generated mainly includes: alignment mark type, precision, and naming information; the hierarchical structure, graphics, modules, and layer attributes of each standard unit in the alignment mark; and its stacking and placement positions within the alignment mark.

[0043] S2. Write all the obtained alignment mark information to be generated into the skill script, call the skill script to parse the alignment mark information to be generated, and generate alignment marks one by one based on the template layout.

[0044] The template layout is generated based on the layout definition of all the basic standard units required for the alignment marks. For example... Figure 2 A template layout of the graphics is provided, where T1, T2, T3, and T4 correspond to graphics of different shapes. In the requirement sheet, different graphics can be selected for different standard units according to their own needs to generate different alignment mark layouts.

[0045] S2 specifically includes:

[0046] S201. Based on the alignment mark to be generated and the relevant attribute definitions of the standard units in the alignment mark, name the standard units in the alignment mark according to the preset naming rules. The preset naming rules are obtained by the alignment mark type, precision, and naming, where the naming can be set according to the factory's internal habits.

[0047] S202. Create standard units based on naming. According to the hierarchical structure of each standard unit in the alignment mark, as well as the graphic information and layer attributes contained in the standard unit, copy the basic graphics in the template layout to the corresponding standard unit, and adjust the graphics to the specified layer. Draw modules for different layers of the standard unit according to the layer attributes based on the module information. Label each standard unit with the layer information containing graphics in the form of a label to generate the standard unit.

[0048] S203. Create alignment marks. Based on the stacking and placement positions of the standard units in the alignment marks to be generated, place the corresponding generated standard units sequentially under the created alignment marks in a certain order, and label the alignment marks with alignment mark type information to generate alignment marks. The certain order is from one side of the alignment mark to the other side, or the order specified in the requirement sheet. Figure 3 The example of the generated alignment mark layout is shown, where the left standard cell contains graphics T1 and T4, and the right standard cell contains graphics T2 and T3. The graphics of the right standard cell are mirrored along the Y-axis, and the two standard cells are arranged from left to right to form an alignment mark.

[0049] S3. Use Python to call the skill script to package and export the generated alignment marks as a GDS format file for backup or verification. This typically includes more than one alignment mark; all generated alignment marks are packaged and exported together.

[0050] Secondly, the present invention also provides an automatic alignment mark layout generation system, such as... Figure 4 As shown, it specifically includes:

[0051] Storage units are used to store template layouts. The template layout is generated based on the layout definition of all the basic standard units required for alignment marks, and is used to be called to store in the created alignment mark layout.

[0052] The information acquisition unit is used to traverse the requirement list using a Python script to obtain all alignment mark information to be generated. This information mainly includes: alignment mark type, precision, and naming; the hierarchical structure, graphics, module, and layer attributes of each standard unit within the alignment mark; and the stacking and placement positions of the standard units within the alignment mark.

[0053] The alignment mark generation unit is used to write all the acquired alignment mark information to be generated into the skill script, call the skill script to parse the alignment mark information to be generated, and generate alignment marks one by one based on the template layout.

[0054] The packaging and export unit is used to call the skill script via Python to package and export the generated alignment marks as GDS format files for storage, backup, or verification.

[0055] Continue as Figure 4 As shown, the alignment mark generation unit specifically includes:

[0056] The naming unit is used to name the standard units in the alignment mark to be generated according to the attribute definitions of the alignment mark to be generated and the standard units in the alignment mark to be generated in the requirement form, and according to the preset naming rules.

[0057] The standard unit generation unit is used to create standard units based on names. According to the graphic information contained in the standard unit, the basic graphics in the template layout are copied to the corresponding standard unit and the graphics are adjusted to the specified layer. According to the module information, different layers of the standard unit are drawn according to the layer attributes. Each standard unit is labeled with the layer information containing graphics in the form of a label to generate the standard unit.

[0058] A single alignment mark forming unit is used to create alignment marks. Based on the stacking and placement positions of the standard units in the alignment marks to be generated according to the requirements, the corresponding standard units are sequentially placed under the created alignment marks in a certain order. Alignment mark type information is then labeled on the alignment marks to generate them. The certain order is from one side of the alignment mark to the other, or the order specified in the requirements.

[0059] This invention uses Python to parse alignment mark requirement forms and writes the alignment mark information to be generated into a skill script according to certain rules. Then, Python calls the skill script to automatically generate standard cells, arrange the standard cells, and package the alignment marks. This invention only requires executing the script file to parse the requirement form to generate different types of alignment marks, simplifying the workflow. The entire process requires no manual operation, reducing personnel involvement and ensuring accuracy. This invention is applicable to application scenarios involving the construction, naming, and placement of different standard cells. Comparative experiments show that the original workflow generates an alignment mark in an average of about 80 minutes, while under the same requirements, the average time using this invention is about 3 minutes, significantly improving work efficiency.

[0060] Thirdly, the present invention also provides an electronic device, such as a smartphone, tablet computer, laptop computer, desktop computer, rack server, blade server, tower server, or cabinet server (including standalone servers or server clusters composed of multiple servers) capable of executing programs. The electronic device of this embodiment includes, but is not limited to, a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the automatic alignment mark layout generation method.

[0061] It should be understood that the sequence number of each step in the above embodiments 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 constitute any limitation on the implementation process of the embodiments of this application.

[0062] It should be understood that those skilled in the art can make improvements or modifications based on the above description, and all such improvements and modifications should fall within the protection scope of the appended claims.

Claims

1. A method for automatically generating alignment mark layouts, characterized in that: The Python script iterates through the requirement list to obtain all alignment mark information to be generated. All alignment mark information to be generated includes alignment mark type, precision and name, hierarchical structure, graphics, module, layer attributes of each standard unit in the alignment mark, and the stacking and placement position of the standard unit in the alignment mark. Write all the alignment mark information to be generated into the skill script, call the skill script to parse the alignment mark information to be generated, and generate alignment marks one by one based on the template layout; The generated alignment marks are packaged and exported as GDS format files by calling the skill script via Python. Alignment marks are generated one by one according to the following steps: Name each standard unit in the alignment mark to be generated according to the preset naming rules; Create corresponding standard units based on the naming, copy the basic graphics in the template layout to the corresponding standard units according to the alignment mark information to be generated, adjust the graphics to the specified layer, draw modules for different layers of the standard units according to the layer attributes, and label each standard unit with the layer information containing the graphics in the form of a label to generate the standard units. Create alignment markers. Based on the alignment marker information to be generated, place the corresponding standard units under the created alignment markers in sequence, and label the alignment markers with alignment marker type information to generate alignment markers.

2. The method for automatically generating alignment mark layouts according to claim 1, characterized in that: The default naming rules are derived from the alignment mark type, precision, and name.

3. The method for automatically generating alignment mark layouts according to claim 1, characterized in that: Based on the hierarchical structure, graphics, and layer attributes of each standard unit in the alignment mark, copy the basic graphics in the template layout to the corresponding standard unit and adjust the graphics to the specified layer. Based on the module information, draw modules for different layers of the standard unit according to the layer attributes, and label each standard unit with layer information including graphics.

4. The method for automatically generating alignment mark layouts according to claim 1, characterized in that: Based on the stacking and placement positions of the standard cells in the alignment marks, the corresponding generated standard cells are placed sequentially under the created alignment marks.

5. The method for automatically generating alignment mark layouts according to claim 1 or 4, characterized in that: The corresponding standard units are placed sequentially under the created alignment marks, from one side of the alignment mark to the other side, or in the order specified in the requirement sheet.

6. The method for automatically generating alignment mark layouts according to claim 1, characterized in that: The template layout is generated based on the layout definition of all the basic standard units required for the alignment mark.

7. An automatic alignment mark layout generation system, characterized in that: include: The information acquisition unit is used to traverse the demand list using a Python script to obtain all alignment mark information to be generated; All alignment mark information to be generated includes alignment mark type, precision and name, hierarchical structure, graphics, module, layer attributes of each standard unit in the alignment mark, and the stacking and placement position of the standard unit in the alignment mark; The alignment mark generation unit is used to write all the acquired alignment mark information to be generated into the skill script, call the skill script to parse the alignment mark information to be generated, and generate alignment marks one by one based on the template layout; The Packaging and Exporting unit is used to call the skill script via Python to package and export the generated alignment marks as GDS format files; The alignment mark generation unit includes: Naming unit, used to name the standard unit in the alignment mark to be generated according to the preset naming rules; The standard unit generation unit is used to create corresponding standard units based on names. According to the alignment mark information to be generated, the basic graphics in the template layout are copied to the corresponding standard units, and the graphics are adjusted to the specified layers. Different layers of the standard units are drawn according to layer attributes. Each standard unit is labeled with layer information containing graphics in the form of labels to generate standard units. A single alignment mark forming unit is used to create alignment marks. Based on the alignment mark information to be generated, the corresponding standard units are placed sequentially under the created alignment marks, and the alignment mark type information is labeled on the alignment marks to generate alignment marks.

Citation Information

Patent Citations

  • Alignment mark setting method

    CN115509093A

  • Standard unit inspection method, device and equipment

    CN117010322A