US20230195995A1 - Systems and methods of eliminating connectivity mismatches in a mask layout block - Google Patents
Systems and methods of eliminating connectivity mismatches in a mask layout block Download PDFInfo
- Publication number
- US20230195995A1 US20230195995A1 US18/110,644 US202318110644A US2023195995A1 US 20230195995 A1 US20230195995 A1 US 20230195995A1 US 202318110644 A US202318110644 A US 202318110644A US 2023195995 A1 US2023195995 A1 US 2023195995A1
- Authority
- US
- United States
- Prior art keywords
- connectivity
- net
- mask layout
- mismatch
- layout
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 title claims abstract description 91
- 238000013461 design Methods 0.000 claims abstract description 45
- 230000008569 process Effects 0.000 claims abstract description 34
- 239000003550 marker Substances 0.000 claims abstract description 32
- 238000012937 correction Methods 0.000 claims description 37
- 238000012545 processing Methods 0.000 claims description 22
- 238000004458 analytical method Methods 0.000 claims description 16
- 238000013527 convolutional neural network Methods 0.000 claims description 11
- 238000010276 construction Methods 0.000 claims description 10
- 230000008030 elimination Effects 0.000 claims description 10
- 238000003379 elimination reaction Methods 0.000 claims description 10
- 238000004891 communication Methods 0.000 claims description 7
- 238000013135 deep learning Methods 0.000 claims description 2
- 238000012795 verification Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 16
- 238000013528 artificial neural network Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 239000002184 metal Substances 0.000 description 5
- 238000013473 artificial intelligence Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000002452 interceptive effect Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000012942 design verification Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 229910021420 polycrystalline silicon Inorganic materials 0.000 description 1
- 229920005591 polysilicon Polymers 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G03—PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
- G03F—PHOTOMECHANICAL PRODUCTION OF TEXTURED OR PATTERNED SURFACES, e.g. FOR PRINTING, FOR PROCESSING OF SEMICONDUCTOR DEVICES; MATERIALS THEREFOR; ORIGINALS THEREFOR; APPARATUS SPECIALLY ADAPTED THEREFOR
- G03F7/00—Photomechanical, e.g. photolithographic, production of textured or patterned surfaces, e.g. printing surfaces; Materials therefor, e.g. comprising photoresists; Apparatus specially adapted therefor
- G03F7/70—Microphotolithographic exposure; Apparatus therefor
- G03F7/70425—Imaging strategies, e.g. for increasing throughput or resolution, printing product fields larger than the image field or compensating lithography- or non-lithography errors, e.g. proximity correction, mix-and-match, stitching or double patterning
- G03F7/70433—Layout for increasing efficiency or for compensating imaging errors, e.g. layout of exposure fields for reducing focus errors; Use of mask features for increasing efficiency or for compensating imaging errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G03—PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
- G03F—PHOTOMECHANICAL PRODUCTION OF TEXTURED OR PATTERNED SURFACES, e.g. FOR PRINTING, FOR PROCESSING OF SEMICONDUCTOR DEVICES; MATERIALS THEREFOR; ORIGINALS THEREFOR; APPARATUS SPECIALLY ADAPTED THEREFOR
- G03F1/00—Originals for photomechanical production of textured or patterned surfaces, e.g., masks, photo-masks, reticles; Mask blanks or pellicles therefor; Containers specially adapted therefor; Preparation thereof
- G03F1/68—Preparation processes not covered by groups G03F1/20 - G03F1/50
- G03F1/70—Adapting basic layout or design of masks to lithographic process requirements, e.g., second iteration correction of mask patterns for imaging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/04—Constraint-based CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/02—Reliability analysis or reliability optimisation; Failure analysis, e.g. worst case scenario performance, failure mode and effects analysis [FMEA]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
Definitions
- the present disclosure relates to the field of integrated circuits (ICs), and more particularly to systems and methods of automatic elimination of connectivity mismatches of a mask layout block in an IC layout database file, or a commercial layout editor environment using the editor's commands and functions, maintaining the process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, obeying RV and DFM constraints.
- DRC Clean process design rules
- LVS Clean layout connectivity
- Nanometer designs include millions of devices and operate at very high frequencies. To meet the challenges posed by such large-scale circuits, techniques have been developed to represent integrated circuit designs at various levels of abstraction. According to these techniques, an integrated circuit design may be represented by an electrical schematic containing devices and nets interconnecting the devices and by geometric layout data that describes patterns of regions or elements to be formed in and/or on an integrated circuit substrate, e.g., a wafer.
- Techniques for managing highly integrated circuit designs include hierarchical design techniques. Using such techniques, a particular design is partitioned into functional cells and cells-within-cells, etc., so that at a given level of hierarchy the design may be analyzed as a set of cells and their respective interconnections, without being concerned with all the details of the contents of the cells, e.g., sub-cells within each cell.
- Such hierarchical techniques can be essential to the efficient performance of computer-assisted integrated circuit design verification.
- Such verification may include operations to perform layout versus schematic (LVS) comparison using computer-based design tools.
- tools to perform layout versus schematic comparison may include extraction software to extract a layout netlist from geometric layout data. An extracted layout netlist is then compared to an electrical schematic netlist to determine functional equivalence between the original integrated circuit schematic and the integrated circuit layout.
- One difficulty associated with the performance of these operations may be caused by dissimilarity in the labeling of nets and devices in the extracted layout netlist relative to the electrical schematic netlist.
- a typical semiconductor design process includes many steps. Initially, a schematic diagram that represents an integrated circuit is prepared. The schematic diagram provides a representation of the logical connections between logic elements that form the integrated circuit. Once the schematic diagram has been tested to verify that the circuit performs the correct functions, the schematic diagram is converted into a mask layout block or database that includes a series of polygons. The polygons may represent the logic elements and the logical connections from the schematic diagram. The mask layout database is then used to form a series of photomasks, also known as masks or reticles, that may be used to manufacture the different layers of the integrated circuit.
- the mask layout block or database is created manually by a mask designer or automatically by a synthesis tool.
- polygons that form electrical connections in the mask layout database are compared to the logical connections from the schematic diagram. This comparison may result in connection mismatches between the schematic diagram and the mask layout database.
- a connection mismatch typically indicates that an electrical connection in the mask layout database does not match its corresponding logical connection in the schematic diagram.
- any mismatches are corrected manually by a layout designer.
- the layout designer first must find the correct connection and then determine how to create the correct electrical connection in the mask layout database.
- the layout designer is required to delete the mismatched connection in the mask layout database and locate a path through existing polygons in the mask layout database. Once an appropriate path through the mask layout database is found, the layout designer creates a new electrical connection in the mask layout database that matches the corresponding logical connection in the schematic diagram.
- This process of adding the new electrical connection may take several hours or days to complete. Furthermore, the layout designer may introduce design rule errors in the mask layout database when adding the new connection Eliminating the design rule errors may additionally require several more hours or days and thus increase the design time for the integrated circuit.
- the present disclosure in its many embodiments, alleviates to a great extent the disadvantages and problems associated with correcting connectivity mismatches in a mask layout database file by providing systems and methods that automatically eliminate connectivity mismatches.
- Disclosed embodiments are able to maintain the process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, obeying RV and DFM constraints, within an IC layout database file GDSII, GDS III (Oasis) or other formats, or using commercial layout editor commands and functions. Due to embodiments of the present disclosure, the disadvantages and problems associated with eliminating connectivity mismatches during construction of a mask layout block have been substantially reduced or eliminated.
- disclosed embodiments include identifying a connectivity mismatch in the mask layout block or database and correcting the connectivity mismatch in the mask layout block database by analyzing a selected polygon(s) or net(s) in a mask layout block, obtaining connectivity information associated with the polygon from a netlist and/or external constraints file, and correcting the connectivity mismatch by placing, moving, or editing the selected polygon or net to modify the physical connection.
- Exemplary systems and methods provide a violation marker associated with the selected position for the polygon or net that graphically represents the connectivity mismatch in the mask layout block where the selected polygon's position complies with the connectivity information.
- Exemplary embodiments include automatically preventing a polygon or net from being placed, created, or edited in a selected position in a mask layout block if a connectivity mismatch is identified.
- an automated method for eliminating connectivity mismatches in a mask layout file includes comparing a first connection in the mask layout block to a second connection in a schematic netlist. A connectivity mismatch is identified if the first connection does not match the second connection and the connectivity is automatically eliminated in the mask layout block.
- a computer system for eliminating connectivity mismatches in a mask layout block or database includes a processing resource coupled to a computer readable memory. Processing instructions are encoded in the computer readable memory. The instructions are executed by the processing resource to compare a first connection in a mask layout block to a second connection in a schematic netlist. The instructions further identify a connectivity mismatch in the mask layout block if the first connection does not match the second connection and automatically correct the connectivity mismatch in the mask layout block, maintaining the process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, and obeying RV and DFM constraints.
- DRC Clean process design rules
- LVS Clean layout connectivity
- Important technical advantages of disclosed embodiments include a connectivity comparison of layout versus schematic and automatic correction to reduces the design time for the overall integrated circuit design time.
- the tool checks a mask layout block for connectivity mismatches and identifies and represents any mismatches via a graphical representation called Advice Marker.
- the tool may be equipped with the option to show a fly-in that is connected between all correct layout nodes according to netlist and/or external constraints file.
- the tool automatically removes any mismatched connections and replaces the mismatched connections with electrical connections that match the corresponding logical connections in a schematic diagram or external constraints file.
- Another important technical advantage of disclosed embodiments is a software tool that adds electrical connections to a mask layout database without introducing design rule errors.
- the tool finds paths in the mask layout database to add an electrical connection that matches the corresponding logical connection from a schematic diagram or external constraints file.
- routing the electrical connection the tool uses design rules for a specific manufacturing process and routes the electrical connection to avoid creating any design rule violations.
- the tool can work within any standard, commercial IC layout editor environment.
- a computer system for automatic elimination of connectivity mismatches of a mask layout block includes a processing resource coupled to a computer readable memory.
- Processing instructions are encoded in the computer readable memory.
- the instructions analyze a selected polygon or net in a mask layout block and identify any connectivity mismatch in the mask layout block if the electrical connection does not correlates to corresponding netlist or external constraints file. If a connectivity mismatch is identified, the instructions prevent the polygon or net from being placed, created or edited at the selected position in the mask layout block.
- An exemplary computer-implemented method of automatically eliminating connectivity mismatches in a mask layout block or database comprises analyzing a physical connection of a selected polygon or net in the mask layout block and obtaining connectivity information associated with the selected polygon or net from an external source. The physical connection of the selected polygon or net is compared with the obtained connectivity information to determine whether there is a connectivity mismatch associated with the selected polygon or net. If there is a determined connectivity mismatch a violation marker representing the connectivity mismatch is generated and the connectivity mismatch is corrected by placing, moving, or editing the selected polygon or net to modify the physical connection.
- the external source may be a netlist or external constraints file.
- the methods may further comprise generating an LVS clean mask layout database during construction of the mask layout block.
- the methods may further comprise determining if the modified physical connection creates a process design rule violation, and if a process design rule violation is created, eliminating the process design rule violation by further modifying the modified physical connection.
- Exemplary methods further comprise providing an information window showing the connectivity information. The violation marker may also be viewable via the information window.
- the analyzing step is performed during construction of the mask layout block.
- the step of correcting the connectivity mismatch may further comprise disconnecting the physical connection by erasing all net connections, locating correct layout nodes in the mask layout block, and creating a new physical connection between matched layout nodes.
- the methods may further comprise generating a fly-line marker representing a corrected position for the selected polygon or net.
- Exemplary methods may comprise preparing a correction dataset based on the determined connectivity mismatch and may include a feature for undoing a correction to the connectivity mismatch.
- the mask layout block includes at least one top-level cell and at least one sub-cell located in the top-level cell, and the methods further comprise determining if there is a connectivity mismatch in the at least one sub-cell. If there is a determined connectivity mismatch, further comprising preparing a correction dataset based on the determined connectivity mismatch.
- An exemplary computer-implemented system for automatic elimination of connectivity mismatches in a mask layout block comprises a processor, and a computer readable memory in communication with the processor.
- the computer readable memory contains processing instructions providing for analysis of a physical connection of a selected polygon or net in the mask layout block and for retrieval of connectivity information associated with the selected polygon or net from an external source.
- the processing instructions may further provide for comparison of the physical connection of the selected polygon or net with the retrieved connectivity information to determine whether there is a connectivity mismatch associated with the selected polygon or net.
- the processing instructions provide for generation of a violation marker representing the connectivity mismatch and for correction of the connectivity mismatch by placing, moving, or editing the selected polygon or net to modify the physical connection.
- the processing instructions prevent placement of the selected polygon or net in the mask layout block at a position that would create the connectivity mismatch.
- the processing instructions may also have the feature to read IC layout versus schematic run results and automatically correct connectivity mismatches of an IC layout database file GDSII, GDS III (Oasis) or other formats, or commercial layout editor environment using the editor's commands and functions, while maintaining the process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, obeying RV and DFM constraints.
- Exemplary systems further comprise an information window in communication with the computer readable memory and the processor.
- the connectivity information and the violation marker may be visible in the information window.
- a fly-line marker representing a corrected position for the selected polygon or net is visible in the information window.
- the mask layout block may include at least one top-level cell and at least one sub-cell located in the top-level cell, and the processing instructions may provide for determination whether there is a connectivity mismatch in the at least one sub-cell.
- the system further comprises a first set of neural networks trained with the connectivity information from the external source and a second set of neural networks trained with physical connections in the mask layout block.
- An expert system configured to automatically correct connectivity mismatches also may be provided.
- An exemplary method for automatic elimination of connectivity mismatches in a mask layout block comprises analyzing a selected connection of a selected polygon or net in the mask layout block and determining if the selected connection of the selected polygon or net produces a connectivity mismatch in the mask layout block based on an external constraints file. If there is a determined connectivity mismatch, the methods include generating a violation marker representing the connectivity mismatch. Exemplary methods further comprise providing a fly-line between correct layout nodes and correcting the connectivity mismatch by placing, moving, or editing the selected polygon or net to modify the physical connection.
- Correcting the connectivity mismatch comprises placing the selected polygon or net in an original position in the mask layout block.
- correcting the connectivity mismatch comprises adjusting the length and/or width of the selected polygon.
- Correcting the connectivity mismatch may comprise adjusting a number of contacts or VIAs of the net. If there is a determined connectivity mismatch, exemplary methods prevent placement of the selected polygon or net in the mask layout block at a position that would create the connectivity mismatch.
- FIG. 1 is a flow chart of an exemplary system of eliminating connectivity mismatches in a mask layout block in accordance with the present disclosure
- FIG. 1 A is a flow chart of an exemplary method of eliminating connectivity mismatches in a mask layout block in accordance with the present disclosure
- FIG. 1 B is a flow chart of an exemplary method of eliminating connectivity mismatches in a mask layout block in accordance with the present disclosure
- FIG. 1 C is a flow chart of an exemplary system of eliminating connectivity mismatches in a mask layout block in accordance with the present disclosure
- FIG. 2 is a schematic diagram of an exemplary integrated circuit in accordance with the present disclosure
- FIG. 3 is a layout view of an exemplary mask layout block showing a connectivity mismatch in accordance with the present disclosure
- FIG. 4 is a layout view of an exemplary mask layout block showing a connectivity mismatch being corrected by an exemplary system and method of eliminating connectivity mismatches in accordance with the present disclosure
- FIG. 5 is a layout view of an exemplary mask layout block and information window showing a connectivity mismatch being corrected by an exemplary system and method of eliminating connectivity mismatches in accordance with the present disclosure
- FIG. 6 is a layout view of an exemplary mask layout block and information window showing a connectivity mismatch being corrected by an exemplary system and method of eliminating connectivity mismatches in accordance with the present disclosure
- FIG. 7 is a layout view of an exemplary mask layout block after a connectivity mismatch has been corrected by an exemplary system and method of eliminating connectivity mismatches in accordance with the present disclosure
- FIG. 8 is a schematic of exemplary hierarchically connected mask layout blocks in accordance with the present disclosure.
- FIG. 9 is a diagram of an exemplary convolutional neural network in accordance with the present disclosure.
- FIG. 10 is a diagram of an exemplary convolutional neural network in accordance with the present disclosure.
- FIG. 11 is a flow chart of an exemplary expert system in accordance with the present disclosure.
- FIG. 12 is front view of a layout editor interfaced tool implementing exemplary systems and methods of eliminating connectivity mismatches in accordance with the present disclosure.
- Exemplary embodiments include computer-implemented systems and methods for automatic elimination of connectivity mismatches in a mask layout block, maintaining the process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, reliability verification (RV), and DFM constraints.
- DRC Clean process design rules
- LVS Clean layout connectivity
- RV reliability verification
- exemplary systems and methods use a processor and computer readable memory to operate and may include a layout editor interfaced tool.
- Disclosed embodiments analyze an integrated circuit layout block and identify connectivity mismatches. The methods include comparing a physical connection in a mask layout database to a corresponding connection in a schematic netlist and/or external constraints file. LVS problems are automatically corrected, including but not limited to, Shorts/Opens, Net Mismatches, and Well & Tap Shorts.
- a connectivity mismatch is identified if the physical connection in the layout does not match the same connection in the schematics, netlist and/or external constraints file. If a connection does not match the connectivity information from the netlist or external constraints file, disclosed systems and methods automatically correct the connectivity mismatch in the mask layout data.
- the automatic correction maintains the integrated circuit mask layout process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, reliability verification (RV), and DFM constraints.
- FIG. 1 shows a high-level system flow in which a netlist 16 , constraints 56 and process design rules 61 , along with analysis from an artificial intelligence unit 35 , provide the inputs 52 , and the circuit reference topology 70 informs mask layout block correction 1080 , resulting in LVS clean 68 (layout connectivity) where the layout matches 74 the schematics.
- a computer system 2 for correcting connectivity mismatches may include a data processor 5 , an IC layout database 7 , and an extraction manager 9 to extract a layout netlist from geometric layout data.
- a compare engine 11 may be provided to perform the function of comparing connectivity information in the layout netlist with that of a selected polygon in the mask layout block, as discussed in more detail below.
- Discrepancy manager 13 and mismatch evaluator 15 also perform critical functions related to connectivity mismatch detection and correction.
- the system 2 may use successive approximation heuristics performed by heuristics engine 17 to significantly shorten the analysis time.
- An external source 16 such as a netlist or external constraints file provides connectivity information, and the system 2 also obtains process and design rules 19 .
- a visual geometry engine 21 allows the system 2 to provide graphical images of the mask layout block, integrated circuit, and polygons' connectivity mismatches to the user.
- the system 2 may include one or more neural networks and may have multiple sets of neural networks.
- One neural network or set of neural networks may be trained with the connectivity information in the external constraints file.
- Another neural network or set of neural networks may be trained with the matched IC layout connectivity information.
- Machine learning processes analyze, learn, and compare the IC layout connectivity information to the connectivity information in the external constraints file (schematics connectivity information) and, in the event that mismatches are found, prepare a correction dataset of connectivity information.
- FIG. 2 shows an exemplary integrated circuit 8 where the schematic diagrammatically represents two inverters connected in serial.
- a selected polygon 12 or net in the mask layout block 3 is analyzed. More particularly, the system 2 obtains connectivity information 14 associated with the selected polygon 12 or net from an external source 16 such as a netlist or external constraints file. The analysis includes comparing the connectivity of the selected polygon 12 against the connectivity information 14 associated with it. A mismatched net is a layout connection that does not match the netlist or external constraints file.
- a net or multiple nets can be constructed in the mask layout block using polysilicon, metal, contact, VIA, or any other process-related given layers.
- the system 2 determines that there is a connectivity mismatch 18 , the mismatch is automatically corrected.
- An example of a connectivity mismatch 18 is shown in FIG. 3 , where the output of the polygon 12 a (here, a first inverter) is supposed to be connected to the input of polygon 12 b (a second inverter) but is mistakenly connected to the output of polygon 12 b .
- the signal IN # is shorted with the signal OUT.
- the system might also generate a mask layout file from the mask layout block that does not include the connectivity mismatch.
- analysis of the mask layout block 3 may be performed during its construction to preemptively eliminate connectivity mismatches 18 .
- Exemplary systems 2 and methods 1 automatically correct the connectivity mismatch 18 by placing, moving, and/or editing the selected polygon 12 or net.
- a mismatch may be corrected by disconnecting the wrong physical connection 20 and/or by erasing the entire net connections.
- the correct layout nodes are located in the mask layout database, that are matched according to a schematic netlist or external constraints file 16 , and a new connection 20 is created between matched layout nodes. Corrections could also be done by automatically adjusting the number and/or positions of contacts or VIAs until the connectivity mismatch is eliminated.
- corrective measures include automatically adjusting the position, width, and/or length of the selected polygon 12 (or partial width and/or length) or automatically placing the polygon 12 or net in an original position in the mask layout block 3 until the connectivity mismatch 18 is eliminated.
- the system offers an Undo feature to undo the correction if it should become necessary to do so.
- one or more violation markers 22 are generated.
- This figure shows a layout view of the integrated circuit 8 after the connectivity mismatch analysis and violation markers 22 graphically representing a connectivity mismatch 18 in the mask layout block where the selected polygon 12 or net does not comply with the netlist and/or external constraints file.
- a fly-line marker 24 also may be generated. Fly-line markers 24 are associated with the selected position for the polygon 12 or net and graphically represent the correct connectivity between the nodes and the correct nodes to be connected in the mask layout block 3 where the selected polygon or net complies with the netlist and/or external constraints file 16 .
- exemplary embodiments have an information window 26 to provide the user with information about the mask layout block 3 , the polygons' connectivity, and the correction process.
- This figure illustrates the user's option to automatically correct the integrated circuit mask layout database under commercial layout editor's environment by clicking on the FIX button 23 located within the information window 26 .
- the information window 26 shows all current mismatch connections and required connections, including displaying the current and required polygon's or net's connectivity parameters.
- Advice markers 36 generated by the system 2 may be displayed in the information window 26 .
- the window 26 shows the option of having the system 2 generate fly-line markers 24 .
- a fly-line radio button 25 may be provided in the information window 26 and, when pressed, it shows the fly-line 24 .
- the window 26 also may provide the option to automatically correct the physical layout within an IC layout database or a commercial layout editor environment. Upon clicking on the FIX button 23 in the information window 26 , the system 2 will correct the connectivity mismatches according to the corresponding netlist and/or external constraints file, maintaining design rules dimensions according to a commercial layout editor's technology file.
- FIG. 7 shows a sample physical layout after the connectivity mismatch has been corrected. More particularly, the signal IN #which is the OUTPUT of polygon or net 12 a (first inverter) is now connected to the INPUT of polygon or net 12 b (second inverter).
- the mask layout block 3 and the netlist and/or external constraints file 16 are hierarchical.
- the mask layout block 3 may include at least one top-level cell 3 a and one or more instances of a sub-cell 3 b .
- the system 2 determines if the selected polygon 12 produces a connectivity mismatch in one or more instances of a sub-cell 3 b in the mask layout block. Simultaneously, the system 2 may prevent the layout designer from creating or placing the polygon 12 or net in the mask layout block 3 at the selected position based on the mismatch 18 violation marker 22 in each instance of the sub-cell 27 if a connectivity mismatch 18 exists.
- FIGS. 9 and 10 are CNN diagrams illustrating exemplary learning processes showing inputs 52 to the CNN 50 such as a netlist 16 , schematics 54 , constraints 56 , a simulation 57 , layout 58 , reliability 59 , process rules 60 , and/or design rules 61 .
- the CNN machine learning topology 62 may be comprised of a plurality of processing nodes 64 that analyze the inputted data.
- the resulting output 66 is LVS clean 68 (layout connectivity), LVS Correct, design rule compliant, and electrical DFM compliant, specifically an LVS clean mask layout database.
- correction dataset information may be produced by machine learning.
- exemplary embodiments have an expert system 90 that uses this information, or correction map, to automatically correct the IC layout to match the schematics. This may include disconnecting nodes in the mask layout block and re-connecting them to match the schematics. It might also comprise removing devices or adding devices that are missing or not included.
- the expert system 90 calculates and presents various correction possibilities, weighing them according to shortest routing and best electrical characteristics, offering the user the option to select one of the correction possibilities to best match the design.
- the expert system 90 offers an interactive correction feature and/or a batch correction mode. When it has completed its corrections, the expert system may produce a report log of the corrections done.
- An exemplary expert system 90 is illustrated in FIG. 11 .
- CNN 50 and layout editor interfaced tool 30 are communicatively coupled with the AI unit 35 , which allows the user to interface with the system 2 by evaluating LVS correction possibilities offered by the CNN 50 and/or an artificial neural network (ANN).
- Expert system 90 engages in knowledge acquisition 92 including correction dataset information and any other data comprising the requisite knowledge base 96 .
- the knowledge base 96 and a dynamic database 98 provide data to an inference engine 100 .
- the dynamic database also informs the expert system's reasoning 94 to perform the necessary correction steps.
- the processing instructions include a commercially available layout editor interfaced tool 30 .
- the tool 30 offers Advice 32 , Correct 34 , and Auto-Fix 38 modes.
- the tool 30 analyzes the integrated circuit mask layout database for electrical connectivity and determines if a connectivity mismatch has been made.
- the tool 30 may be operated independently on a GDS II, GDS III (Oasis) or other formats or within a commercial layout editor environment in two different modes: an Advice mode 32 and a Correct mode 34 . Both modes can operate in flat mode and hierarchical mode.
- the tool 30 will graphically provide advice about connectivity mismatches 18 throughout the hierarchy in Advice mode 32 .
- the tool will enforce connectivity mismatch elimination throughout the hierarchy in Correct mode 34 . More particularly, in CORRECT mode 34 all edited, placed or created polygons 12 or nets are automatically made connectivity correct.
- the tool 30 may graphically display a graphical representation marker called an Advice marker 36 showing connectivity information (and/or connectivity mismatch, in which case it is like the violation marker 22 described above, and/or required correct connectivity) of the selected polygon 12 or net according to a corresponding netlist and/or external constraints file 16 .
- the tool 30 has the capability to show a fly-line 24 , which connects the correct layout nodes. No automatic correction is performed in this mode.
- Correct mode 34 the tool may prevent or adjust the creation, placement, or editing of polygons 12 or nets to eliminate or correct connectivity mismatches.
- the tool 30 reads a corresponding netlist and/or external constraints file 16 .
- the tool 30 reads the process technology file from the commercial layout editor environment.
- the technology file may contain design rules for the desired manufacturing process that ensure an integrated circuit fabricated on a semiconductor wafer functions correctly.
- the netlist file includes all connectivity information for the mask layout block 3 .
- the tool 30 has an option to read another constraints file which contains additional connectivity information.
- the tool 30 may compare logical connections contained in a netlist or external constraints file 16 generated from a schematic diagram of an integrated circuit with electrical connections contained in a mask layout database within a commercial layout editor, generated from the corresponding layout block for the integrated circuit. If the electrical connections in the mask layout file match the logical connections in the netlist, the tool 30 may generate a graphical representation object that indicates the mask layout database does not include any connectivity mismatches.
- the tool 30 may generate an Advice marker 36 that contains connectivity mismatch information identified by the tool in the mask layout database within the commercial layout editor environment.
- the Advice marker 36 is then used to locate the electrical connections in the mask layout block 3 under the commercial layout editor that do not match the corresponding logical connections in the netlist or external constraints file 16 .
- the tool 30 automatically deletes the mismatched connections.
- the tool 30 may remove all the polygons 12 associated with the mismatched connection and create new connections in order to correct the mismatch 18 .
- the tool 30 may match the nodes in the mask layout database within a commercial layout editor environment to the nodes in the netlist and generate electrical connections that match the logical connections.
- the tool 30 then automatically routes the electrical connections among the appropriate nodes.
- the electrical connections are routed though the mask layout database within the commercial layout editor, using the editor's commands and functions, without creating any design rule violations in the mask layout block 3 .
- the process is performed on all mismatched connections 18 until all the connectivity mismatches are removed from the mask layout block.
- the tool then uses the connectivity information provided by the corresponding netlist or external constraints file to prevent the layout designer from creating connectivity mismatches during the construction of the mask layout block 3 .
- the layout designer may select a polygon 12 or net by moving a cursor over the desired polygon/net and/or selecting it.
- the tool 30 uses the connectivity information to graphically display the correct connection through an Advice marker 36 and/or fly line 24 , within the mask layout block 3 where the layout designer may move, place, create or edit a polygon 12 or a net. If the layout designer selects, creates, edits, or moves polygons 12 or nets the tool 30 may graphically guide for the correct location and connection of the polygon 12 or net in order to comply with the corresponding netlist and/or external constraints file 16 .
- the tool 30 may graphically represent the Advice marker 36 in the mask layout block 3 by highlighting the correct node(s) to be connected with an appropriate color and/or pattern.
- the Advice marker color and/or pattern can be set in an initial tool setup.
- the tool may show an information window 26 with the current and required conditions. The information window 26 also provides the user with the option to correct the violation.
- the tool 30 may prevent the layout designer from creating, placing, editing, and connecting a polygon 12 or a net in a position within the mask layout block 3 that will cause a connectivity mismatch 18 . If the layout designer attempts to create a polygon 12 or net of a certain width, length or in a location that does not comply with the netlist and/or external constraints file 16 requirements and causes a connectivity mismatch 18 , the tool 30 automatically adjusts the polygon or net to the correct width/length or size or by changing its location.
- the tool 30 automatically stretches the edge to the required length to connect it to the matched node. If the nodes are not to be connected according to the netlist file, then the tool will not allow them to be connected. If the mask designer attempts to connect these nodes, the metal wire will not be connected but will return to its original position or location with a system warning about LVS mismatch. In exemplary embodiments, if the layout designer is placing a VIA on a connection area between Metal 3 and Metal 4 polygons to mistakenly connect two nodes electrically, the tool 30 will automatically remove the VIA with an Advice marker notice about an LVS mismatch.
- the tool 30 may include another mode called Auto-Fix mode 38 .
- Auto-Fix mode 38 is aimed to be activated with the completion of the entire layout block 3 . Using this feature the entire block will be analyzed for connectivity mismatches 18 . When analysis is complete all mismatches 18 will be shown using an Advice marker 36 .
- This mode can operate in flat or fully hierarchical mode.
- Auto-Fix mode 38 also can provide an Auto-Correction feature 40 .
- the user After complete analysis of the mask layout block 3 the user has the option to approve an Auto-Correction action. Upon activation of this feature all connectivity mismatches will be automatically fixed, while maintaining the process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, and obeying RV and DFM constraints.
- DRC Clean process design rules
- LVS Clean layout connectivity
- RV and DFM constraints For example, after completion of an integrated circuit layout block under commercial layout editor environment, the user has the option to run the Auto-Fix feature 38 .
- the tool 30 will run a complete LVS analysis, or read external tool LVS results data, identifying all connectivity mismatches 18 , if any exist, then the tool 30 will automatically correct all connectivity mismatches.
- the tool may CUT, MOVE, CREATE, ERASE, STRETCH or perform any other IC layout modifications to correct all connectivity mismatches 18 , independently on an IC layout database file (GDSII, GDS III (Oasis), or other formats) or within a commercial layout editor environment.
- GDSII IC layout database file
- GDS III GDS III (Oasis), or other formats
- the processing instructions for automatic connectivity mismatches elimination within an integrated circuit layout block database in an IC layout data file may be encoded in computer-usable media.
- Such computer-usable media may include, without limitation, storage media such as floppy disks, hard disks, CD-ROMS, DVDs, read-only memory, and random access memory, as well as communications media such wires, optical fibers, microwaves, radio waves, and other electromagnetic or optical carriers.
- exemplary process flows start by reading 1010 and comparing a physical connection in a mask layout block 3 to a corresponding connection in a schematic netlist and/or external constraints file 16 , which contains the net's connectivity parameters and other integrated circuit related connectivity factors.
- the schematics 54 may include information on circuit/layout topology 70 and design constraints 56 .
- This step includes analyzing 1030 a selected polygon 12 or net, including its position, for connectivity, obtaining 1020 relevant connectivity information from the netlist or external constraints file 16 , and comparing the selected polygon 12 to the netlist connectivity information that is associated with the polygon or net, i.e., comparing 72 the schematics 54 to the layout 70 .
- the selected position for the polygon 12 or net comprises a location for the polygon in the mask layout block 3 . The analysis may be done during or after construction of the mask layout block 3 .
- the system queries 74 whether there is a match between the schematics and the layout. In the event of a match, a second-pass check and optimization may be performed 76 . If a mismatch 18 is identified 1040 the connectivity error is graphically presented 1060 in the mask layout database 3 . More particularly, if the analysis reveals a connectivity mismatch 18 , a violation marker 22 associated with the selected position, length, or width of the selected polygon 12 or net may be generated. The violation marker 26 provides a graphical representation of the connectivity mismatch 18 and may show where the selected polygon 12 or net complies with the external constraints file 16 . A fly line 24 connected among the correct layout nodes also may be generated.
- Both the violation marker 22 and fly line 24 may be displayed in an information window 26 , along with the current and required polygon or net's connectivity parameters, so the user may easily see them.
- the process may include automatically preventing a layout designer from creating, placing, or editing the polygon or net 12 in the mask layout block 3 at the selected position based on the violation marker if a connectivity mismatch exists.
- the user is given the option to have the connectivity mismatch 18 automatically corrected 1080 by placing, moving, or editing the selected polygon 12 or net and/or modifying the connection.
- the placing step may constitute automatically placing the polygon or net 12 in an original position in the mask layout block 3 .
- the editing step may comprise adjusting the polygon's width and/or length or parts thereof, and/or number of contacts or VIAs until the connectivity matches the associated netlist or external constraints file 16 .
- Exemplary processes also include automatically determining if the modified connection creates a process design rule violation and automatically eliminating the design rule violation by further modifying the modified connection within commercial layout editor. After the correction process is completed, the system may once again query 74 whether there is a match between the schematics and the layout.
- the system may conduct a performance evaluation 78 of the post-correction layout. Then, if the design specs are met 80 , the correction is approved 82 . Some or all of the method steps may be aided or run by an artificial intelligence (AI) unit 35 , particularly the correction 1080 , second-pass optimization check 76 , and the post-correction layout performance evaluation 78 .
- AI artificial intelligence
- the user has the option to perform a comprehensive Detect-and-Auto-Correct of all LVS mismatches of the entire IC layout block.
- the method and system also provides an option to automatically correct the connectivity mismatch during the construction of the mask layout block within commercial layout editor using the editor's commands and functions. After correcting all connectivity mismatches 18 , a clean write log file may be generated 1090 .
- the tool works on a standard IC layout database of GDSII, GDS III (Oasis) or any other general format.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Architecture (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Description
- This application is a continuation of and claims priority to U.S. patent application Ser. No. 17/880,055, filed Aug. 3, 2022, which is a non-provisional of and claims priority to U.S. Patent Application Ser. No. 63/248,550, filed Sep. 27, 2021, each of which is hereby incorporated by reference herein in its entirety.
- The present disclosure relates to the field of integrated circuits (ICs), and more particularly to systems and methods of automatic elimination of connectivity mismatches of a mask layout block in an IC layout database file, or a commercial layout editor environment using the editor's commands and functions, maintaining the process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, obeying RV and DFM constraints.
- Nanometer designs include millions of devices and operate at very high frequencies. To meet the challenges posed by such large-scale circuits, techniques have been developed to represent integrated circuit designs at various levels of abstraction. According to these techniques, an integrated circuit design may be represented by an electrical schematic containing devices and nets interconnecting the devices and by geometric layout data that describes patterns of regions or elements to be formed in and/or on an integrated circuit substrate, e.g., a wafer.
- Techniques for managing highly integrated circuit designs include hierarchical design techniques. Using such techniques, a particular design is partitioned into functional cells and cells-within-cells, etc., so that at a given level of hierarchy the design may be analyzed as a set of cells and their respective interconnections, without being concerned with all the details of the contents of the cells, e.g., sub-cells within each cell.
- These hierarchical techniques can be essential to the efficient performance of computer-assisted integrated circuit design verification. Such verification may include operations to perform layout versus schematic (LVS) comparison using computer-based design tools. As understood by those skilled in the art, tools to perform layout versus schematic comparison may include extraction software to extract a layout netlist from geometric layout data. An extracted layout netlist is then compared to an electrical schematic netlist to determine functional equivalence between the original integrated circuit schematic and the integrated circuit layout. One difficulty associated with the performance of these operations may be caused by dissimilarity in the labeling of nets and devices in the extracted layout netlist relative to the electrical schematic netlist.
- A typical semiconductor design process includes many steps. Initially, a schematic diagram that represents an integrated circuit is prepared. The schematic diagram provides a representation of the logical connections between logic elements that form the integrated circuit. Once the schematic diagram has been tested to verify that the circuit performs the correct functions, the schematic diagram is converted into a mask layout block or database that includes a series of polygons. The polygons may represent the logic elements and the logical connections from the schematic diagram. The mask layout database is then used to form a series of photomasks, also known as masks or reticles, that may be used to manufacture the different layers of the integrated circuit.
- Typically, the mask layout block or database is created manually by a mask designer or automatically by a synthesis tool. Once the mask layout database is complete, polygons that form electrical connections in the mask layout database are compared to the logical connections from the schematic diagram. This comparison may result in connection mismatches between the schematic diagram and the mask layout database. A connection mismatch typically indicates that an electrical connection in the mask layout database does not match its corresponding logical connection in the schematic diagram.
- Today, any mismatches are corrected manually by a layout designer. The layout designer first must find the correct connection and then determine how to create the correct electrical connection in the mask layout database. Typically, the layout designer is required to delete the mismatched connection in the mask layout database and locate a path through existing polygons in the mask layout database. Once an appropriate path through the mask layout database is found, the layout designer creates a new electrical connection in the mask layout database that matches the corresponding logical connection in the schematic diagram.
- This process of adding the new electrical connection may take several hours or days to complete. Furthermore, the layout designer may introduce design rule errors in the mask layout database when adding the new connection Eliminating the design rule errors may additionally require several more hours or days and thus increase the design time for the integrated circuit.
- Accordingly, there is a need for a system and method that automatically eliminates and corrects connectivity mismatches in mask layout blocks. There is also a need for a system and method that eliminates electrical connection mismatches ahead of time during the construction of mask layout blocks to provide significant time savings and massive reduction in the entire chip design cycle.
- The present disclosure, in its many embodiments, alleviates to a great extent the disadvantages and problems associated with correcting connectivity mismatches in a mask layout database file by providing systems and methods that automatically eliminate connectivity mismatches. Disclosed embodiments are able to maintain the process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, obeying RV and DFM constraints, within an IC layout database file GDSII, GDS III (Oasis) or other formats, or using commercial layout editor commands and functions. Due to embodiments of the present disclosure, the disadvantages and problems associated with eliminating connectivity mismatches during construction of a mask layout block have been substantially reduced or eliminated.
- As described in detail herein, disclosed embodiments include identifying a connectivity mismatch in the mask layout block or database and correcting the connectivity mismatch in the mask layout block database by analyzing a selected polygon(s) or net(s) in a mask layout block, obtaining connectivity information associated with the polygon from a netlist and/or external constraints file, and correcting the connectivity mismatch by placing, moving, or editing the selected polygon or net to modify the physical connection.
- Exemplary systems and methods provide a violation marker associated with the selected position for the polygon or net that graphically represents the connectivity mismatch in the mask layout block where the selected polygon's position complies with the connectivity information. Exemplary embodiments include automatically preventing a polygon or net from being placed, created, or edited in a selected position in a mask layout block if a connectivity mismatch is identified.
- In accordance with an exemplary embodiment, an automated method for eliminating connectivity mismatches in a mask layout file includes comparing a first connection in the mask layout block to a second connection in a schematic netlist. A connectivity mismatch is identified if the first connection does not match the second connection and the connectivity is automatically eliminated in the mask layout block.
- In accordance with an exemplary embodiment, a computer system for eliminating connectivity mismatches in a mask layout block or database includes a processing resource coupled to a computer readable memory. Processing instructions are encoded in the computer readable memory. The instructions are executed by the processing resource to compare a first connection in a mask layout block to a second connection in a schematic netlist. The instructions further identify a connectivity mismatch in the mask layout block if the first connection does not match the second connection and automatically correct the connectivity mismatch in the mask layout block, maintaining the process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, and obeying RV and DFM constraints.
- Important technical advantages of disclosed embodiments include a connectivity comparison of layout versus schematic and automatic correction to reduces the design time for the overall integrated circuit design time. The tool checks a mask layout block for connectivity mismatches and identifies and represents any mismatches via a graphical representation called Advice Marker. In addition, the tool may be equipped with the option to show a fly-in that is connected between all correct layout nodes according to netlist and/or external constraints file.
- If connectivity mismatches are identified, the tool automatically removes any mismatched connections and replaces the mismatched connections with electrical connections that match the corresponding logical connections in a schematic diagram or external constraints file. By eliminating connectivity mismatches in a mask layout block, the time needed for the final sign-off verification process for the mask layout block is substantially reduced.
- Another important technical advantage of disclosed embodiments is a software tool that adds electrical connections to a mask layout database without introducing design rule errors. The tool finds paths in the mask layout database to add an electrical connection that matches the corresponding logical connection from a schematic diagram or external constraints file. When routing the electrical connection, the tool uses design rules for a specific manufacturing process and routes the electrical connection to avoid creating any design rule violations. The tool can work within any standard, commercial IC layout editor environment.
- In accordance with another exemplary embodiment, a computer system for automatic elimination of connectivity mismatches of a mask layout block includes a processing resource coupled to a computer readable memory. Processing instructions are encoded in the computer readable memory. When the processing instructions are executed by the processing resource, the instructions analyze a selected polygon or net in a mask layout block and identify any connectivity mismatch in the mask layout block if the electrical connection does not correlates to corresponding netlist or external constraints file. If a connectivity mismatch is identified, the instructions prevent the polygon or net from being placed, created or edited at the selected position in the mask layout block.
- An exemplary computer-implemented method of automatically eliminating connectivity mismatches in a mask layout block or database comprises analyzing a physical connection of a selected polygon or net in the mask layout block and obtaining connectivity information associated with the selected polygon or net from an external source. The physical connection of the selected polygon or net is compared with the obtained connectivity information to determine whether there is a connectivity mismatch associated with the selected polygon or net. If there is a determined connectivity mismatch a violation marker representing the connectivity mismatch is generated and the connectivity mismatch is corrected by placing, moving, or editing the selected polygon or net to modify the physical connection.
- The external source may be a netlist or external constraints file. The methods may further comprise generating an LVS clean mask layout database during construction of the mask layout block. The methods may further comprise determining if the modified physical connection creates a process design rule violation, and if a process design rule violation is created, eliminating the process design rule violation by further modifying the modified physical connection. Exemplary methods further comprise providing an information window showing the connectivity information. The violation marker may also be viewable via the information window.
- In exemplary embodiments, the analyzing step is performed during construction of the mask layout block. The step of correcting the connectivity mismatch may further comprise disconnecting the physical connection by erasing all net connections, locating correct layout nodes in the mask layout block, and creating a new physical connection between matched layout nodes. The methods may further comprise generating a fly-line marker representing a corrected position for the selected polygon or net. Exemplary methods may comprise preparing a correction dataset based on the determined connectivity mismatch and may include a feature for undoing a correction to the connectivity mismatch. In exemplary embodiments, the mask layout block includes at least one top-level cell and at least one sub-cell located in the top-level cell, and the methods further comprise determining if there is a connectivity mismatch in the at least one sub-cell. If there is a determined connectivity mismatch, further comprising preparing a correction dataset based on the determined connectivity mismatch.
- An exemplary computer-implemented system for automatic elimination of connectivity mismatches in a mask layout block comprises a processor, and a computer readable memory in communication with the processor. The computer readable memory contains processing instructions providing for analysis of a physical connection of a selected polygon or net in the mask layout block and for retrieval of connectivity information associated with the selected polygon or net from an external source. The processing instructions may further provide for comparison of the physical connection of the selected polygon or net with the retrieved connectivity information to determine whether there is a connectivity mismatch associated with the selected polygon or net.
- If there is a determined connectivity mismatch, the processing instructions provide for generation of a violation marker representing the connectivity mismatch and for correction of the connectivity mismatch by placing, moving, or editing the selected polygon or net to modify the physical connection. In exemplary embodiments, if there is a determined connectivity mismatch, the processing instructions prevent placement of the selected polygon or net in the mask layout block at a position that would create the connectivity mismatch. The processing instructions may also have the feature to read IC layout versus schematic run results and automatically correct connectivity mismatches of an IC layout database file GDSII, GDS III (Oasis) or other formats, or commercial layout editor environment using the editor's commands and functions, while maintaining the process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, obeying RV and DFM constraints.
- Exemplary systems further comprise an information window in communication with the computer readable memory and the processor. The connectivity information and the violation marker may be visible in the information window. In exemplary embodiments, a fly-line marker representing a corrected position for the selected polygon or net is visible in the information window. The mask layout block may include at least one top-level cell and at least one sub-cell located in the top-level cell, and the processing instructions may provide for determination whether there is a connectivity mismatch in the at least one sub-cell. In exemplary embodiments, the system further comprises a first set of neural networks trained with the connectivity information from the external source and a second set of neural networks trained with physical connections in the mask layout block. An expert system configured to automatically correct connectivity mismatches also may be provided.
- An exemplary method for automatic elimination of connectivity mismatches in a mask layout block comprises analyzing a selected connection of a selected polygon or net in the mask layout block and determining if the selected connection of the selected polygon or net produces a connectivity mismatch in the mask layout block based on an external constraints file. If there is a determined connectivity mismatch, the methods include generating a violation marker representing the connectivity mismatch. Exemplary methods further comprise providing a fly-line between correct layout nodes and correcting the connectivity mismatch by placing, moving, or editing the selected polygon or net to modify the physical connection.
- Correcting the connectivity mismatch comprises placing the selected polygon or net in an original position in the mask layout block. In exemplary embodiments, correcting the connectivity mismatch comprises adjusting the length and/or width of the selected polygon. Correcting the connectivity mismatch may comprise adjusting a number of contacts or VIAs of the net. If there is a determined connectivity mismatch, exemplary methods prevent placement of the selected polygon or net in the mask layout block at a position that would create the connectivity mismatch.
- Accordingly, it is seen that systems and methods of correcting and eliminating connectivity mismatches are provided. These and other features of the disclosed embodiments will be appreciated from review of the following detailed description, along with the accompanying figures in which like reference numbers refer to like parts throughout.
- The foregoing and other objects of the disclosure will be apparent upon consideration of the following detailed description, taken in conjunction with the accompanying drawings, in which:
-
FIG. 1 is a flow chart of an exemplary system of eliminating connectivity mismatches in a mask layout block in accordance with the present disclosure; -
FIG. 1A is a flow chart of an exemplary method of eliminating connectivity mismatches in a mask layout block in accordance with the present disclosure; -
FIG. 1B is a flow chart of an exemplary method of eliminating connectivity mismatches in a mask layout block in accordance with the present disclosure; -
FIG. 1C is a flow chart of an exemplary system of eliminating connectivity mismatches in a mask layout block in accordance with the present disclosure; -
FIG. 2 is a schematic diagram of an exemplary integrated circuit in accordance with the present disclosure; -
FIG. 3 is a layout view of an exemplary mask layout block showing a connectivity mismatch in accordance with the present disclosure; -
FIG. 4 is a layout view of an exemplary mask layout block showing a connectivity mismatch being corrected by an exemplary system and method of eliminating connectivity mismatches in accordance with the present disclosure; -
FIG. 5 is a layout view of an exemplary mask layout block and information window showing a connectivity mismatch being corrected by an exemplary system and method of eliminating connectivity mismatches in accordance with the present disclosure; -
FIG. 6 is a layout view of an exemplary mask layout block and information window showing a connectivity mismatch being corrected by an exemplary system and method of eliminating connectivity mismatches in accordance with the present disclosure; -
FIG. 7 is a layout view of an exemplary mask layout block after a connectivity mismatch has been corrected by an exemplary system and method of eliminating connectivity mismatches in accordance with the present disclosure; -
FIG. 8 is a schematic of exemplary hierarchically connected mask layout blocks in accordance with the present disclosure; -
FIG. 9 is a diagram of an exemplary convolutional neural network in accordance with the present disclosure; -
FIG. 10 is a diagram of an exemplary convolutional neural network in accordance with the present disclosure; -
FIG. 11 is a flow chart of an exemplary expert system in accordance with the present disclosure; and -
FIG. 12 is front view of a layout editor interfaced tool implementing exemplary systems and methods of eliminating connectivity mismatches in accordance with the present disclosure. - In the following paragraphs, embodiments will be described in detail by way of example with reference to the accompanying drawings, which are not drawn to scale, and the illustrated components are not necessarily drawn proportionately to one another. Throughout this description, the embodiments and examples shown should be considered as exemplars, rather than as limitations of the present disclosure.
- As used herein, the “present disclosure” refers to any one of the embodiments described herein, and any equivalents. Furthermore, reference to various aspects of the disclosure throughout this document does not mean that all claimed embodiments or methods must include the referenced aspects. Reference to materials, configurations, directions, and other parameters should be considered as representative and illustrative of the capabilities of exemplary embodiments, and embodiments can operate with a wide variety of such parameters. It should be noted that the figures may not show every piece of equipment, nor the materials, configurations, and directions of the various circuits and communications systems.
- Exemplary embodiments include computer-implemented systems and methods for automatic elimination of connectivity mismatches in a mask layout block, maintaining the process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, reliability verification (RV), and DFM constraints. As discussed in more detail herein, exemplary systems and methods use a processor and computer readable memory to operate and may include a layout editor interfaced tool. Disclosed embodiments analyze an integrated circuit layout block and identify connectivity mismatches. The methods include comparing a physical connection in a mask layout database to a corresponding connection in a schematic netlist and/or external constraints file. LVS problems are automatically corrected, including but not limited to, Shorts/Opens, Net Mismatches, and Well & Tap Shorts.
- A connectivity mismatch is identified if the physical connection in the layout does not match the same connection in the schematics, netlist and/or external constraints file. If a connection does not match the connectivity information from the netlist or external constraints file, disclosed systems and methods automatically correct the connectivity mismatch in the mask layout data. The automatic correction maintains the integrated circuit mask layout process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, reliability verification (RV), and DFM constraints.
- Exemplary embodiments move and/or adjust mask layout polygons and/or their contacts or VIAs to correct connectivity mismatches. The systems and methods work on individual polygons and hierarchical assembly which may include top level block and sub-blocks. Referring to
FIGS. 1-7 , an exemplary computer-implementedmethod 1 of eliminating connectivity mismatches in amask layout block 3 andcorresponding system 2 will now be described.FIG. 1 shows a high-level system flow in which anetlist 16,constraints 56 and process design rules 61, along with analysis from anartificial intelligence unit 35, provide theinputs 52, and thecircuit reference topology 70 informs masklayout block correction 1080, resulting in LVS clean 68 (layout connectivity) where the layout matches 74 the schematics. -
Exemplary methods 1 are illustrated inFIGS. 1A and 1B , and anexemplary system 2 is shown inFIG. 1C . Acomputer system 2 for correcting connectivity mismatches may include adata processor 5, an IC layout database 7, and an extraction manager 9 to extract a layout netlist from geometric layout data. A compareengine 11 may be provided to perform the function of comparing connectivity information in the layout netlist with that of a selected polygon in the mask layout block, as discussed in more detail below. -
Discrepancy manager 13 andmismatch evaluator 15 also perform critical functions related to connectivity mismatch detection and correction. Thesystem 2 may use successive approximation heuristics performed byheuristics engine 17 to significantly shorten the analysis time. Anexternal source 16 such as a netlist or external constraints file provides connectivity information, and thesystem 2 also obtains process and design rules 19. Avisual geometry engine 21 allows thesystem 2 to provide graphical images of the mask layout block, integrated circuit, and polygons' connectivity mismatches to the user. - The
system 2 may include one or more neural networks and may have multiple sets of neural networks. One neural network or set of neural networks may be trained with the connectivity information in the external constraints file. Another neural network or set of neural networks may be trained with the matched IC layout connectivity information. Machine learning processes analyze, learn, and compare the IC layout connectivity information to the connectivity information in the external constraints file (schematics connectivity information) and, in the event that mismatches are found, prepare a correction dataset of connectivity information. -
FIG. 2 shows an exemplaryintegrated circuit 8 where the schematic diagrammatically represents two inverters connected in serial. As an initial step, a selectedpolygon 12 or net in themask layout block 3 is analyzed. More particularly, thesystem 2 obtainsconnectivity information 14 associated with the selectedpolygon 12 or net from anexternal source 16 such as a netlist or external constraints file. The analysis includes comparing the connectivity of the selectedpolygon 12 against theconnectivity information 14 associated with it. A mismatched net is a layout connection that does not match the netlist or external constraints file. A net or multiple nets can be constructed in the mask layout block using polysilicon, metal, contact, VIA, or any other process-related given layers. - If, from this analysis, the
system 2 determines that there is aconnectivity mismatch 18, the mismatch is automatically corrected. An example of aconnectivity mismatch 18 is shown inFIG. 3 , where the output of thepolygon 12 a (here, a first inverter) is supposed to be connected to the input ofpolygon 12 b (a second inverter) but is mistakenly connected to the output ofpolygon 12 b. Thus, the signal IN #is shorted with the signal OUT. The system might also generate a mask layout file from the mask layout block that does not include the connectivity mismatch. Advantageously, analysis of themask layout block 3 may be performed during its construction to preemptively eliminate connectivity mismatches 18. -
Exemplary systems 2 andmethods 1 automatically correct theconnectivity mismatch 18 by placing, moving, and/or editing the selectedpolygon 12 or net. A mismatch may be corrected by disconnecting the wrong physical connection 20 and/or by erasing the entire net connections. The correct layout nodes are located in the mask layout database, that are matched according to a schematic netlist or external constraints file 16, and a new connection 20 is created between matched layout nodes. Corrections could also be done by automatically adjusting the number and/or positions of contacts or VIAs until the connectivity mismatch is eliminated. Other possible corrective measures include automatically adjusting the position, width, and/or length of the selected polygon 12 (or partial width and/or length) or automatically placing thepolygon 12 or net in an original position in themask layout block 3 until theconnectivity mismatch 18 is eliminated. In exemplary embodiments, the system offers an Undo feature to undo the correction if it should become necessary to do so. - As best seen in
FIG. 4 , in exemplary embodiments, when aconnectivity mismatch 18 is identified, one ormore violation markers 22 are generated. This figure shows a layout view of theintegrated circuit 8 after the connectivity mismatch analysis andviolation markers 22 graphically representing aconnectivity mismatch 18 in the mask layout block where the selectedpolygon 12 or net does not comply with the netlist and/or external constraints file. A fly-line marker 24 also may be generated. Fly-line markers 24 are associated with the selected position for thepolygon 12 or net and graphically represent the correct connectivity between the nodes and the correct nodes to be connected in themask layout block 3 where the selected polygon or net complies with the netlist and/or external constraints file 16. - Referring to
FIG. 5 , exemplary embodiments have aninformation window 26 to provide the user with information about themask layout block 3, the polygons' connectivity, and the correction process. This figure illustrates the user's option to automatically correct the integrated circuit mask layout database under commercial layout editor's environment by clicking on theFIX button 23 located within theinformation window 26. Theinformation window 26 shows all current mismatch connections and required connections, including displaying the current and required polygon's or net's connectivity parameters. -
Advice markers 36 generated by thesystem 2 may be displayed in theinformation window 26. In addition, as best seen inFIG. 6 , thewindow 26 shows the option of having thesystem 2 generate fly-line markers 24. A fly-line radio button 25 may be provided in theinformation window 26 and, when pressed, it shows the fly-line 24. Thewindow 26 also may provide the option to automatically correct the physical layout within an IC layout database or a commercial layout editor environment. Upon clicking on theFIX button 23 in theinformation window 26, thesystem 2 will correct the connectivity mismatches according to the corresponding netlist and/or external constraints file, maintaining design rules dimensions according to a commercial layout editor's technology file.FIG. 7 shows a sample physical layout after the connectivity mismatch has been corrected. More particularly, the signal IN #which is the OUTPUT of polygon or net 12 a (first inverter) is now connected to the INPUT of polygon or net 12 b (second inverter). - In exemplary embodiments, the
mask layout block 3 and the netlist and/or external constraints file 16 are hierarchical. Thus, as shown inFIG. 8 , themask layout block 3 may include at least one top-level cell 3 a and one or more instances of a sub-cell 3 b. Thesystem 2 determines if the selectedpolygon 12 produces a connectivity mismatch in one or more instances of a sub-cell 3 b in the mask layout block. Simultaneously, thesystem 2 may prevent the layout designer from creating or placing thepolygon 12 or net in themask layout block 3 at the selected position based on themismatch 18violation marker 22 in each instance of the sub-cell 27 if aconnectivity mismatch 18 exists. - The systems and methods described herein may use artificial intelligence technology in the form of convolutional neural networks (CNN) for deep learning of the IC layout structure, analysis, and automatic correction. A convolutional
neural network 50 provides the analysis in conjunction with geometrical correction methods.FIGS. 9 and 10 are CNN diagrams illustrating exemplary learningprocesses showing inputs 52 to theCNN 50 such as anetlist 16,schematics 54,constraints 56, asimulation 57,layout 58,reliability 59, process rules 60, and/or design rules 61. The CNNmachine learning topology 62 may be comprised of a plurality ofprocessing nodes 64 that analyze the inputted data. The resulting output 66 is LVS clean 68 (layout connectivity), LVS Correct, design rule compliant, and electrical DFM compliant, specifically an LVS clean mask layout database. - As mentioned above, correction dataset information may be produced by machine learning. Exemplary embodiments have an
expert system 90 that uses this information, or correction map, to automatically correct the IC layout to match the schematics. This may include disconnecting nodes in the mask layout block and re-connecting them to match the schematics. It might also comprise removing devices or adding devices that are missing or not included. Advantageously, theexpert system 90 calculates and presents various correction possibilities, weighing them according to shortest routing and best electrical characteristics, offering the user the option to select one of the correction possibilities to best match the design. In exemplary embodiments, theexpert system 90 offers an interactive correction feature and/or a batch correction mode. When it has completed its corrections, the expert system may produce a report log of the corrections done. - An
exemplary expert system 90 is illustrated inFIG. 11 .CNN 50 and layout editor interfacedtool 30 are communicatively coupled with theAI unit 35, which allows the user to interface with thesystem 2 by evaluating LVS correction possibilities offered by theCNN 50 and/or an artificial neural network (ANN).Expert system 90 engages inknowledge acquisition 92 including correction dataset information and any other data comprising therequisite knowledge base 96. Theknowledge base 96 and adynamic database 98 provide data to aninference engine 100. The dynamic database also informs the expert system'sreasoning 94 to perform the necessary correction steps. - Turning to
FIG. 12 , in exemplary embodiments the processing instructions include a commercially available layout editor interfacedtool 30. As discussed in detail herein, thetool 30 offersAdvice 32, Correct 34, and Auto-Fix 38 modes. Thetool 30 analyzes the integrated circuit mask layout database for electrical connectivity and determines if a connectivity mismatch has been made. Thetool 30 may be operated independently on a GDS II, GDS III (Oasis) or other formats or within a commercial layout editor environment in two different modes: anAdvice mode 32 and aCorrect mode 34. Both modes can operate in flat mode and hierarchical mode. When a layout designer chooses to work in hierarchical mode, thetool 30 will graphically provide advice about connectivity mismatches 18 throughout the hierarchy inAdvice mode 32. The tool will enforce connectivity mismatch elimination throughout the hierarchy inCorrect mode 34. More particularly, inCORRECT mode 34 all edited, placed or createdpolygons 12 or nets are automatically made connectivity correct. - When operating in
Advice mode 32, thetool 30 may graphically display a graphical representation marker called anAdvice marker 36 showing connectivity information (and/or connectivity mismatch, in which case it is like theviolation marker 22 described above, and/or required correct connectivity) of the selectedpolygon 12 or net according to a corresponding netlist and/or external constraints file 16. In addition, thetool 30 has the capability to show a fly-line 24, which connects the correct layout nodes. No automatic correction is performed in this mode. InCorrect mode 34, the tool may prevent or adjust the creation, placement, or editing ofpolygons 12 or nets to eliminate or correct connectivity mismatches. User actions are automatically corrected by the system to eliminate connectivity mismatches, while maintaining the process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, and obeying RV and DFM constraints. This is an interactive mode. In the independent mode, thetool 30 will process an IC layout database file of GDS II, GDS III (Oasis) or other format and automatically correct all found connectivity mismatches 18. The user may check both options (Advice and Correct modes) to activate the two modes at the same time. If neither mode is checked, the system is disconnected from the layout editor. - In the interactive mode, when a layout designer creates a
mask layout block 3, thetool 30 reads a corresponding netlist and/or external constraints file 16. In addition, thetool 30 reads the process technology file from the commercial layout editor environment. The technology file may contain design rules for the desired manufacturing process that ensure an integrated circuit fabricated on a semiconductor wafer functions correctly. The netlist file includes all connectivity information for themask layout block 3. - In exemplary embodiments, the
tool 30 has an option to read another constraints file which contains additional connectivity information. Thetool 30 may compare logical connections contained in a netlist or external constraints file 16 generated from a schematic diagram of an integrated circuit with electrical connections contained in a mask layout database within a commercial layout editor, generated from the corresponding layout block for the integrated circuit. If the electrical connections in the mask layout file match the logical connections in the netlist, thetool 30 may generate a graphical representation object that indicates the mask layout database does not include any connectivity mismatches. - However, if at least one electrical connection in the mask layout database within the commercial layout editor does not match the corresponding logical connection in the netlist, the
tool 30 may generate anAdvice marker 36 that contains connectivity mismatch information identified by the tool in the mask layout database within the commercial layout editor environment. TheAdvice marker 36 is then used to locate the electrical connections in themask layout block 3 under the commercial layout editor that do not match the corresponding logical connections in the netlist or external constraints file 16. - In exemplary embodiments, the
tool 30 automatically deletes the mismatched connections. Thetool 30 may remove all thepolygons 12 associated with the mismatched connection and create new connections in order to correct themismatch 18. Thetool 30 may match the nodes in the mask layout database within a commercial layout editor environment to the nodes in the netlist and generate electrical connections that match the logical connections. Thetool 30 then automatically routes the electrical connections among the appropriate nodes. The electrical connections are routed though the mask layout database within the commercial layout editor, using the editor's commands and functions, without creating any design rule violations in themask layout block 3. The process is performed on allmismatched connections 18 until all the connectivity mismatches are removed from the mask layout block. The tool then uses the connectivity information provided by the corresponding netlist or external constraints file to prevent the layout designer from creating connectivity mismatches during the construction of themask layout block 3. - If the layout designer chooses to operate in
Advice mode 32, the layout designer may select apolygon 12 or net by moving a cursor over the desired polygon/net and/or selecting it. Thetool 30 uses the connectivity information to graphically display the correct connection through anAdvice marker 36 and/or flyline 24, within themask layout block 3 where the layout designer may move, place, create or edit apolygon 12 or a net. If the layout designer selects, creates, edits, or movespolygons 12 or nets thetool 30 may graphically guide for the correct location and connection of thepolygon 12 or net in order to comply with the corresponding netlist and/or external constraints file 16. - The
tool 30 may graphically represent theAdvice marker 36 in themask layout block 3 by highlighting the correct node(s) to be connected with an appropriate color and/or pattern. The Advice marker color and/or pattern can be set in an initial tool setup. In addition, the tool may show aninformation window 26 with the current and required conditions. Theinformation window 26 also provides the user with the option to correct the violation. - If the layout designer chooses to operate in
Correct mode 34, thetool 30 may prevent the layout designer from creating, placing, editing, and connecting apolygon 12 or a net in a position within themask layout block 3 that will cause aconnectivity mismatch 18. If the layout designer attempts to create apolygon 12 or net of a certain width, length or in a location that does not comply with the netlist and/or external constraints file 16 requirements and causes aconnectivity mismatch 18, thetool 30 automatically adjusts the polygon or net to the correct width/length or size or by changing its location. - In exemplary embodiments, if the layout designer is stretching a metal polygon's edge in order to connect between two nodes, the
tool 30 automatically stretches the edge to the required length to connect it to the matched node. If the nodes are not to be connected according to the netlist file, then the tool will not allow them to be connected. If the mask designer attempts to connect these nodes, the metal wire will not be connected but will return to its original position or location with a system warning about LVS mismatch. In exemplary embodiments, if the layout designer is placing a VIA on a connection area betweenMetal 3 and Metal 4 polygons to mistakenly connect two nodes electrically, thetool 30 will automatically remove the VIA with an Advice marker notice about an LVS mismatch. - The
tool 30 may include another mode called Auto-Fix mode 38. In this mode, the entire layout block goes through a check and fix process. Auto-Fix mode 38 is aimed to be activated with the completion of theentire layout block 3. Using this feature the entire block will be analyzed for connectivity mismatches 18. When analysis is complete allmismatches 18 will be shown using anAdvice marker 36. This mode can operate in flat or fully hierarchical mode. - Auto-
Fix mode 38 also can provide an Auto-Correction feature 40. After complete analysis of themask layout block 3 the user has the option to approve an Auto-Correction action. Upon activation of this feature all connectivity mismatches will be automatically fixed, while maintaining the process design rules (DRC Clean), layout connectivity (LVS Clean) correctness, and obeying RV and DFM constraints. For example, after completion of an integrated circuit layout block under commercial layout editor environment, the user has the option to run the Auto-Fix feature 38. Thetool 30 will run a complete LVS analysis, or read external tool LVS results data, identifying all connectivity mismatches 18, if any exist, then thetool 30 will automatically correct all connectivity mismatches. The tool may CUT, MOVE, CREATE, ERASE, STRETCH or perform any other IC layout modifications to correct all connectivity mismatches 18, independently on an IC layout database file (GDSII, GDS III (Oasis), or other formats) or within a commercial layout editor environment. - The processing instructions for automatic connectivity mismatches elimination within an integrated circuit layout block database in an IC layout data file (GDSII, GDS III (Oasis) or any other format) may be encoded in computer-usable media. Such computer-usable media may include, without limitation, storage media such as floppy disks, hard disks, CD-ROMS, DVDs, read-only memory, and random access memory, as well as communications media such wires, optical fibers, microwaves, radio waves, and other electromagnetic or optical carriers.
- In operation, exemplary process flows (shown in
FIGS. 1A and 1B ) start by reading 1010 and comparing a physical connection in amask layout block 3 to a corresponding connection in a schematic netlist and/or external constraints file 16, which contains the net's connectivity parameters and other integrated circuit related connectivity factors. Theschematics 54 may include information on circuit/layout topology 70 anddesign constraints 56. This step includes analyzing 1030 a selectedpolygon 12 or net, including its position, for connectivity, obtaining 1020 relevant connectivity information from the netlist or external constraints file 16, and comparing the selectedpolygon 12 to the netlist connectivity information that is associated with the polygon or net, i.e., comparing 72 theschematics 54 to thelayout 70. In exemplary embodiments, the selected position for thepolygon 12 or net comprises a location for the polygon in themask layout block 3. The analysis may be done during or after construction of themask layout block 3. - The system queries 74 whether there is a match between the schematics and the layout. In the event of a match, a second-pass check and optimization may be performed 76. If a
mismatch 18 is identified 1040 the connectivity error is graphically presented 1060 in themask layout database 3. More particularly, if the analysis reveals aconnectivity mismatch 18, aviolation marker 22 associated with the selected position, length, or width of the selectedpolygon 12 or net may be generated. Theviolation marker 26 provides a graphical representation of theconnectivity mismatch 18 and may show where the selectedpolygon 12 or net complies with the external constraints file 16. Afly line 24 connected among the correct layout nodes also may be generated. Both theviolation marker 22 and flyline 24 may be displayed in aninformation window 26, along with the current and required polygon or net's connectivity parameters, so the user may easily see them. The process may include automatically preventing a layout designer from creating, placing, or editing the polygon or net 12 in themask layout block 3 at the selected position based on the violation marker if a connectivity mismatch exists. - The user is given the option to have the
connectivity mismatch 18 automatically corrected 1080 by placing, moving, or editing the selectedpolygon 12 or net and/or modifying the connection. The placing step may constitute automatically placing the polygon or net 12 in an original position in themask layout block 3. The editing step may comprise adjusting the polygon's width and/or length or parts thereof, and/or number of contacts or VIAs until the connectivity matches the associated netlist or external constraints file 16. Exemplary processes also include automatically determining if the modified connection creates a process design rule violation and automatically eliminating the design rule violation by further modifying the modified connection within commercial layout editor. After the correction process is completed, the system may once again query 74 whether there is a match between the schematics and the layout. When the system has determined that the correction process has successfully made a match, it may conduct aperformance evaluation 78 of the post-correction layout. Then, if the design specs are met 80, the correction is approved 82. Some or all of the method steps may be aided or run by an artificial intelligence (AI)unit 35, particularly thecorrection 1080, second-pass optimization check 76, and the post-correctionlayout performance evaluation 78. - The user has the option to perform a comprehensive Detect-and-Auto-Correct of all LVS mismatches of the entire IC layout block. The method and system also provides an option to automatically correct the connectivity mismatch during the construction of the mask layout block within commercial layout editor using the editor's commands and functions. After correcting all connectivity mismatches 18, a clean write log file may be generated 1090. The tool works on a standard IC layout database of GDSII, GDS III (Oasis) or any other general format.
- Thus, it is seen that systems and methods of automatically eliminating connectivity mismatches in a mask layout block are provided. It should be understood that any of the foregoing configurations and specialized components or connections may be interchangeably used with any of the systems and/or methods of the preceding embodiments. Although illustrative embodiments are described hereinabove, it will be evident to one skilled in the art that various changes and modifications may be made therein without departing from the scope of the disclosure. It is intended in the appended claims to cover all such changes and modifications that fall within the true spirit and scope of the present disclosure.
Claims (12)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/110,644 US20230195995A1 (en) | 2021-09-27 | 2023-02-16 | Systems and methods of eliminating connectivity mismatches in a mask layout block |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163248550P | 2021-09-27 | 2021-09-27 | |
US17/880,055 US11586799B1 (en) | 2021-09-27 | 2022-08-03 | Systems and methods of eliminating connectivity mismatches in a mask layout block |
US18/110,644 US20230195995A1 (en) | 2021-09-27 | 2023-02-16 | Systems and methods of eliminating connectivity mismatches in a mask layout block |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/880,055 Continuation US11586799B1 (en) | 2021-09-27 | 2022-08-03 | Systems and methods of eliminating connectivity mismatches in a mask layout block |
Publications (1)
Publication Number | Publication Date |
---|---|
US20230195995A1 true US20230195995A1 (en) | 2023-06-22 |
Family
ID=85229754
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/880,055 Active US11586799B1 (en) | 2021-09-27 | 2022-08-03 | Systems and methods of eliminating connectivity mismatches in a mask layout block |
US18/110,644 Abandoned US20230195995A1 (en) | 2021-09-27 | 2023-02-16 | Systems and methods of eliminating connectivity mismatches in a mask layout block |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/880,055 Active US11586799B1 (en) | 2021-09-27 | 2022-08-03 | Systems and methods of eliminating connectivity mismatches in a mask layout block |
Country Status (1)
Country | Link |
---|---|
US (2) | US11586799B1 (en) |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3393926B2 (en) | 1993-12-28 | 2003-04-07 | 株式会社東芝 | Photomask design method and apparatus |
US6782524B2 (en) | 1999-09-22 | 2004-08-24 | Dupont Photomasks, Inc. | Photomask and integrated circuit manufactured by automatically correcting design rule violations in a mask layout file |
US20020144230A1 (en) | 1999-09-22 | 2002-10-03 | Dupont Photomasks, Inc. | System and method for correcting design rule violations in a mask layout file |
TW486821B (en) | 2000-01-10 | 2002-05-11 | Springsoft Inc | Method and system for constructing and manipulating a physical integrated circuit layout of a multiple-gate semiconductor device |
US6782517B2 (en) | 2000-08-07 | 2004-08-24 | Dupont Photomasks, Inc. | Photomask and integrated circuit manufactured by automatically eliminating design rule violations during construction of a mask layout block |
US6978437B1 (en) | 2000-10-10 | 2005-12-20 | Toppan Photomasks, Inc. | Photomask for eliminating antenna effects in an integrated circuit and integrated circuit manufacture with same |
US6877144B1 (en) | 2002-02-28 | 2005-04-05 | Dupont Photomasks, Inc. | System and method for generating a mask layout file to reduce power supply voltage fluctuations in an integrated circuit |
US7178114B2 (en) | 2002-05-31 | 2007-02-13 | Springsoft, Inc. | Scripted, hierarchical template-based IC physical layout system |
US20050005256A1 (en) | 2002-06-03 | 2005-01-06 | Dupont Photomasks, Inc. | Photomask and integrated circuit manufactured by automatically correcting design rule violations in a mask layout file |
JP4229829B2 (en) | 2003-12-26 | 2009-02-25 | Necエレクトロニクス株式会社 | Hole pattern design method and photomask |
US7519940B2 (en) | 2005-05-02 | 2009-04-14 | Cadence Design Systems, Inc. | Apparatus and method for compensating a lithography projection tool |
US7568174B2 (en) | 2005-08-19 | 2009-07-28 | Cadence Design Systems, Inc. | Method for checking printability of a lithography target |
US7600212B2 (en) | 2005-10-03 | 2009-10-06 | Cadence Design Systems, Inc. | Method of compensating photomask data for the effects of etch and lithography processes |
US7617057B2 (en) * | 2005-12-21 | 2009-11-10 | Inst Technology Development | Expert system for controlling plant growth in a contained environment |
US7849423B1 (en) | 2006-07-21 | 2010-12-07 | Cadence Design Systems, Inc. | Method of verifying photomask data based on models of etch and lithography processes |
US20080115102A1 (en) * | 2006-11-14 | 2008-05-15 | Dan Rittman | System and method for automatic elimination of connectivity mismatches during construction of a mask layout block, maintaining process design rule correctness |
US20080134129A1 (en) | 2006-11-30 | 2008-06-05 | Carl Albert Vickery | Design rule checking for alternating phase shift lithography |
US8572517B2 (en) | 2008-06-10 | 2013-10-29 | Cadence Design Systems, Inc. | System and method for modifying a data set of a photomask |
DE112009002348T5 (en) | 2008-09-30 | 2012-01-19 | Hoya Corporation | Photomask blank, photomask, method for its production and method for producing a semiconductor device |
US9372855B1 (en) | 2012-05-22 | 2016-06-21 | Amazon Technologies, Inc. | Transactional control of RDBMS database definition language operations |
US10311165B2 (en) | 2015-03-30 | 2019-06-04 | Mentor Graphics Corporation | Guiding patterns optimization for directed self-assembly |
US10755026B1 (en) | 2017-11-14 | 2020-08-25 | Synopsys, Inc. | Circuit design including design rule violation correction utilizing patches based on deep reinforcement learning |
US11042981B2 (en) * | 2019-07-12 | 2021-06-22 | SVXR, Inc. | Methods and systems for printed circuit board design based on automatic corrections |
-
2022
- 2022-08-03 US US17/880,055 patent/US11586799B1/en active Active
-
2023
- 2023-02-16 US US18/110,644 patent/US20230195995A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US11586799B1 (en) | 2023-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20080115102A1 (en) | System and method for automatic elimination of connectivity mismatches during construction of a mask layout block, maintaining process design rule correctness | |
US7480878B2 (en) | Method and system for layout versus schematic validation of integrated circuit designs | |
KR101832117B1 (en) | Integrated circuit design using generation and instantiation of circuit stencils | |
US6418551B1 (en) | Design rule checking tools and methods that use waiver layout patterns to waive unwanted dimensional check violations | |
Williams | STICKS-A graphical compiler for high level LSl design | |
US6011911A (en) | Layout overlap detection with selective flattening in computer implemented integrated circuit design | |
US6889370B1 (en) | Method and apparatus for selecting and aligning cells using a placement tool | |
US7096447B1 (en) | Method and apparatus for efficiently locating and automatically correcting certain violations in a complex existing circuit layout | |
US10049175B1 (en) | Methods, systems, and articles of manufacture for interactively implementing physical electronic designs with track patterns | |
US8516406B1 (en) | Methods, systems, and articles of manufacture for smart pattern capturing and layout fixing | |
US7644382B2 (en) | Command-language-based functional engineering change order (ECO) implementation | |
US8504968B2 (en) | Method to determine high level power distribution and interface problems in complex integrated circuits | |
US20050076316A1 (en) | Design-manufacturing interface via a unified model | |
US7707528B1 (en) | System and method for performing verification based upon both rules and models | |
US20090291512A1 (en) | Semiconductor device pattern verification method, semiconductor device pattern verification program, and semiconductor device manufacturing method | |
EP0803103A1 (en) | System and method for hierarchical device extraction | |
US20050234684A1 (en) | Design for manufacturability | |
US10339246B2 (en) | Schematic overlay for design and verification | |
CN103970930A (en) | Automated Design Layout Pattern Correction Based On Context-aware Patterns | |
US5754442A (en) | Path analyzing displaying apparatus for designing logic circuit | |
US11853682B2 (en) | Systems and methods for identification and elimination of geometrical design rule violations of a mask layout block | |
US7076410B1 (en) | Method and apparatus for efficiently viewing a number of selected components using a database editor tool | |
US11853681B2 (en) | Post-routing congestion optimization | |
US11586799B1 (en) | Systems and methods of eliminating connectivity mismatches in a mask layout block | |
CN117217163A (en) | Script-based SOC chip testing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
AS | Assignment |
Owner name: GBT TECHNOLOGIES, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:RITTMAN, DAN;JACOB, MO;SIGNING DATES FROM 20210929 TO 20211111;REEL/FRAME:064535/0070 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
AS | Assignment |
Owner name: GBT TOKENIZE CORP., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GBT TECHNOLOGIES INC.;REEL/FRAME:065420/0434 Effective date: 20230807 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |