CN111199133B - Automatic wiring and winding method - Google Patents

Automatic wiring and winding method Download PDF

Info

Publication number
CN111199133B
CN111199133B CN201911374023.8A CN201911374023A CN111199133B CN 111199133 B CN111199133 B CN 111199133B CN 201911374023 A CN201911374023 A CN 201911374023A CN 111199133 B CN111199133 B CN 111199133B
Authority
CN
China
Prior art keywords
variable
winding
design module
array
target design
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
CN201911374023.8A
Other languages
Chinese (zh)
Other versions
CN111199133A (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.)
Chengdu Analog Circuit Technology Inc
Original Assignee
Chengdu Analog Circuit Technology Inc
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 Chengdu Analog Circuit Technology Inc filed Critical Chengdu Analog Circuit Technology Inc
Priority to CN201911374023.8A priority Critical patent/CN111199133B/en
Publication of CN111199133A publication Critical patent/CN111199133A/en
Application granted granted Critical
Publication of CN111199133B publication Critical patent/CN111199133B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

The invention discloses an automatic wiring and winding method, and relates to the technical field of integrated circuits. The method comprises the following steps: acquiring a coordinate array of an initial winding blocking layer of a target design module; multiplying the coordinate array of the initial winding blocking layer by a preset scaling factor to obtain a scaled winding blocking layer coordinate array, and setting the array as a third variable; acquiring the coordinate arrays of the initial winding barrier layers of all pins in the target design module, performing logic operation based on the arrays to obtain the scaled winding barrier layer coordinate arrays of each pin, and setting the arrays as a fifth variable; performing logic operation on the fifth variable and the third variable to obtain a coordinate array of the winding barrier layer of the target design module and the pins of the target design module after scaling, and setting the array as a sixth variable; a layer with wound barrier information is generated based on the sixth variable. According to the technical scheme, for the design module with more pins, the workload of workers can be reduced, and the design precision can be improved.

Description

Automatic wiring and winding method
Technical Field
The invention relates to the technical field of integrated circuits, in particular to an automatic wiring and winding method.
Background
In the chip design process, physical positions are required to be allocated to units, macro modules and the like on a layout, so that the units, the macro modules and the like are not overlapped with each other, and the process is the layout. After placement, the exact locations of the cells and pins have been determined, as has the interconnections required. Given a set of standard cells and macro blocks, and the characteristic width, height, etc. of these components, a set of wires connecting these cells, macro blocks and pins is given as wiring. The wiring process is used for realizing the connection of each module and generating the geometric interconnection layout of all the connecting lines. The wiring rules, such as via pitch, via-to-metal line distance, etc., are followed in the wiring process. The area reserved for wiring is called a wiring area. Wiring must be performed within the wiring region, and wiring rules must be followed without causing rule violations of the wiring.
In the prior art, the chip design modules are typically laid out using tools in EDA (Electronics Design Automation, electronic design automation). However, when a part of a chip design module is laid out and routed, the constraint range of a wire-wound barrier layer for automatically routing the chip design module by using an EDA tool is insufficient, and in the physical verification stage, the space between an automatic wire-wound pattern and an adjacent design internal layout pattern is insufficient to generate a violation of DRC (Design Rule Checking, design rule check). In addition, for the design module with more pins, the manual supplementing winding blocking layer has the advantages of larger workload, low multiplexing efficiency and low accurate control.
Disclosure of Invention
The invention mainly aims to provide an automatic wiring and winding method, which aims to reduce the winding workload.
In order to achieve the above object, the present invention provides a method for automatically wiring and winding wires, comprising the steps of:
s1, acquiring a coordinate array of an initial winding blocking layer of a target design module, and setting the array as a first variable;
s2, presetting a scaling factor as a second variable, multiplying the first variable and the second variable to obtain a winding barrier layer coordinate array scaled by the target design module, and setting the array as a third variable;
s3, acquiring a coordinate array of an initial winding blocking layer of all pins in the target design module, and setting the array as a fourth variable;
s4, calculating based on the fourth variable to obtain a polygon coordinate array corresponding to each pin, multiplying the polygon coordinate array with the second variable to obtain a winding barrier layer coordinate array scaled by each pin, and setting the array as a fifth variable;
s5, carrying out logic operation on the fifth variable and the third variable to obtain a coordinate array of the winding barrier layer of the target design module and the pins of the target design module after scaling, and setting the array as a sixth variable;
s6, judging whether the sixth variable meets the design requirement or not:
if the design requirement is not met, returning to the step S2, and modifying the value of the second variable;
if the design requirement is met, generating a layer with winding barrier layer information based on the sixth variable;
and S7, displaying and storing a layer of the winding blocking layer information at the corresponding position of the target design module.
Preferably, before the step S1, the method further includes:
using a tool to automatically wire the target design module so as to obtain an initial wire winding blocking layer of the target design module and pins thereof; judging whether the initial winding blocking layer meets the design requirement or not: if the design requirement is met, step S7 is carried out; if the design requirement is not met, step S1 is performed.
Preferably, verification is performed by the tool to determine whether the wire-wound barrier meets design requirements.
Preferably, the step S1 further includes: and searching an address pointer based on the top layer attribute of the target design module according to the name of the target design module, and acquiring a coordinate array of an initial winding blocking layer of the target design module according to the address pointer.
Preferably, in step S4, calculating the polygon coordinate array corresponding to each pin based on the fourth variable further includes: and performing inverse operation on the fourth variable to obtain a polygon coordinate array corresponding to each pin.
Preferably, in the step S5, the logical operation is a nand operation.
According to the technical scheme, the initial winding blocking layer information of the target design module is obtained, and the initial winding blocking layer is scaled according to the preset scaling factor on the basis, so that new winding blocking layer information is obtained, and the shape and the constraint range of the scaling winding blocking layer can be flexibly realized; for the design module with more pins, the workload of workers can be reduced, and the design precision can be improved.
Drawings
Fig. 1 is a flow chart of the method for automatic wiring and winding of the present invention.
The achievement of the objects, functional features and advantages of the present invention will be further described with reference to the accompanying drawings, in conjunction with the embodiments.
Detailed Description
It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the invention.
The invention is further described below with reference to the accompanying drawings.
In the embodiment of the invention, the target design module is a layout design file of the chip design module, and is generally a file in LEF (Library Exchange File ) format. The tools used are typically back end design tools in EDA tools.
As shown in fig. 1, an embodiment of the present invention provides a method for automatically wiring and winding wires, which includes the following steps:
s0, using a tool to automatically wire the target design module so as to obtain an initial wire winding blocking layer of the target design module and pins thereof; judging whether the initial winding blocking layer meets the design requirement or not: if the design requirement is met, step S7 is carried out; if the design requirement is not met, step S1 is performed.
In particular, in EDA tools, the chip design module may be automatically wire-wound for subsequent design. When the constraint range of the winding blocking layer for automatically wiring the chip design module by using the EDA tool is insufficient, the initial winding blocking layer is judged to be not in accordance with the design requirement.
S1, acquiring a coordinate array of an initial winding blocking layer of a target design module, and setting the array as a first variable;
specifically, step S1 further includes: and searching an address pointer based on the top layer attribute of the target design module according to the name of the target design module, and acquiring a coordinate array of an initial winding blocking layer of the target design module according to the address pointer.
Specifically, the format of the array of coordinates of the initial winding barrier of the target design module is generally (x 1 ,y 1 ,x 2 ,y 2 ) In the form, the graphic size of the polygon corresponding to the target design module can be obtained according to the coordinate array.
S2, presetting a scaling factor as a second variable, multiplying the first variable and the second variable to obtain a winding barrier layer coordinate array scaled by the target design module, and setting the array as a third variable;
in a specific embodiment, the scaling factor is used to control the scaling of the size of the winding blocking layer of the target design module, and the scaling factor can be specifically set according to the specific design requirement of the target design module, so that the shape and the constraint range of the winding blocking layer can be flexibly scaled, whether the set scaling factor meets the design requirement can be further verified in the subsequent step, and if not, the scaling factor can be modified again to meet the design requirement.
S3, acquiring a coordinate array of an initial winding blocking layer of all pins in the target design module, and setting the array as a fourth variable;
in a specific embodiment, the initial winding blocking layer of the pin in the target design module is generally composed of a plurality of polygons, and the corresponding coordinate arrays have a plurality of groups.
S4, calculating based on the fourth variable to obtain a polygon coordinate array corresponding to each pin, multiplying the polygon coordinate array with the second variable to obtain a winding barrier layer coordinate array scaled by each pin, and setting the array as a fifth variable;
preferably, in step S4, calculating the polygon coordinate array corresponding to each pin based on the fourth variable further includes: and performing inverse operation on the fourth variable to obtain a polygon coordinate array corresponding to each pin.
S5, carrying out logic operation on the fifth variable and the third variable to obtain a coordinate array of the winding barrier layer of the target design module and the pins of the target design module after scaling, and setting the array as a sixth variable;
preferably, in the step S5, the logical operation is a nand operation.
S6, judging whether the sixth variable meets the design requirement or not:
if the design requirement is not met, returning to the step S2, and modifying the value of the second variable;
if the design requirement is met, generating a layer with winding barrier layer information based on the sixth variable;
and S7, displaying and storing a layer of the winding blocking layer information at the corresponding position of the target design module.
Preferably, verification is performed by the tool to determine whether the wire-wound barrier meets design requirements.
According to the technical scheme, the initial winding blocking layer information of the target design module is obtained, and on the basis, the initial winding blocking layer is scaled according to the preset scaling factor to obtain new winding blocking layer information, so that the shape and the constraint range of the winding blocking layer can be flexibly scaled; for the design module with more pins, the workload of workers can be reduced, and the design precision can be improved.
The target design module in the embodiment of the invention is based on a general design exchange file, and the technical scheme of the invention is not limited by the process in the same back-end design tool environment; meanwhile, the technical scheme of the invention has good portability for different EDA tools designed at the back end, and the same function can be realized by correspondingly replacing corresponding tool command languages.
Aiming at the design flow staged requirement, the technical scheme of the invention can be used as an independent subprocess to be embedded into any stage of the design flow of the target design module, and can be repeatedly acted on the target design module until the design requirement is met.
It should be understood that the foregoing is only a preferred embodiment of the present invention, and is not intended to limit the scope of the present invention, and all equivalent structures or equivalent processes using the descriptions of the present invention and the accompanying drawings, or direct or indirect application in other relevant technical fields, are included in the scope of the present invention.

Claims (4)

1. A method of automatic wiring winding, comprising the steps of:
s1, acquiring a coordinate array of an initial winding blocking layer of a target design module, and setting the array as a first variable;
s2, presetting a scaling factor as a second variable, multiplying the first variable and the second variable to obtain a winding barrier layer coordinate array scaled by the target design module, and setting the array as a third variable;
s3, acquiring a coordinate array of an initial winding blocking layer of all pins in the target design module, and setting the array as a fourth variable;
s4, performing inverse operation based on the fourth variable to obtain a polygon coordinate array corresponding to each pin, performing multiplication operation with the second variable to obtain a winding barrier layer coordinate array scaled by each pin, and setting the array as a fifth variable;
s5, performing NAND operation on the fifth variable and the third variable to obtain a coordinate array of the winding barrier layer of the target design module and the pins of the target design module after scaling, and setting the array as a sixth variable;
s6, judging whether the sixth variable meets the design requirement or not, and judging that the sixth variable does not meet the design requirement when the constraint range of the winding barrier layer for automatic wiring by the chip design module is insufficient:
if the design requirement is not met, returning to the step S2, and modifying the value of the second variable;
if the design requirement is met, generating a layer with winding barrier layer information based on the sixth variable;
and S7, displaying and storing a layer of the winding blocking layer information at the corresponding position of the target design module.
2. The method of automatic wire-wrapping according to claim 1, characterized by further comprising, before said step S1:
using a tool to automatically wire the target design module so as to obtain an initial wire winding blocking layer of the target design module and pins thereof; judging whether the initial winding blocking layer meets the design requirement or not: if the design requirement is met, step S7 is carried out; if the design requirement is not met, step S1 is performed.
3. The method of automatic wire-wrapping according to claim 2, wherein verification is performed by the tool to determine if the wire-wrapping barrier meets design requirements.
4. The method of automatic wire-wrapping according to claim 1, wherein said step S1 further comprises: and searching an address pointer based on the top layer attribute of the target design module according to the name of the target design module, and acquiring a coordinate array of an initial winding blocking layer of the target design module according to the address pointer.
CN201911374023.8A 2019-12-27 2019-12-27 Automatic wiring and winding method Active CN111199133B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911374023.8A CN111199133B (en) 2019-12-27 2019-12-27 Automatic wiring and winding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911374023.8A CN111199133B (en) 2019-12-27 2019-12-27 Automatic wiring and winding method

Publications (2)

Publication Number Publication Date
CN111199133A CN111199133A (en) 2020-05-26
CN111199133B true CN111199133B (en) 2023-09-15

Family

ID=70746687

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911374023.8A Active CN111199133B (en) 2019-12-27 2019-12-27 Automatic wiring and winding method

Country Status (1)

Country Link
CN (1) CN111199133B (en)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001175880A (en) * 1999-12-17 2001-06-29 Mitsubishi Electric Corp Floating-point adder
JP2001230322A (en) * 2000-02-14 2001-08-24 Matsushita Electric Ind Co Ltd Semiconductor integrated-circuit device and semiconductor integrated-circuit wiring apparatus
CN101782931A (en) * 2009-01-20 2010-07-21 英业达股份有限公司 Processing method and system of constraint areas of circuit board wiring
CN102741848A (en) * 2010-01-29 2012-10-17 辛奥普希斯股份有限公司 Improving pre-route and post-route net correlation with defined patterns
CN103136385A (en) * 2011-11-23 2013-06-05 上海华虹Nec电子有限公司 Automatic wiring method of integrated circuit layout after lessening experiment
CN103970959A (en) * 2014-05-21 2014-08-06 上海斐讯数据通信技术有限公司 Circuit board wiring method and system
CN104424367A (en) * 2013-08-22 2015-03-18 京微雅格(北京)科技有限公司 Technological mapping method and integrated circuit for optimizing register control signal
CN106815829A (en) * 2015-12-02 2017-06-09 深圳市祈飞科技有限公司 A kind of positioning and optimizing method in electronic component pin registration pcb board hole
CN107464240A (en) * 2017-08-11 2017-12-12 哈尔滨工业大学 A kind of location algorithm with rectangular pins chip based on template matches
CN108062424A (en) * 2016-11-09 2018-05-22 成都锐成芯微科技股份有限公司 Method based on Verilog model extraction IP stone design documents
CN108108501A (en) * 2016-11-25 2018-06-01 成都锐成芯微科技股份有限公司 The delay control method of IC chip
CN110223376A (en) * 2019-05-23 2019-09-10 天津大学 A kind of three dimensional particles method for reconstructing based on single width packed particle images of materials

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7401312B2 (en) * 2003-12-11 2008-07-15 International Business Machines Corporation Automatic method for routing and designing an LSI
US7752588B2 (en) * 2005-06-29 2010-07-06 Subhasis Bose Timing driven force directed placement flow
US8332793B2 (en) * 2006-05-18 2012-12-11 Otrsotech, Llc Methods and systems for placement and routing

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001175880A (en) * 1999-12-17 2001-06-29 Mitsubishi Electric Corp Floating-point adder
JP2001230322A (en) * 2000-02-14 2001-08-24 Matsushita Electric Ind Co Ltd Semiconductor integrated-circuit device and semiconductor integrated-circuit wiring apparatus
CN101782931A (en) * 2009-01-20 2010-07-21 英业达股份有限公司 Processing method and system of constraint areas of circuit board wiring
CN102741848A (en) * 2010-01-29 2012-10-17 辛奥普希斯股份有限公司 Improving pre-route and post-route net correlation with defined patterns
CN103136385A (en) * 2011-11-23 2013-06-05 上海华虹Nec电子有限公司 Automatic wiring method of integrated circuit layout after lessening experiment
CN104424367A (en) * 2013-08-22 2015-03-18 京微雅格(北京)科技有限公司 Technological mapping method and integrated circuit for optimizing register control signal
CN103970959A (en) * 2014-05-21 2014-08-06 上海斐讯数据通信技术有限公司 Circuit board wiring method and system
CN106815829A (en) * 2015-12-02 2017-06-09 深圳市祈飞科技有限公司 A kind of positioning and optimizing method in electronic component pin registration pcb board hole
CN108062424A (en) * 2016-11-09 2018-05-22 成都锐成芯微科技股份有限公司 Method based on Verilog model extraction IP stone design documents
CN108108501A (en) * 2016-11-25 2018-06-01 成都锐成芯微科技股份有限公司 The delay control method of IC chip
CN107464240A (en) * 2017-08-11 2017-12-12 哈尔滨工业大学 A kind of location algorithm with rectangular pins chip based on template matches
CN110223376A (en) * 2019-05-23 2019-09-10 天津大学 A kind of three dimensional particles method for reconstructing based on single width packed particle images of materials

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FPGA/CPLD结构分析;黄志军;《微电子学》;全文 *

Also Published As

Publication number Publication date
CN111199133A (en) 2020-05-26

Similar Documents

Publication Publication Date Title
US10418354B2 (en) Integrated circuit and computer-implemented method of manufacturing the same
US7007258B2 (en) Method, apparatus, and computer program product for generation of a via array within a fill area of a design layout
US8239803B2 (en) Layout method and layout apparatus for semiconductor integrated circuit
KR100281977B1 (en) Integrated circuit design method, database device for integrated circuit design and integrated circuit design support device
US8250506B2 (en) Bondwire design
US20080127020A1 (en) System and method for automatic elimination of voltage drop, also known as IR drop, violations of a mask layout block, maintaining the process design rules correctness
JP2003502769A (en) How to modify an integrated circuit
US8650518B2 (en) Method and apparatus for rule-based automatic layout parasitic extraction in a multi-technology environment
CN114556352A (en) Method and system for performing automatic wiring
US9256707B2 (en) Trace routing according to freeform sketches
JP2002110797A (en) Method for designing clock wiring
JP2010198466A (en) Wiring design method for wiring board
US9104830B1 (en) Methods, systems, and articles of manufacture for assigning track patterns to regions of an electronic design
CN111199133B (en) Automatic wiring and winding method
US6820048B1 (en) 4 point derating scheme for propagation delay and setup/hold time computation
US10643020B1 (en) System and method to estimate a number of layers needed for routing a multi-die package
US20050193354A1 (en) Method of extraction of wire capacitances in LSI device having diagonal wires and extraction program for same
US20050257183A1 (en) Method for generating a command file of a group of drc rules and/or a command file of a group of lvs/lpe rules
JP6456842B2 (en) Integrated shaping with power network synthesis (PNS) for power grid (PG) alignment
WO2009002301A1 (en) System and method for automatic elimination of voltage drop
JP6316311B2 (en) Pattern-based power ground (PG) routing and via generation
US5481474A (en) Double-sided placement of components on printed circuit board
CN101604342B (en) Method and device for making metal oxide semiconductor (MOS) transistor on integrated circuit simulating platform
US10409948B1 (en) Topology preserving schematic transformations for RF net editing
JP2000057175A (en) Automatic wiring system of semi-conductor integrated circuit device

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