CN116090392B - gDS file-based pin physical attribute matching method and system - Google Patents

gDS file-based pin physical attribute matching method and system Download PDF

Info

Publication number
CN116090392B
CN116090392B CN202310184643.5A CN202310184643A CN116090392B CN 116090392 B CN116090392 B CN 116090392B CN 202310184643 A CN202310184643 A CN 202310184643A CN 116090392 B CN116090392 B CN 116090392B
Authority
CN
China
Prior art keywords
pin
coordinates
obtaining
max
coordinate
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.)
Active
Application number
CN202310184643.5A
Other languages
Chinese (zh)
Other versions
CN116090392A (en
Inventor
张金辉
戴维
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Hejian Industrial Software Group Co Ltd
Original Assignee
Shanghai Hejian Industrial Software Group Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Hejian Industrial Software Group Co Ltd filed Critical Shanghai Hejian Industrial Software Group Co Ltd
Priority to CN202310184643.5A priority Critical patent/CN116090392B/en
Publication of CN116090392A publication Critical patent/CN116090392A/en
Application granted granted Critical
Publication of CN116090392B publication Critical patent/CN116090392B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

The invention relates to the technical field of electronic design automation, in particular to a pin physical attribute matching method and system based on a gds file, which are used for analyzing the gds file to obtain text data and establishing a first mapping for the file data; inserting the central point row coordinates of the pins to be matched into the first mapping to obtain updated first mapping; the method comprises the steps of moving the position of a cursor of a central point row coordinate in a first updated mapping to obtain an effective row coordinate, obtaining an effective column coordinate in a similar way, obtaining a pin network name text and a pin number text according to the effective row coordinate, a pin network name label and a pin number label appointed by a user, further obtaining the pin network name and the pin number text of a pin to be matched according to a minimum distance, and solving the technical problem that in the prior art, a gds file is imported into a known tool, only graphical information exists, and the original design cannot be completely reproduced due to the fact that the pin network name and the pin number of an element are not available.

Description

gDS file-based pin physical attribute matching method and system
Technical Field
The invention relates to the technical field of electronic design automation, in particular to a pin physical attribute matching method and system based on gds files.
Background
The gds binary file is a common storage format, is a "layout" file, and is used for producing a mask plate required by a photolithography process. In IC designs, gds files contain complete geometric information, but the physical properties are weakened, making it difficult for users to extract physical information such as pins (pins), pin network names (net names), etc. when using these files. While the gds file is often used for IC manufacturing, it contains only graphical information. In some cases, however, it may also be desirable to verify, modify, or use the recovered corresponding physical information based on recovering the corresponding physical characteristics from the gds file. However, the gds file is imported into the currently known tool at present, and only graphical information is available, and there are no elements (symbols), pins (pins), pads (pads), pin network names (net name), pin numbers (pin numbers) and the like, so that the original design cannot be completely reproduced, and the subsequent verification or use of the gds file is restricted.
Disclosure of Invention
Aiming at the technical problems that only graphic information is needed and two physical properties of pin network names and pin numbers are not available when the gds file is imported into a currently known tool, the invention adopts the following technical scheme: a method for matching pin physical properties based on gds files, the method comprising:
s001, analyzing the gds file to obtain text data; obtaining U first mapping KV 1= { KV1 according to line coordinates of text data 1 ,KV1 2 ,…,KV1 u ,…KV1 U },KV1 u For the u-th row coordinate X u A corresponding first mapping; wherein KV1 u The bond of (a) is X u ,KV1 u Has a value of X u Second mapping kv2= { KV2 corresponding to W column coordinates included in the map 1 ,KV2 2 ,…,KV2 w ,…KV2 W },KV2 w Is X u W-th column coordinate Y of (3) w A corresponding second mapping in which KV2 w The bond of (2) is Y w 、KV2 w Has a value of Y w Sum1 texts are included.
S002, obtaining the g-th pin g Center point coordinates (X) g,0 ,Y g,0 ) Wherein X is g,0 Is pin g Center point column coordinates of Y g,0 Is pin g Is defined by the center point row coordinates; y is set to g,0 Inserted into KV1, an updated first map KV1' is obtained.
S003, find Y in KV1 g,0 Obtaining Y g,0 Corresponding cursor Ykey g
S004, moving Ykey g At the location in KV1', valid row coordinates within TOL1 row error values are obtained.
S005, acquiring TOL2 effective column coordinates in the column error value, and acquiring Sum2 effective texts according to TOL1 effective row coordinates and TOL2 effective column coordinates.
S006, dividing Sum2 valid texts into Sum21 pin network name texts and Sum22 pin number texts according to the pin network name tags and pin number tags specified by the user, and satisfying Sum 2=sum 21+sum22.
S007, obtaining the Sum pin in the Sum21 pin network name text g Minimum distance of center point coordinatesFoot network name text net g
S008, acquiring AND pin in Sum22 pin number texts g Pin numbered text Tag with minimum center point coordinate distance g Obtaining pin g Associated pin physical attributes { net g ,Tag g }。
Compared with the prior art, the pin physical attribute matching method and system based on the gds file have obvious beneficial effects, can achieve quite technical progress and practicality, have wide industrial utilization value, and have at least the following beneficial effects:
the invention provides a method and a system for matching physical properties of pins based on gds files, wherein text data is obtained by analyzing the gds files, and a first mapping and a second mapping with nested relation are established for the file data; inserting the central point row coordinates of the pins to be matched into the first mapping to obtain updated first mapping; moving the position of the cursor of the central point row coordinate in the updated first mapping to obtain TOL1 effective row coordinates, obtaining TOL2 effective column coordinates in the same way, and obtaining Sum2 effective texts according to the effective row and column coordinates; then dividing the effective text into a pin network name text and a pin number text according to the pin network name tag and the pin number type designated by the user, and further acquiring the physical attribute of the pin to be matched according to the minimum distance: the method solves the technical problem that the original design cannot be completely reproduced due to the fact that the gds file is imported into a currently known tool, only graphic information is available, and no element pin network name (net name) information and pin number (pin number) exist in the prior art, and achieves the purpose of matching pins with corresponding physical properties.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for the description of the embodiments will be briefly described below, and it is apparent that the drawings in the following description are only some embodiments of the present invention, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a flowchart of a method for extracting pins in a gds file according to an embodiment of the present invention;
fig. 2 is a flowchart of a pin extraction method based on gds files according to an embodiment of the present invention;
fig. 3 is a flowchart of a method for matching physical attributes of pins based on gds files according to an embodiment of the present invention.
Detailed Description
The following description of the embodiments of the present invention will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present invention, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to fall within the scope of the invention.
The first embodiment of the present invention is provided for solving the technical problem that components (symbol), pins (pin), pads (pads) in the gds file cannot be recovered as indicated in the background art.
Example 1
Referring to fig. 1, a flowchart of a method for extracting pins in a gds file is shown, where the method includes:
s10, a first layer tag and a first data type tag of a layer where the geometric figure of the pin designated by the user is located are obtained.
It should be noted that a gds file may include multiple different layers for storing the geometry of the pins, each layer having a first layer tag for identifying the different layers. The layering can be by element type or by other rules according to user design. Each first layer tag also includes a corresponding data type tag, the text and geometry data types being different. After the user designates the first layer tag and the first data type tag of the layer where the pins are located, interference of other pins can be eliminated when the file is parsed.
S20, analyzing the gds file to obtain N first structures ST1 and M second structures ST2 in the gds file.
The gds file is a binary file, and when the gds file is generated, information such as a pad (pad), an element (symbol), a pin (pin), a network name (net name), a pin number (pin number) and the like designed by a user are respectively converted into binary information, and when the gds file is analyzed, a corresponding object needs to be analyzed according to the binary information. Among other things, a number of different types of pads may be included in a design, one structure for each pad, one and only one set of geometries for each pad in the first structure for each pad and at most one geometry for each geometry in each layer of circuit board. I.e. the pads comprise a plurality of layers of geometry, each layer of geometry corresponding to a circuit board of a respective layer. Each element (symbol) also corresponds to a structure, and each element (symbol) includes a plurality of pins (pin), each pin referencing a corresponding pad name. In order to distinguish different structures, a structure corresponding to a pad is referred to as a first structure, and an element including a plurality of pins is referred to as a second structure, and the first structure is different from the second structure.
Further, ST 1= { ST1 1 ,ST1 2 ,…,ST1 i ,…,ST1 N },ST1 i For the ith first structural body, the value range of i is 1 to N, and N is more than or equal to 1; ST1 i Comprising a group of geometric GOMs with identical center point coordinates in a Q-layer circuit board i ={GOM i,1 ,GOM i,2 ,…,GOM i,j ,…,GOM i,M(i) },GOM i,j For GOM i The j-th geometry in (2), GOM i,j The attribute of (1) includes a second layer label and a second data type label, j has a value ranging from 1 to M (i), and the function value of M (i) is GOM i The number of geometric figures.
It should be noted that the geometric figure may be a geometric figure such as a circle, a square, an octagon, etc.
Alternatively, GOM i,j And the e-th geometry GOM i,e The values of e are in the range of 1 to M (i), and e is not equal to j. Alternatively, GOM i,j And GOM i,e The difference is GOM i,j And GOM i,e Different in shape or the same in shape but different in size. Specifically, GOM is obtained i,j And GOM i,e Is the number of vertices of GOM i,j And GOM i,e If the number of vertices is different, determining GOM i,j And GOM i,e Is different in shape; when GOM i,j And GOM i,e The number of vertices is the same, and GOM i,j And GOM i,e If the relative coordinates of (a) are different, determining GOM i,j And GOM i,e Is different in shape or size; when GOM i,j And GOM i,e The number of vertices is the same, and GOM i,j Relative coordinates of (2) and GOM i,e When the relative coordinates of (a) are the same, determining GOM i,j And GOM i,e Is the same as that of (a).
Optionally, the step of obtaining the relative coordinates includes: obtaining GOM i,j The coordinates of each vertex and the coordinates of the central point are respectively subtracted from the coordinates of each vertex to obtain the relative coordinates of each vertex relative to the central point.
Optionally, the layers Q and GOM of the circuit board i The number M (i) of the medium geometric figures is the same or different, and M (i) is less than or equal to Q. When M (i) =q, it is indicated that each layer of the circuit board corresponds to a geometric figure, and when M (i) < Q, it is indicated that some layers have no corresponding geometric figure designed.
Alternatively, ST1 i Comprising a group of geometric GOM i And the f first structural body ST1 f Comprising a group of geometric GOM f Different. Alternatively, GOM i Number of intermediate geometries M (i) and GOM f The number M (f) of intermediate geometries is different. Alternatively, GOM i And GOM f Including at least one circuit board of the same layer.
Further, st2= { ST2 1 ,ST2 2 ,…,ST2 j ,…,ST2 M },ST2 j For the j-th second structure, the value range of j is 1 to M; ST2 j Includes R reference objects ref2= { ref2 1 ,REF2 2 ,…,REF2 r ,…,REF2 R },REF2 r For ST2 j R-th reference object, REF2 r The attributes of (a) include coordinates and a referenced pad name, and R has a value ranging from 1 to R.
It should be noted that, each attribute of the reference object includes a reference pad name, where the reference pad name is a name of the first structure corresponding to the pad. REF2 r Is the center point coordinate of the pin, REF2 r The pins of (a) are the same as the geometry of the referenced pads on each layer of the circuit board.
S30, when GOM i,j Satisfies ST1 when the second layer label is the same as the first layer label and the second type label is the same as the first data type label i Is determined as an element, GOM i,j Marked as sub-pads; traversing GOM i When GOM i Is marked as a sub-pad, and ST1 is performed when the number of sub-pads in each layer of the circuit board is 1 or less i The method is marked as the bonding pad, and the purpose of rapidly and accurately identifying which structures in the gds file are the bonding pad is achieved.
S40, traversing all the reference objects in REF2, when REF2 r When the pad name is referenced, REF2 is determined r Is a pin, ST2 j Is an element; according to REF2 r Is used to generate pins.
It should be noted that, when a reference object refers to a corresponding pad name, the reference object is described as a pin.
As a preferred embodiment, when REF2 r And ST2 j T-th reference object REF2 of (2) t REF2 when all are determined to be pins r And REF2 t The names of the cited bonding pads are the same or different, wherein the value range of t is 1 to R, and t is not equal to R.
As a preferred embodiment, the pad name is the name of the second structure determined as the element.
In summary, the first embodiment of the present invention provides a method for extracting pins in a gds file, where a first layer tag and a first data type tag of a layer where a reference is located are specified by a user, and the gds file is parsed to obtain a first structure body and a second structure body, where when the layer tag and the data type tag of all geometric figures included in the first structure body are the same as those specified by the user, and at most only one geometric figure is on each layer of circuit board, the corresponding structure body is marked as a bonding pad; when the reference object included in the second structure body references the corresponding bonding pad name, the reference object is judged to be a pin, the pin is generated according to the coordinate of the reference object and the referenced bonding pad name, the purpose of recovering pin information and element information is achieved, a user can revise, edit or verify the corresponding pin again, and the method accurately and rapidly identifies and recovers the corresponding pin by analyzing the bonding pad in the gds file and skillfully and rapidly through the attribute characteristics of the referenced bonding pad name.
Based on the same inventive concept as the method embodiment provided in the first embodiment, the present invention further provides a system for extracting pins in a gds file, where the system includes a processor and a non-transitory computer readable storage medium storing at least one instruction or at least one program therein, where the at least one instruction or the at least one program is loaded and executed by the processor to implement a method for extracting pins in a gds file, and a method for extracting pins in a gds file is described in detail in the method embodiment of the first embodiment and is not repeated.
The first embodiment is applicable to including a pad (pad) in the original design, and the pins are generated by referring to the pad names, so that the reference object can be determined to be a pin by acquiring the pad names referred to by the corresponding reference object in the gds file obtained by parsing. However, the first embodiment is not suitable for the original design without the bonding pad, that is, the pins are corresponding geometric patterns, and are not generated by referring to the names of the bonding pads, and the corresponding pins cannot be resolved and recovered according to the first embodiment. In order to solve this problem, the embodiment of the present invention further proposes the second embodiment.
Example two
Referring to fig. 2, a flowchart of a pin extraction method based on gds file is shown, the method includes the following steps:
s100, a first layer tag and a first data type tag of a layer where the geometric figure of the pin designated by the user is located are obtained.
It should be noted that, the first layer tag and the first data type tag are the same as those in the first embodiment, and will not be described again.
S200, analyzing the gds file to obtain D structural bodies STR= { STR in the gds file 1 ,STR 2 ,…,STR d ,…,STR D },STR d D is the D-th structural body, and the value range of D is 1 to D; STR (short tandem repeat) d GGOM comprising L (d) geometric groups d ={GGOM d,1 ,GGOM d,2 ,…,GGOM d,l ,…,GGOM d,L(d) },GGOM l GGOM for the first geometric figure group with the same center point coordinates in the Q-layer circuit board d,l The attributes of (a) include a second layer tag and a second data type tag, and L has a value in the range of 1 to L (d).
It should be noted that, when the corresponding pad is not designed in the user design, the corresponding pad does not exist in the generated gds file. The pin matrix designed by the user may include a plurality of elements, each element includes a plurality of pins, each pin includes at most one geometric figure in different layers of circuit boards, when the gds file is generated, the elements are correspondingly generated into corresponding structures, and the pins are generated into a corresponding set of geometric figures (geometric figures) in each structure.
Wherein GGOM d,l And the y-th geometry group GGOM d,y Identical or different, when GGOM d,l And GGOM d,y When the two are identical, the description is identical; when GGOM d,l And GGOM d,y Meanwhile, the number of the geometric figures included in the two circuit boards is different, or the number of the geometric figures is the same, but the geometric figures are positioned on circuit boards of different layers; or the number of geometric figures is the same, but the geometric figures on the same layer of circuit board are different.
As a preferred embodiment, GGOM d,l Includes w (l) geometric figures, wherein w (l) is less than or equal to Q, and when w (l) =Q, each layer of circuit board corresponds to oneGeometry, when w (l) < Q, indicates that the corresponding geometry is not designed in some layers.
S300, when GGOM d,l STR when each geometric figure of the data type label satisfies the condition that the second layer label is the same as the first layer label and the second type label is the same as the first data type label d Is determined as an element, GGOM d,l Is determined as a pin; judging GGOM d,l Geometric group PAD = { PADs with newly generated K newly created PADs 1 ,PADS 2 ,…,PADS k ,…,PADS K Whether or not (GGOM) d,l When the set of geometric patterns in PAD is different from all the geometric patterns in PAD, generating and GGOM d,l K+1th newly built pad PADS of the same geometric figure group K+1 And refer to PADS K+1 Generating GGOM d,l Corresponding pins, wherein PADS k For the kth newly-built bonding pad, the value range of K is 1 to K, and K is an integer greater than or equal to 0; when GGOM d,l With PADS k When the geometric pattern groups are the same, GGOM d,l Direct reference to PADS k Generating GGOM d,l Corresponding pins.
It should be noted that, since there is no corresponding pad in the gds file, there is no corresponding pad structure after parsing, the parsed structure includes a picture and satisfies the specification of the user as a corresponding component (symbol), and the geometric group in the component is a corresponding pin. When the first pin is generated, a corresponding newly built bonding pad is required to be generated according to the geometric figure group corresponding to the pin, and the newly built bonding pad is referenced to generate the corresponding pin. When other pins are generated, the corresponding pins are compared with the newly-built bonding pads, and when the corresponding pins are identical to the newly-built bonding pads, the newly-built bonding pads are referenced to generate the corresponding pins, so that a large amount of computer resources can be saved, and the recovery speed is improved.
As a preferred embodiment, GGOM is judged d,l With PADS k The step of determining whether the geometric figure groups are identical includes:
s320, GGOM obtained by analyzing gds file d,l The attributes of (a) also include GGOM d,l Coordinate sequence AT of geometric figure of circuit board on Q layer l ={AT l,1 ,AT l,2 ,…,AT l,q ,…,AT l,Q },AT l,q For GOM j In the coordinate sequence of the geometric figure of the Q-th layer circuit board, the value range of Q is 1 to Q; AT (automatic Transmission) l,q Comprising R (q) vertex coordinates t q ={t q,1 ,t q,2 ,…,t q,r ,…,t q,R(q) And a center point coordinate t q,0 Wherein t is q,r Is GGOM d,l At the R-th vertex coordinate of the q-th layer, the value range of R is 1 to R (q);
s340, obtaining GGOM d,l Relative coordinate sequence AT of circuit board AT Q layer l ′={AT l,1 ′,AT l,2 ′,…,AT l,q ′,…,AT l,Q ′},AT l,q ' as AT l,q Is a relative coordinate sequence of (2); AT (automatic Transmission) l,q ' comprising R (q) relative vertex coordinates t q ′={t q,1 ′,t q,2 ′,…,t q,r ′,…,t q,R(q) ′},t q,r ' t is q,r And satisfy t q,r ′=t q,r -t q,0
S360, obtaining PADS k Relative coordinate sequence PAT of geometric figure of circuit board at Q layer k ′={PAT k,1 ′,PAT k,2 ′,…,PAT k,q ′,…,PAT k,Q ′},PAT k,q Is PADS k A relative coordinate sequence at the q-th layer; PAT (PAT) k,q ' comprising U (p) vertex coordinates pt q ′={pt q,1 ′,pt q,2 ′,…,pt q,b ′,…,pt q,u(p) ′},pt q,b ' PAT k,q B's relative coordinates, b ranging from 1 to U (p);
s380, compare t q ' and pt q ' whether the relative coordinate sequences are identical, when t q ' and pt q When the relative coordinate sequences of' are identical, GGOM is determined d,l With PADS k The geometric figure groups of the q-th layer circuit board are the same; when the geometric figure groups of the Q-layer circuit board are identical, determining GGOM d,l With PADS k Is identical to the geometry group of (c).
By judging whether the relative coordinates of the graphics are the same, whether the two geometric figures are the same can be rapidly and accurately judged, and compared with the calculation of various attribute characteristic values of the geometric figures, the calculation amount is reduced.
As a preferred embodiment, the 320 further comprises:
s322, obtain t q The minimum column coordinate X of (2) min Maximum column coordinate X max Minimum row coordinate Y min Maximum row coordinate Y max
S324, according to X min And X max Obtaining t q,0 Center point column coordinate X of (2) q,0 ,X q,0 The method meets the following conditions: x is X q,0 =(X min +X max )/2;
S326, according to Y min And Y max Obtaining t q,0 The center point row coordinate Y of (2) q,0 ,Y q,0 The method meets the following conditions: y is Y q,0 =(Y min +Y max )/2。
The coordinates of the center point of the geometric figure can be accurately obtained through S322-S326.
As a preferred embodiment, the 340 further comprises:
s341, acquiring a coordinate error threshold Err;
s342, when t q,r ' and pt q,b Difference ET between q,r ′=∣t q,r ′-pt q,b When' | is less than or equal to Err, t is determined q,r ' and pt q,b 'same'.
The same geometry within the error range can be obtained by steps S341-S342, reducing the decision that two pins that should otherwise be identical are different due to minor mapping errors.
Also included as a preferred embodiment S360 is:
s370, comparing whether R (q) and U (p) are equal, if so, executing S380; if not, determine GGOM d,l With PADS k Is different from the geometry group of (c). That is, after the number of vertex coordinates is determined to be equal, whether the corresponding coordinates are equal is calculated; if the number of vertex coordinates of the twoIf the two patterns are not equal, the two patterns can be directly judged to be different, so that the calculated amount is reduced, and the pin extraction speed is improved.
Wherein pins in different elements may refer to the same newly created pad. If the pin structures in all the elements are the same, all the pins refer to the same newly built bonding pad.
As a preferred embodiment, PADS k And the v newly built pad PADS v Different.
Alternatively, PADS k And the v newly built pad PADS v At least one layer of circuit board has different geometric figures.
Alternatively, PADS k The number of geometric patterns included in the pad and the v-th newly built pad PADS v The number of included geometries varies.
In summary, the second embodiment of the present invention provides a pin extraction method based on a gds file, where the extraction method analyzes the gds file to obtain D structures by designating a first layer tag and a first data type tag of a layer where a pin is located by a user, where each structure includes a plurality of geometric figure groups; when the second-layer labels and the second-type labels of all geometric figures in the same geometric figure group are respectively the same as the first-layer labels and the first-type labels designated by the user, the corresponding geometric figure group is judged to be a pin, a structural body comprising the geometric figure group is an element, all geometric figure groups are traversed, and whether the corresponding geometric figure group is the pin is judged. And newly-built bonding pads corresponding to the pins are regenerated, so that pins with the same geometric figure refer to the corresponding newly-built bonding pads, the purpose of extracting pins which do not comprise bonding pads in the gds file is achieved, and meanwhile, calculation resources can be saved and the efficiency of pin extraction can be improved by referring to the newly-built bonding pads when the pins are generated.
Based on the same inventive concept as the method embodiment provided in the second embodiment, the second embodiment of the present invention further provides a pin extraction system based on a gds file, where the system includes a processor and a non-transitory computer readable storage medium, where at least one instruction or at least one program is stored in the non-transitory computer readable storage medium, where the at least one instruction or the at least one program is loaded and executed by the processor to implement a pin extraction method based on a gds file, where a pin extraction method based on a gds file is already described in detail in the method embodiment of the second embodiment and is not repeated.
The first embodiment and the second embodiment can achieve the purpose of extracting pins, but cannot solve the problem of recovering the pin network name and the pin number in the physical attribute of the pins, and in order to solve the problem, the third embodiment is further provided by the embodiment of the invention.
Example III
Referring to fig. 3, a flowchart of a method for matching physical properties of pins based on gds files is shown, where the method includes:
s001, analyzing the gds file to obtain text data; obtaining U first mapping KV 1= { KV1 according to line coordinates of text data 1 ,KV1 2 ,…,KV1 u ,…KV1 U },KV1 u For the u-th row coordinate X u The value range of U is 1 to U; wherein KV1 u The bond of (a) is X u ,KV1 u Has a value of X u Second mapping kv2= { KV2 corresponding to W column coordinates included in the map 1 ,KV2 2 ,…,KV2 w ,…KV2 W },KV2 w Is X u W-th column coordinate Y of (3) w The corresponding second mapping, wherein the value range of W is 1 to W; wherein KV2 w The bond of (2) is Y w 、KV2 w Has a value of Y w Sum1 texts are included.
Wherein the physical properties of each pin in the gds file include a pin network name and a pin number. The text data obtained after parsing the gds file therefore includes the pin network name text and the pin number text.
The map (map) is an object that stores an association between a key and a value. The first mapping and the second mapping form a nested mapping relation, specifically, the key of the first mapping is row coordinates and the value is the second mapping, and the key of the second mapping is column coordinates in the row coordinates and the value is corresponding text.
S002, obtainThe g-th pin g Center point coordinates (X) g,0 ,Y g,0 ) Wherein X is g,0 Is pin g Center point column coordinates of Y g,0 Is pin g Is defined by the center point row coordinates; y is set to g,0 Inserted into KV1, an updated first map KV1' is obtained.
It should be noted that pin extraction g The steps S10 to S40 in the first embodiment may be adopted to complete the extraction of the pins with pads, or other preferred embodiments in the first embodiment are adopted, which will not be described again. The extraction of the pins without pads can be performed by adopting steps S100-S300 provided in the second embodiment, or other preferred embodiments in the second embodiment, which will not be described in detail.
As a preferred embodiment, each pin obtained by parsing the gds file has corresponding vertex coordinates, the pin g Center point coordinates (X) g,0 ,Y g,0 ) The acquisition step of (a) comprises:
s0021 according to pin g Coordinates t of all R (g) vertices in (b) g Obtaining t g The minimum column coordinate X of (2) min Maximum column coordinate X max Minimum row coordinate Y min Maximum row coordinate Y max
S0022 according to X min And X max Obtaining t g,0 Center point column coordinate X of (2) g,0 ,X g,0 The method meets the following conditions: x is X g,0 =(X min +X max )/2。
S0023 according to Y min And Y max Obtaining t g,0 The center point row coordinate Y of (2) g,0 ,Y g,0 The method meets the following conditions: y is Y g,0 =(Y min +Y max )/2。
In general, Y g,0 Not equal to the line coordinates of the text data as key in KV1 if Y is not inserted g,0 Directly find Y in KV1 g,0 The probability of failing to find it is high, leading to inaccurate end results. In order to accurately find the effective row coordinates within the error range, Y is therefore g,0 Inserted into KV1 to prevent unseen conditionThe situation arises.
As a preferred embodiment, S002 further includes:
s0024 when all bonds in KV1 are bonded to Y g,0 When all are not equal, Y is g,0 After insertion into KV1, Y g,0 The value of (2) is null.
As a preferred embodiment, S002 further includes:
s0025 when there is a bond with Y in KV1 g,0 With equal keys, no new mapping is created.
In the case of Y g,0 When the first map KV1 is inserted, the first map KV1 can be automatically inserted in the order of row coordinates.
S003, find Y in KV1 g,0 Obtaining Y g,0 Corresponding cursor Ykey g . Wherein Ykey g Is Y g,0 A position in the first map.
S004, moving Ykey g At the location in KV1', valid row coordinates within TOL1 row error values are obtained. Compared with the calculation amount of comparing the row and column coordinates of each pin with all text coordinates one by one, the calculation amount of matching can be greatly reduced by inserting the central point row coordinates in the mapping and moving the position of the corresponding cursor to obtain the effective row coordinates. And simultaneously, matching in the row error value is allowed, so that the final matching result is more accurate.
As a preferred embodiment, the step S004 further includes:
s0041 calculating Y based on the line error value Ec g,0 (min)=Y g,0 -Ec,Y g,0 (max)=Y g,0 +ec, obtaining the row coordinate range [ Y ] g,0 (min),Y g,0 (max)];
S042, ykey g The pointed position moves along a first direction in which the row coordinate increases and a second direction in which the row coordinate decreases in KV1', respectively, and Ykey is arranged after each movement along the first direction g Pointing key and Y in a first new position g,0 (max) comparing to obtain YS1 pieces less than or equal to Y g,0 (max) effective row coordinates; will be Ykey after each movement in the second direction g Key of pointed second new positionAnd Y is equal to g,0 (min) comparing to obtain YS2 or more Y g,0 The effective row coordinates of (min); and tol1=ys1+ys2 is satisfied.
S005, acquiring TOL2 effective column coordinates in the column error value, and acquiring Sum2 effective texts according to TOL1 effective row coordinates and TOL2 effective column coordinates.
The step of acquiring the effective column coordinates is the same as the step of acquiring the effective row coordinates.
As a preferred embodiment, the S005 further includes:
s0051, X g,0 Inserting the first mapping KV2 into KV2 to obtain updated first mapping KV2';
s0052, find X in KV2 g,0 Obtaining X g,0 Corresponding cursor Xkey g
S0053 calculating X from the column error value Er g,0 (min)=X g,0 -Er,X g,0 (max)=X g,0 +Er, obtaining the column coordinate Range [ X ] g,0 (min),X g,0 (max)];
S054 Xkey g The pointed position moves in a third direction in which the column coordinates increase and in a fourth direction in which the column coordinates decrease in KV2', respectively, will move in the third direction by Xkey after each movement g Pointing key and X of third new position g,0 (max) comparing to obtain XS1 or less X g,0 (max) valid column coordinates; xkey after each movement in the second direction g Pointing key and X of fourth new position g,0 (min) comparing to obtain XS2 or more X g,0 The valid column coordinates of (min); and tol2=xs1+xs2 is satisfied.
The method for inserting the center point coordinates into the first mapping and the second mapping and obtaining the effective texts in the error range according to the center point coordinates is compared with the method for comparing the texts one by one in the prior art, so that the calculation amount for searching the effective texts can be greatly reduced, and the searching speed is improved.
S006, dividing Sum2 valid texts into Sum21 pin network name texts and Sum22 pin number texts according to the pin network name tags and pin number tags specified by the user, and satisfying Sum 2=sum 21+sum22.
The pin network name tag is used for identifying that an object in a corresponding layer is a pin network name, and the pin network name is text data and is different from the geometric figure of a pin. Similarly, the pin number tag is used for identifying that the object in the corresponding layer is a pin number, and the pin number is text data. Each pin network name text in the gds file has a corresponding pin network name tag, and each pin number text also has a corresponding pin number tag. Therefore, the corresponding text can be identified as the pin network name text or the pin number text by the label of the text in the file obtained by parsing.
S007, obtaining the Sum pin in the Sum21 pin network name text g Pin network name text net with minimum center point coordinate distance g
As a preferred embodiment, net g The acquisition step of (a) comprises:
s0071, respectively calculating coordinates and pins of Sum21 pin network name texts g Obtaining Sum21 first distances from the distance between the coordinates of the central points, wherein the text of the pin network name corresponding to the minimum value in the Sum21 first distances is net g
When designing the pins, each pin has a pin network name and a pin number, and the corresponding pin network names and pin numbers are stacked on the geometric figure of the pins. Therefore, in parsing, the text closest to the center point of the pin is the text corresponding to the pin.
S008, acquiring AND pin in Sum22 pin number texts g Pin numbered text Tag with minimum center point coordinate distance g Obtaining pin g Associated pin physical attributes { net g ,Tag g }。
As a preferred embodiment, tag g The acquisition step of (a) comprises:
s0081, respectively calculating coordinates and pin of Sum22 pin number texts g Obtaining Sum22 second distances from the distance between the coordinates of the central points, and knitting pins corresponding to the minimum value in the Sum22 second distancesThe number text is Tag g
All pins can be obtained to the associated physical attribute through the matching method of the pin physical attribute based on the gds file.
In summary, the embodiment of the invention also provides a method for matching the physical attributes of the pins based on the gds file, which is used for analyzing the gds file to obtain text data and establishing a first mapping and a second mapping with nested relation to the file data; inserting the central point row coordinates of the pins to be matched into the first mapping to obtain updated first mapping; moving the position of the cursor of the central point row coordinate in the updated first mapping to obtain TOL1 effective row coordinates, obtaining TOL2 effective column coordinates in the same way, and obtaining Sum2 effective texts according to the effective row and column coordinates; then dividing the effective text into a pin network name text and a pin number text according to the pin network name tag and the pin number type designated by the user, and further acquiring the physical attribute of the pin to be matched according to the minimum distance: the method solves the technical problem that the original design cannot be completely reproduced due to the fact that the gds file is imported into a currently known tool, only graphic information is available, and no element pin network name (net name) information and pin number (pin number) exist in the prior art, and achieves the purpose of matching pins with corresponding physical properties.
Based on the same inventive concept as the method embodiment provided in the third embodiment, the third embodiment of the present invention further provides a matching system based on the pin physical attribute of the gds file, where the system includes a processor and a non-transitory computer readable storage medium, where at least one instruction or at least one program is stored in the non-transitory computer readable storage medium, where the at least one instruction or the at least one program is loaded and executed by the processor to implement a matching method based on the pin physical attribute of the gds file, where a matching method based on the pin physical attribute of the gds file is already described in detail in the method embodiment of the third embodiment and is not repeated.
While certain specific embodiments of the invention have been described in detail by way of example, it will be appreciated by those skilled in the art that the above examples are for illustration only and are not intended to limit the scope of the invention. Those skilled in the art will also appreciate that many modifications may be made to the embodiments without departing from the scope and spirit of the invention. The scope of the invention is defined by the appended claims.

Claims (9)

1. A method for matching pin physical properties based on gds files, the method comprising:
s001, analyzing the gds file to obtain text data; obtaining U first mapping KV 1= { KV1 according to line coordinates of text data 1 ,KV1 2 ,…,KV1 u ,…KV1 U },KV1 u For the u-th row coordinate X u The value range of U is 1 to U; wherein KV1 u The bond of (a) is X u ,KV1 u Has a value of X u Second mapping kv2= { KV2 corresponding to W column coordinates included in the map 1 ,KV2 2 ,…,KV2 w ,…KV2 W },KV2 w Is X u W-th column coordinate Y of (3) w The corresponding second mapping, wherein the value range of W is 1 to W; wherein KV2 w The bond of (2) is Y w 、KV2 w Has a value of Y w Sum1 texts included;
s002, obtaining the g-th pin g Center point coordinates (X) g,0 ,Y g,0 ) Wherein X is g,0 Is pin g Center point column coordinates of Y g,0 Is pin g Is defined by the center point row coordinates; y is set to g,0 Inserting the first mapping KV1 into KV1 to obtain updated first mapping KV1';
s003, find Y in KV1 g,0 Obtaining Y g,0 Corresponding cursor Ykey g
S004, moving Ykey g Obtaining TOL1 effective row coordinates in the row error value at the position in KV1';
s005, acquiring TOL2 effective column coordinates in the column error value, and acquiring Sum2 effective texts according to TOL1 effective row coordinates and TOL2 effective column coordinates;
s006, dividing Sum2 effective texts into Sum21 pin network name texts and Sum22 pin number texts according to pin network name labels and pin number labels specified by a user, and meeting the conditions of Sum2=Sum21+Sum22;
s007, obtaining the Sum pin in the Sum21 pin network name text g Pin network name text net with minimum center point coordinate distance g
S008, acquiring AND pin in Sum22 pin number texts g Pin numbered text Tag with minimum center point coordinate distance g Obtaining pin g Associated pin physical attributes { net g ,Tag g }。
2. The method of claim 1, wherein S004 further comprises:
s0041 calculating Y based on the line error value Ec g,0 (min)=Y g,0 -Ec,Y g,0 (max)=Y g,0 +ec, obtaining the row coordinate range [ Y ] g,0 (min),Y g,0 (max)];
S042, ykey g The pointed position moves along a first direction in which the row coordinate increases and a second direction in which the row coordinate decreases in KV1', respectively, and Ykey is arranged after each movement along the first direction g Pointing key and Y in a first new position g,0 (max) comparing to obtain YS1 pieces less than or equal to Y g,0 (max) effective row coordinates; will be Ykey after each movement in the second direction g Key and Y of the second new position pointed to g,0 (min) comparing to obtain YS2 or more Y g,0 The effective row coordinates of (min); and tol1=ys1+ys2 is satisfied.
3. The method according to claim 1, wherein said S005 further comprises:
s0051, X g,0 Inserting the first mapping KV2 into KV2 to obtain updated first mapping KV2';
s0052, find X in KV2 g,0 Obtaining X g,0 Corresponding cursor Xkey g
S0053, according to the column error value Er,calculate X g,0 (min)=X g,0 -Er,X g,0 (max)=X g,0 +Er, obtaining the column coordinate Range [ X ] g,0 (min),X g,0 (max)];
S054 Xkey g The pointed position moves in a third direction in which the column coordinates increase and in a fourth direction in which the column coordinates decrease in KV2', respectively, will move in the third direction by Xkey after each movement g Pointing key and X of third new position g,0 (max) comparing to obtain XS1 or less X g,0 (max) valid column coordinates; xkey after each movement in the second direction g Pointing key and X of fourth new position g,0 (min) comparing to obtain XS2 or more X g,0 The valid column coordinates of (min); and tol2=xs1+xs2 is satisfied.
4. The method of claim 1, wherein the pin g Center point coordinates (X) g,0 ,Y g,0 ) The acquisition step of (a) comprises:
s0021 according to pin g Coordinates t of all R (g) vertices in (b) g Obtaining t g The minimum column coordinate X of (2) min Maximum column coordinate X max Minimum row coordinate Y min Maximum row coordinate Y max
S0022 according to X min And X max Obtaining t g,0 Center point column coordinate X of (2) g,0 ,X g,0 The method meets the following conditions: x is X g,0 =(X min +X max )/2;
S0023 according to Y min And Y max Obtaining t g,0 The center point row coordinate Y of (2) g,0 ,Y g,0 The method meets the following conditions: y is Y g,0 =(Y min +Y max )/2。
5. The method of claim 1, wherein S002 further comprises:
s0024 when all bonds in KV1 are bonded to Y g,0 When all are not equal, Y is g,0 After insertion into KV1, Y g,0 The value of (2) is null.
6. The method of claim 1, wherein S002 further comprises:
s0025 when there is a bond with Y in KV1 g,0 With equal keys, no new mapping is created.
7. The method of claim 1, wherein net g The acquisition step of (a) comprises:
s0071, respectively calculating coordinates and pins of Sum21 pin network name texts g Obtaining Sum21 first distances from the distance between the coordinates of the central points, wherein the text of the pin network name corresponding to the minimum value in the Sum21 first distances is net g
8. The method of claim 1, wherein Tag g The acquisition step of (a) comprises:
s0081, respectively calculating coordinates and pin of Sum22 pin number texts g Obtaining Sum22 second distances from the distance between the coordinates of the central points, wherein the text with the pin number corresponding to the minimum value in the Sum22 second distances is Tag g
9. A matching system based on pin physical properties of a gds file, the system comprising a processor and a non-transitory computer readable storage medium having stored therein at least one instruction or at least one program, wherein the at least one instruction or the at least one program is loaded and executed by the processor to implement the method of any one of claims 1-8.
CN202310184643.5A 2023-03-01 2023-03-01 gDS file-based pin physical attribute matching method and system Active CN116090392B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310184643.5A CN116090392B (en) 2023-03-01 2023-03-01 gDS file-based pin physical attribute matching method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310184643.5A CN116090392B (en) 2023-03-01 2023-03-01 gDS file-based pin physical attribute matching method and system

Publications (2)

Publication Number Publication Date
CN116090392A CN116090392A (en) 2023-05-09
CN116090392B true CN116090392B (en) 2023-12-26

Family

ID=86200827

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310184643.5A Active CN116090392B (en) 2023-03-01 2023-03-01 gDS file-based pin physical attribute matching method and system

Country Status (1)

Country Link
CN (1) CN116090392B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116822440B (en) * 2023-06-30 2024-03-22 上海合见工业软件集团有限公司 Pin batch distribution method and system
CN117634414B (en) * 2024-01-26 2024-03-29 上海合见工业软件集团有限公司 Fly line interconnection method between different components, electronic equipment and storage medium

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8627247B1 (en) * 2012-07-11 2014-01-07 International Business Machines Corporation Systems and methods for fixing pin mismatch in layout migration
CN103745050A (en) * 2013-12-27 2014-04-23 北京亚科鸿禹电子有限公司 Pin mapping method and system
CN108062424A (en) * 2016-11-09 2018-05-22 成都锐成芯微科技股份有限公司 Method based on Verilog model extraction IP stone design documents
CN109299503A (en) * 2018-08-14 2019-02-01 珠海市微半导体有限公司 A kind of generation method of the LEF file based on wiring obstruction
CN111950226A (en) * 2020-08-14 2020-11-17 Oppo广东移动通信有限公司 Chip back end design and layout design method, tool, chip and storage medium
CN112507649A (en) * 2020-12-23 2021-03-16 珠海市一微半导体有限公司 Method for mapping digital-to-analog pins of analog layout to digital layout
CN112579532A (en) * 2020-12-18 2021-03-30 德中(天津)技术发展股份有限公司 Automatic steel mesh open warehouse building method and system
CN113407459A (en) * 2021-07-12 2021-09-17 杭州捷配信息科技有限公司 Open-short circuit analysis and detection method and device for PCB design file and electronic equipment
CN115169276A (en) * 2022-07-22 2022-10-11 北京云枢创新软件技术有限公司 Pin area matching method based on stacking module

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7243328B2 (en) * 2003-05-07 2007-07-10 Cadence Design Systems, Inc. Method and apparatus for representing items in a design layout
US10509887B2 (en) * 2017-11-21 2019-12-17 Taiwan Semiconductor Manufacturing Co., Ltd. Must-join pin sign-off method

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8627247B1 (en) * 2012-07-11 2014-01-07 International Business Machines Corporation Systems and methods for fixing pin mismatch in layout migration
CN103745050A (en) * 2013-12-27 2014-04-23 北京亚科鸿禹电子有限公司 Pin mapping method and system
CN108062424A (en) * 2016-11-09 2018-05-22 成都锐成芯微科技股份有限公司 Method based on Verilog model extraction IP stone design documents
CN109299503A (en) * 2018-08-14 2019-02-01 珠海市微半导体有限公司 A kind of generation method of the LEF file based on wiring obstruction
CN111950226A (en) * 2020-08-14 2020-11-17 Oppo广东移动通信有限公司 Chip back end design and layout design method, tool, chip and storage medium
CN112579532A (en) * 2020-12-18 2021-03-30 德中(天津)技术发展股份有限公司 Automatic steel mesh open warehouse building method and system
CN112507649A (en) * 2020-12-23 2021-03-16 珠海市一微半导体有限公司 Method for mapping digital-to-analog pins of analog layout to digital layout
CN113407459A (en) * 2021-07-12 2021-09-17 杭州捷配信息科技有限公司 Open-short circuit analysis and detection method and device for PCB design file and electronic equipment
CN115169276A (en) * 2022-07-22 2022-10-11 北京云枢创新软件技术有限公司 Pin area matching method based on stacking module

Also Published As

Publication number Publication date
CN116090392A (en) 2023-05-09

Similar Documents

Publication Publication Date Title
CN116090392B (en) gDS file-based pin physical attribute matching method and system
US20210295114A1 (en) Method and apparatus for extracting structured data from image, and device
CN116151160B (en) Method and system for extracting pins in gds file
CN105930159A (en) Image-based interface code generation method and system
CN110032641A (en) Method and device that computer executes, that event extraction is carried out using neural network
CN111581345A (en) Document level event extraction method and device
US10628549B2 (en) Automation generation of test layouts for verifying a DRC deck
CN109885180A (en) Error correction method and device, computer-readable medium
CA2364886C (en) Pattern retrieving method, pattern retrieval apparatus, computer-readable storage medium storing pattern retrieval program, pattern retrieval system, and pattern retrieval program
WO2014174599A1 (en) Computing device, storage medium and data search method
Flasiński Parsing of edNLC-graph grammars for scene analysis
KR101116663B1 (en) Partitioning Method for High Dimensional Data
CN116090391B (en) Pin extraction method and system based on gds file
CN113239693B (en) Training method, device, equipment and storage medium of intention recognition model
WO2011074942A1 (en) System and method of converting data from a multiple table structure into an edoc format
CN113553268A (en) AI intelligent software testing method
CN115904394B (en) Neural network increment compiling method and device for many-core architecture
CN117541385A (en) Frequent financial transaction mining method and device based on association rule item
CN107943982B (en) K-means text clustering method and device with built-in constraint rule
US20210342689A1 (en) Computer-implemented method, and device for producing a knowledge graph
CN110147516A (en) The intelligent identification Method and relevant device of front-end code in Pages Design
CN112507108B (en) Knowledge extraction method, system and rule analysis engine based on json rule file
CN108304467A (en) For matched method between text
EP3827404B1 (en) Digital watermarking leveraging anomalous mesh elements
CN113836005A (en) Virtual user generation method and device, electronic equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant