CN108520128A - Method of designing integrated circuit and computer readable storage medium - Google Patents

Method of designing integrated circuit and computer readable storage medium Download PDF

Info

Publication number
CN108520128A
CN108520128A CN201810270103.8A CN201810270103A CN108520128A CN 108520128 A CN108520128 A CN 108520128A CN 201810270103 A CN201810270103 A CN 201810270103A CN 108520128 A CN108520128 A CN 108520128A
Authority
CN
China
Prior art keywords
standard block
port
isolation
constraint
integrated circuit
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.)
Granted
Application number
CN201810270103.8A
Other languages
Chinese (zh)
Other versions
CN108520128B (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.)
Chipone Technology Beijing Co Ltd
Original Assignee
Chipone Technology Beijing 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 Chipone Technology Beijing Co Ltd filed Critical Chipone Technology Beijing Co Ltd
Priority to CN201810270103.8A priority Critical patent/CN108520128B/en
Publication of CN108520128A publication Critical patent/CN108520128A/en
Application granted granted Critical
Publication of CN108520128B publication Critical patent/CN108520128B/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
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Architecture (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

A kind of method of designing integrated circuit and computer readable storage medium, the method includes:Calculate the port density that each standard block in region is specified in integrated circuit;The standard block of selection port density within a predetermined range;Isolation constraint is added for selected standard block.It can solve the problems, such as that constraint is isolated due to can not accurately find to need to add the standard block of isolation constraint and cause unreasonably to add.

Description

Method of designing integrated circuit and computer readable storage medium
Technical field
This disclosure relates to IC design field, and in particular to method of designing integrated circuit and computer-readable storage medium Matter.
Background technology
In Integrated circuit digital rear end design field, coiling resource (Routing Resource) deficiency can cause integrated electricity It causes circuit short circuit occur the phenomenon that either congestion (Congestion) occurs in large area or is unsatisfactory for design rule in portion of road bureau (DRC) the problem of.Coiling inadequate resource is made because coiling number of channels cannot be satisfied the coiling of excessive amounts of metal wire The metal wire that coiling channel must be had more is seized positioned at around the metal wire of line passage there is the phenomenon that short circuit.The purpose of coiling be by Logically relationship connects for the port (pin) of standard block (stdcell), if the port-dense in certain area, then The metal wire for participating in connection logical relation can be very much, in the case of wire winding layer (metal layer) limited amount, are susceptible to Congestion (congestion) problem.
In the case where the coiling number of plies does not change, can be gathered around by reducing port density (pin density) to reduce Plug.In general, reducing port density by increasing the spacing between areas of congestion internal standard unit.
The method for increasing adjacent modular cell spacing in areas of congestion at present is selection specific logical unit, such as and-or inverter (AOI) or with the compound logics unit such as non-(OAI), be added isolation constraint (keepout margin).AOI, OAI etc. are multiple Logical unit is that typical area is small, the standard block more than port number, adds isolation constraint to this kind of unit, pulls open these Spacing between unit contributes to the purpose for alleviating congestion.But there are many problems for this method.On the one hand, in addition to AOI, Except the recombiner units such as OAI, however not excluded that logic unit small, more than port number that there are other areas, such as four input nand gates (ND4D), four input nor gates (NR4D) etc..On the other hand, the recombiner units such as AOI, OAI are added with the side of isolation constraint Method, the isolation that same size is typically uniformly added to various sizes of logic unit constrain.This way is improperly worked as, together The logic unit of sample title, although port number is the same, unit size is bigger, and area also can be bigger, then coiling provides Source is more rich, if adding the isolation of same size to constrain them, the isolation constraint of addition can be caused redundancy occur, in design face In the case of product is limited, or even the case where unit can be caused to overflow.
To sum up, if for needing to add the standard block that constraint is isolated, but constrained without addition isolation, just up to not To the effect for solving congestion;If for the unit of isolation constraint need not be added, it is but added to isolation constraint, in design area It will cause unit spillings in the case of anxiety, to stop the progress of design.Even if can correctly find needs add every Standard block from constraint will also result in the above problem if the size addition of isolation constraint is improper.
Invention content
In view of this, present disclose provides a kind of method of designing integrated circuit and computer readable storage medium, can solve The problem of certainly causing unreasonably to add isolation constraint due to can not accurately find the standard block for needing addition isolation to constrain.
According to the disclosure in a first aspect, provide a kind of method of designing integrated circuit, for standard block addition every From constraint, the method for designing integrated circuit includes:It calculates and specifies the port of each standard block in region close in integrated circuit Degree;The standard block of selection port density within a predetermined range;Isolation constraint is added for selected standard block.
Preferably, the port density for calculating each standard block in specified region in integrated circuit includes:According to institute It states the hull beam of standard block and monomer height calculates monomer surface product;According to the area of the standard block and the monomer surface Product calculates the monomer number in the standard block;By will be in the port number of the standard block divided by the standard block Monomer number obtain the port density of the standard block.
Preferably, the port density for calculating each standard block in specified region in integrated circuit includes:Passing through will The area of the port number of the standard block divided by the standard block obtains the port density of the standard block.
Preferably, described to further include after the port density for calculating each standard block:According to each standard block Dredge degree in the port that port density calculates the standard block;
Preferably, the standard block of the selection port density within a predetermined range includes:Selection port is dredged degree and is less than in advance If the standard block of threshold value.
Preferably, described to include for the addition isolation constraint of selected standard block:For each selected standard Unit calculates according to the height and width of the area of the standard block, port number, port density and monomer and is directed to the mark The number of quasi- unit isolation constraint to be added;In the opposite sides addition isolation constraint of the standard block.
Preferably, the height according to the area of the standard block, port number, the threshold value of port density and monomer And width, the number calculated for standard block isolation constraint to be added include:It is calculated according to following equation and is directed to the mark The number of quasi- unit isolation constraint to be added:
Wherein NkmIndicate the number of isolation constraint to be added, NpIndicate standard block Port number, δthIndicate that the threshold value of degree, S are dredged in the port of standard blockcIndicate the area of standard block, WuIndicate hull beam, Hu Indicate monomer height.
Preferably, the method for the isolation constraint of addition in integrated circuits further includes:In calculated isolation constraint In the case that number is not integer, calculated isolation constraint is converted into integer by way of rounding up.
Preferably, the opposite sides addition isolation in the standard block, which constrains, includes:It calculates in the standard block The port number of line both sides;According to the port number of the center line both sides of the standard block, in the both sides of the standard block point Constraint Tian Jia not be isolated.
Preferably, the monomer number of the center line both sides for calculating the standard block includes:According to the position of the standard block Coordinate, area and monomer height are set to calculate the midline position of the standard block;According to the midline position of the standard block and Each port position of the standard block, to calculate the port number of the standard block center line both sides
Preferably, the port number of the center line both sides according to the standard block, in the both sides of the standard block Addition isolation, which constrains, respectively includes:Calculate the absolute difference of the port number of the center line both sides of the standard block;If be directed to The standard block it is to be added isolation constraint number be more than the absolute difference, then by the absolute difference number every From constraint addition larger side of port number in the center line both sides of the standard block, uniformly addition exists for remaining isolation constraint The center line both sides of the standard block;If being less than or equal to the difference for the number of standard block isolation constraint to be added Constraint addition larger side of port number in the center line both sides of the standard block then will be all isolated in absolute value.
According to another aspect of the present disclosure, a kind of computer readable storage medium is provided, for storing instruction, the finger Order makes processor execute process as described above when being executed by processor.
Description of the drawings
In order to illustrate more clearly of the technical solution of the embodiment of the present disclosure, simple be situated between will be made to the attached drawing of embodiment below It continues, it should be apparent that, the attached drawing in description below only relates to some embodiments of the present disclosure, rather than the limitation to the disclosure.
Fig. 1 is shown is isolated the method constrained according to being added in integrated circuits to standard block for the embodiment of the present disclosure Schematic flow diagram.
Fig. 2A is shown according to the embodiment of the present disclosure according to module level come the schematic diagram of desired target area.
Fig. 2 B are shown according to the embodiment of the present disclosure according to the coordinate in integrated circuit come the signal of desired target area Figure.
Fig. 3 is shown according to the IC design Plays unit of the embodiment of the present disclosure and the relationship of monomer.
Dredge the schematic diagram that angle value changes in standard block port before and after Fig. 4 shows addition isolation constraint.
Fig. 5 A show the addition result using traditional isolation constraint addition manner.
Fig. 5 B show the addition knot carried out to isolation constraint number according to the embodiment of the present disclosure after round Fruit.
Fig. 6 shows showing for the method for the calculating standard block inside left and right sides port number according to the embodiment of the present disclosure Meaning flow chart.
Fig. 7 is to be illustrated in calculating standard block according to the ... of the embodiment of the present invention there are three the standard block of port to have The schematic diagram of the method for portion's the right and left port number.
Fig. 8, which is shown, to be added according to the port number according to standard block both sides of the embodiment of the present disclosure in standard block both sides Add the schematic flow diagram of the method for isolation constraint.
Fig. 9 is to be illustrated according to the embodiment of the present disclosure according to standard block two with the standard block with 7 ports The port number of side adds the schematic diagram of isolation constraint in standard block both sides.
Specific implementation mode
To keep the purpose, technical scheme and advantage of the embodiment of the present disclosure clearer, below in conjunction with the embodiment of the present disclosure Attached drawing, clear, complete description is carried out to the technical solution of the embodiment of the present disclosure.Obvious described embodiment is the disclosure A part of the embodiment, instead of all the embodiments.Based on described embodiment of the disclosure, ordinary skill people The every other embodiment that member is obtained under the premise of without creative work belongs to the range of disclosure protection.
Present disclose provides a kind of methods and computer readable storage medium of the isolation constraint of addition in integrated circuits, lead to The port density for calculating each standard block is crossed, can pointedly add isolation about according to the port density of standard block Beam causes unreasonably to add isolation about to solve due to can not accurately find the standard block for needing addition isolation to constrain The problem of beam.
Fig. 1 shows the exemplary flow of the method for the isolation constraint of addition in integrated circuits according to the embodiment of the present disclosure Figure.
In step S101, one or more target areas are specified in integrated circuits.For example, can specify as needed Arbitrary region in integrated circuit generally selects the region for being easy to happen congestion problems.The specific mode of target area can root It is selected according to needing.
As an example, as shown in Figure 2 A, can be selected according to the module level in integrated circuit, such as can specify whole A core (core) A1 can also specify some or certain module A2 as target area as target area.This mode makes It obtains to targetedly select and is easy to happen the module of congestion problems to execute subsequent step.Typically, it is possible to specify internal Logical operation is complicated, there are the modules of the big compound logic unit of many port densities.
As another example, as shown in Figure 2 B, desired target area can be carried out according to coordinate, such as rectangle region can be specified Domain B1 or the region B2 of corner shape etc. exist around the excessive region of line density, and the shape in region can also be set as needed Determine, such as, but not limited to rectangle, polygon etc., such as can also be the polygon that boundary is moved towards anyhow.This mode makes The target area of intended shape, size can be neatly specified as needed.In the borderline region of design, if there is long and narrow Borderline region or turning borderline region, be susceptible to around line density problems of too inside both boundary shapes, can be with Consider that specified corresponding rectangle is placed on elongated zones or the polygon of specified turning shape is placed on corner region.
Certainly, embodiment of the disclosure is without being limited thereto, and the band of position that can be occurred in practice according to congestion is had The Scheme Choice of body.In addition, plurality of target region specific mode can be used in mixed way as needed, to what is occurred according to congestion Specific region, is reasonably selected.One target area of method choice shown in Fig. 2A can be used for example, and use Fig. 2 B Shown in another target area of method choice, the target area that various ways select is used as target area together.
The specified of target area is in order to subsequently to the standard block addition isolation constraint in target area.Specified target area Design section area can be taken into account, be avoided because of the feelings that addition isolation constraint is too big and standard block is caused to overflow when domain Condition.If standard block utilization rate is less than preset level, it is possible to specify entire core is as target area;If standard block is sharp It is higher than preset level with rate, it is possible to specify regional area is as target area.
In step S102, the port density of each standard block in target area is calculated.
As an example, the port density of standard block can be calculated by following formula:
Wherein σpIndicate the port density of standard block, NpIndicate the port number of standard block, ScIndicate standard block Area.The port number of standard block and the area of standard block can be obtained by tool command.
As another example, the port density of standard block is calculated also according to following equation:
Wherein σpIndicate the port density of standard block, NpIndicate the port number of standard block, ScIndicate standard block Area, WuIndicate hull beam, HuIndicate monomer height.
Illustrate the principle of above-mentioned equation (2) below with reference to Fig. 3.
Fig. 3 shows the relationship of IC design Plays unit and monomer.As shown in figure 3, standard block is being put In the process, the up-and-down boundary of standard block is overlapped with the ruling of row (row), right boundary and the monomer (unit) of standard block Ruling overlaps.Monomer is the minimum area unit of row the inside, and the boundary of standard block is overlapped with the ruling of row and monomer, therefore is marked The area of quasi- unit can be divided with monomer.In the example of fig. 3, a standard block occupies the area of four monomers.
In view of the port number of standard block is less than or equal to the amount of monomer in standard block, the knot that the two is divided by Fruit is in the range of 0~1, and embodiment of the disclosure is developed on the basis of above-mentioned equation (1), uses standard block Interior amount of monomer carrys out the area of signature criteria unit, and the port density being calculated in this way is the result is that in 0~1 range. Therefore, equation (1) develops into:Standard block port density=standard block port number/standard block monomer number.And pass through Above-mentioned analysis is it is found that standard block monomer number=standard cell area/standard block monomer area.The area of standard block can To be obtained by tool command, and monomer area=hull beam × monomer height, wherein hull beam and monomer height can be with It is crawled out from technological document (technology file) by ordering.By above-mentioned derivation, equation (2) is obtained, thus may be used To calculate the port density of standard block.
In step S103, degree is dredged in the port for calculating each standard block.Embodiment of the disclosure proposes standard block port The concept of degree is dredged, standard block port dredges degree and inverse correlation is presented with standard block port density, for example, it can be set to:Standard block Dredge degree=1- standard block port densities in port.Degree is dredged in standard block port can effectively reflect the journey for needing addition to be isolated about Degree.The isolation constraint of standard block addition is more, and the port of standard block, which dredges degree, can also become bigger, and vice versa.Standard list Positive correlation is presented with the size that constraint is isolated in addition in the variation that angle value is dredged in first port.
This step is optional, in some embodiments, it is also possible to directly be executed according to the port density of standard block The processing and calculating of subsequent step.
In step S104, selection needs to add the standard block of barrier constraint, and degree can be specifically dredged with selection port pre- Determine the standard block in range.Front has known that degree is dredged between 0~1 in standard block port, therefore we can be threshold value Any one value being set between 0~1.Degree is dredged less than the threshold value in every port in target area, all can be screened out.
Fig. 4 shows that the signal of degree is dredged in the standard block port before addition isolation constraint and after addition isolation constraint Figure.In the example of fig. 4, given threshold 0.3, port dredge standard block of the degree less than or equal to 0.3 and can be screened out.It is right The standard block addition isolation constraint filtered out, these standard blocks after addition constraint dredge degree and have reached threshold level.It is logical Often, the threshold value of setting is bigger, and it is more to screen standard block quantity;The smaller standard block of degree is dredged in port, need addition every It is more from constraining.The threshold value that degree is dredged in port can be set according to the size reasonable of target area, avoid because threshold value is excessive and Cause standard block to overflow, is interrupted so as to cause design cycle.
So far the screening of standard block is completed.In screening process, as an example, can in desired target area, By order the standard block in target area is acquired, then with order find acquisition standard block quantity.It is counting It calculates port to dredge when spending, can be traversed according to the number serial number of standard block, to each standard block of acquisition, be carried out respectively The calculating of degree is dredged in standard block port, to form the set that degree is dredged in standard block port.It needs to add isolation constraint in screening Standard block when, successively take out set the inside each standard block dredge degree, be compared with the threshold value of setting, if small In or equal to setting threshold value, then according to degree and position correspondence of the standard block in set is dredged, final determine needs The standard block of addition isolation constraint.
In step S105, for selected each standard block, the number for needing isolation constraint to be added is calculated.In this reality It applies in example, the number for needing isolation constraint to be added can be calculated by following equation:
Wherein NkmIndicate the number of isolation constraint to be added, NpIndicate the port number of standard block, δthExpression standard Dredge the threshold value of degree, S in the port of unitcIndicate the area of standard block, WuIndicate hull beam, HuIndicate monomer height.At some In embodiment, δthValue can be manually set.
The basic principle of equation (3) is specifically described below.
The purpose of addition isolation constraint is to make the thin degree in the port of the standard block filtered out reach to set in the embodiment of the present disclosure Fixed threshold value needs its thin degree in port after addition isolation constraint to meet such as the following then for the standard block filtered out Formula:
Wherein NkmIndicate the number of isolation constraint to be added, NpIndicate the port number of standard block, δthExpression standard Dredge the threshold value of degree, N in the port of unituIndicate the monomer number in standard block.
And by above-mentioned analysis it is found that the monomer number in standard block is equal to the area divided by monomer surface of standard block Product, that is,
Equation (5) is substituted into equation (4) and can be obtained equation (3).
In step S106, rounding is carried out to calculated isolation constraint number.Due to port dredge degree threshold value be 0~1 it Between any number so that calculated in step S105 isolation constraint number be not necessarily integer.In the present embodiment, may be used To carry out round to isolation constraint number so that numerical result is integer number of monomers, and actual number is constrained with being isolated Value is more nearly.
Fig. 5 A and Fig. 5 B are respectively illustrated using the addition result of traditional isolation constraint addition manner and according to the disclosure Embodiment carries out isolation constraint number the addition result after round.
Traditional approach directly adds isolation constraint number with tool, can be added automatically according to monomer principle.Specifically, When adding isolation constraint number to standard block using integrated circuit design build device (IC Compiler) tool, for being isolated about Fractional part in beam number can be added as integer 1 and.As shown in Figure 5A, n is integer, when the isolation constraint calculated Number NkmThe isolation constraint number of=n, tool addition are also n;As the isolation constraint number n calculated<Nkm<When n+1, The isolation constraint number of tool addition becomes n+1.
The isolation constraint number that embodiment of the disclosure calculates step S105 gained carries out round, then sharp Integer isolation constraint is added with tool.In such a case, it is possible to it is as a reference point with half of amount of monomer, it is less than half Even if 0 amount of monomer of amount of monomer;More than half amount of monomer, even if 1 amount of monomer.As shown in Figure 5 B, when calculating The isolation constraint number n come<=Nkm<When n+0.5, the isolation constraint number of addition is n;When the isolation constraint calculated Number n+0.5<=Nkm<When n+1, the isolation constraint number of addition is n+1.Rounding is carried out by rounding up so that is finally added The isolation constraint number added constrains number closer to the isolation calculated so that the isolation constraint of addition is more reasonable.
Practical to be added so that binding occurrence is isolated when addition isolation constraint, the calculating of isolation constraint numerical value is public Formula is:Isolation constraint numerical value=isolation constrains number × hull beam.
In step S107 isolation is added according to the result of calculation of step S106 about for selected each standard block Beam.
The position of isolation constraint, which is put, is divided into upper and lower, left and right four direction.Upper and lower both direction is primarily directed to fixation Standard block firmly is useful, and usually only a small amount of redundancy unit (spare cell) is fixed, other standard blocks All it is transportable, if standard block is movable, i.e., is not fixed (fixed), then upper and lower both direction addition Isolation constraint be do not have it is effective.Left and right both direction is suitable for all standard blocks, to standard block in the present embodiment Left and right sides addition isolation constraint.
The effect of isolation constraint is to increase the distance interval of standard block.The isolation constraint of standard block addition, is equivalent to The increased stealthy area of standard block, constraint portions are isolated in the stealthy area of adjacent modular unit, and do not allow to be overlapped (overlap), isolation can be used about using layout micro-adjustment order (legalize_placement-incremental) Beam struts the spacing between unit.
Front we calculated each standard block should add in region isolation constraint number.Addition every It is for the spacing between adding unit from constraint, most important purpose is to reduce coiling congestion.But from a standard From the point of view of inside unit, distribution of the standard block port inside standard block is also that there are densitys.Due on a standard block left side Right both sides addition isolation constraint, and the purpose for adding isolation constraint is to dilute the density of port.Therefore calculating standard list is needed Member is internally located at the port number of the left and right sides.
In step S1071, the port number of the left and right sides inside standard block is calculated.Standard block on the basis of center line, Calculate the port number on the standard block center line left side and the right.Firstly the need of center line is calculated in the numerical value of x-axis, end is then obtained again Numerical value mouthful in x-axis, then the numerical value by port in x-axis be compared with numerical value of the center line in x-axis.
Fig. 6 shows the schematic flow diagram for calculating the method for the right and left port number inside standard block.
In step S201, the position of standard block, the area of standard block, the height of standard block, end are obtained with order Mouth name set.In the present embodiment, the position of standard block is by the lower left corner coordinate representation of standard block, the height of standard block Degree is indicated by monomer height.
In step S202, the x-axis coordinate in the standard block lower left corner is obtained according to the position of standard block, according to standard block Area and standard block height calculate standard block width.
In step S203, according to the calculated standard block lower left corner x-axis coordinates of step S202 and standard block width, meter Calculate the x-axis coordinate of standard block center line.
In step S204, the x-axis coordinate of a port in port name set is obtained.
It, will be in the x-axis coordinate of the ports obtained step S204 and the calculated standard blocks of step S203 in step S205 The x-axis coordinate of line compares, if the x-axis coordinate of port is more than the x-axis coordinate of center line, S207 is thened follow the steps, if port X-axis coordinate be less than center line x-axis coordinate, then follow the steps S206.
In step S206, port number on the left of standard block is added 1.
In step S207, port number on the right side of standard block is added 1.
Left and right side port number initial value is 0, if the x-axis coordinate of port is less than the x-axis coordinate of center line, illustrates this A port is internally located at left side in standard block, and left side port number adds 1, successively each port of searching loop, counts left-hand end Mouth number;Port number statistics is also as a same reason on the right side of standard block.
In step S208, judge whether to have traversed whole ports in port name set, if it is, carrying out to step S1072 carries out isolation constraint addition, the next port return to step S204 being otherwise directed in port name set.
Fig. 7 is to be illustrated in calculating standard block according to the ... of the embodiment of the present invention there are three the standard block of port to have The schematic diagram of the method for portion's the right and left port number.
As shown in fig. 7, the x-axis coordinate of standard block center line can be calculated by following equation:
Wherein mid indicates that the x-axis coordinate of center line, cx indicate the x-axis coordinate in the lower left corner of standard block.
In the example in figure 7, the x-axis coordinate of three ports of standard block is respectively p1x, p2x, p3x.Can respectively by P1x, p2x, p3x and mid are compared.It can be seen from the figure that p1x and p2x is less than mid, p3x is more than mid, by comparing system After meter, it can know that port number is 2 on the left of standard block, right side port number is 1.
In step S1072, isolation constraint is added in standard block both sides according to the port number of standard block both sides.
The present invention is distributed the guidance as isolation constraint distribution using unit internal port number.In the present embodiment, according to Following equation calculates the right and left port number absolute difference
=| left side port number-the right port number |
The value of addition isolation constraint number is dredged angle value by setting to be influenced, and port number absolute difference is likely larger than, it is also possible to Less than port number absolute difference.In addition isolation constraint, using port number difference as threshold value, without departing from this threshold value When, then constraint is isolated with the addition on one side more than port number;When the isolation constraint number of addition, it has been more than this threshold value, has then started In all addition isolation constraints respectively of standard block both sides.
Fig. 8 shows the port number according to standard block center line both sides according to the embodiment of the present disclosure in standard block two The schematic flow diagram of the method for side addition isolation constraint.
In step S301, by port number N on the left of the calculated standard blocks of step S1071p_leftWith right side port number Np_rightIt compares, and constraint number is isolated as threshold value in the absolute difference for obtaining the two.If Np_left≥Np_right, i.e., left Side ports number is more than or equal to right side port number, thens follow the steps S302, no to then follow the steps S305.
In step S302, the left side that the number of the calculated isolation constraints to be added of step S106 is obtained with step S301 The absolute difference of right both sides port number compares, if the former is less than or equal to the latter, thens follow the steps S303, otherwise executes step Rapid S304.
In step S303, isolation constraint is all added on the left of standard block, flow is terminated.In this step, due to Isolation constraint number to be added is less than threshold value isolation constraint number, therefore all isolation constraints are placed on the left of standard block, Left side isolation constraint number km_left_n, which is equal to, needs isolation to be added to constrain number add_mrgn_n, and the right is then not necessarily to addition Isolation constraint, km_right_n=0.
In step S304, isolation constraint is added to standard block both sides, terminates flow.Since isolation to be added constrains Number is more than threshold value isolation constraint number, therefore carries out isolation constraint addition in standard block both sides.In the present embodiment, it will wait The isolation constraint that constraint number D_value is isolated in threshold value is added to the left side of standard block, and remaining isolation constraint is uniform It is added at left and right sides of standard block.Specifically, can calculate will add isolation constraint number, and constraint number is isolated with threshold value Isolation is constrained remaining isolation after threshold value fills left side and constrains number by difference km_dif=add_mrgn-D_value, Then the km_dif isolation constraint of this difference is uniformly added at left and right sides of standard block.Calculate separately km_div=int (km_dif/2), km_left_mre=km_dif-km_div, because km_dif may be odd number, it is also possible to even number, if Be even number it is that can be divided equally, divides equally if it is odd number can then exist and have more one, using km_div, km_left_mre is rigid This can be solved the problems, such as well, if km_dif is even number, km_div=km_left_mre, if km_dif is odd number, Km_div ratios km_left_mre is one few.In the present embodiment, congestion must be reduced in order to more preferable, km_left_mre is distributed to One side more than port, thus the left side addition isolation constrain number km_left_n=D_value+km_left_mre, then the right The isolation constraint number km_right_n=km_div of addition.
In step S305, the left side that the number of the calculated isolation constraints to be added of step S106 is obtained with step S301 The absolute difference of right both sides port number compares, if the former is less than or equal to the latter, thens follow the steps S307, otherwise executes step Rapid S306.
In step S306, isolation constraint is added to standard block both sides, terminates flow.
In step S307, isolation constraint is all added on the right side of standard block, flow is terminated.
The isolation constraint addition manner of step S306 and S307 are similar to above-mentioned steps S303 and 304, and details are not described herein.
Fig. 9 is to be illustrated according to the embodiment of the present disclosure according in standard block with the standard block with 7 ports The port number of line both sides adds the schematic diagram of isolation constraint in standard block both sides.In the example of figure 9, on the left of standard block There are 5 ports, right side there are 2 ports.
As shown in figure 9, the difference that left and right sides port number subtracts each other is 3, therefore the threshold value of this standard block isolation constraint It is 3.When addition isolation constraint, if the number of isolation constraint to be added is less than or equal to 3, all by isolation constraint It is added to the more side of port number, i.e. left side;If isolation constraint number to be added is more than 3, can be in standard block It is put the left and right sides.In the example of figure 9 as can be seen that 7 port standard cell isolations constraint threshold value is 3, when adding Isolation constraint number when being respectively 1,2,3, within threshold range, added in standard block as shown in Fig. 9 left-halfs Left side.It is more than threshold value 3 when isolation to be added constraint number is respectively 4,5,6,3 isolation constraints is added to standard list First left side, and remaining isolation constraint is added to the left and right sides.For example, when isolation to be added constraint number be 4 when, by 3 every It is added on the left of standard block from constraint, and the 4th isolation is constrained, that is, exceeds first isolation constraint of threshold value, be added to The more side in port, i.e. left side.Similarly, when isolation to be added constraint number is 5,3 isolation constraints are added to On the left of standard block, the 4th isolation constraint is added on the left of standard block, and the 5th isolation constraint is added on the right side of isolated location, And so on.That is, when isolation to be added constraint number be more than threshold number when, for the part beyond threshold value every It from constraint, puts since the more side in port, followed by the side that port is less, is added successively in standard block both sides first.
Embodiment of the disclosure additionally provides a kind of computer readable storage medium, and for storing instruction, described instruction exists Processor is set to execute the above method when being executed by processor.
As an example, embodiment of the disclosure can also be described in the context of machine-executable instruction, machine can Execute instruction such as includes in the program module that is executed in device on the true or virtual processor of target.It is general and Speech, program module include routine, program, library, object, class, component, data structure etc., execute specific task or realization Specific abstract data structure.In embodiments, the function of program module can merge between described program module Or segmentation.Machine-executable instruction for program module can execute in local or distributed apparatus.In distribution In equipment, program module can be located locally in remote medium storage the two.
The computer program code of method used to implement the present disclosure can be write with one or more programming languages.These Computer program code can be supplied to the processing of all-purpose computer, special purpose computer or other programmable data processing units Device so that program code by computer or other programmable data processing units execution when, cause flow chart and/ Or function/operation specified in block diagram is carried out.Program code can completely on computers, part on computers, conduct Independent software package, part are on computers and part is held on a remote computer or server on the remote computer or completely Row.
In the context of the disclosure, machine readable media can be include or storage be used for or about instruction execution system Any tangible medium of the program of system, device or equipment.Machine readable media can be that machine-readable signal medium or machine can Read storage medium.Machine readable media can include but is not limited to electronics, magnetic, it is optical, electromagnetism, infrared or partly lead Body system, device or equipment equipment or its any appropriate combination.The more detailed example of machine readable storage medium includes carrying one Or the electrical connection of multiple conducting wires, portable computer diskette, hard disk, random access memories (RAM), read-only memory (ROM), Erasable Programmable Read Only Memory EPROM (EPROM or flash memory), light storage device, magnetic storage apparatus or its is any appropriate Combination.
Embodiment of the disclosure, can be close according to the port of standard block by the port density of each standard block of calculating Degree constrains pointedly to add isolation, to solve due to can not accurately find the standard block for needing to add isolation constraint And the problem of causing unreasonably to add isolation constraint.By screening the standard block for needing addition isolation to constrain and calculating each The standard block isolation constraint number to be added filtered out, automatically can rationally divide isolation constraint in standard block Match, improves speed, accuracy, the reasonability of isolation constraint addition.
Embodiment of the disclosure carries out automatic screening by algorithm to standard block, need not artificially remove addition standard block Title can also avoid the case where leakage choosing or mistake are selected caused by the subjective judgement for people, also need not artificially go to fill in addition The unit of constraint is isolated;And the range of screening can also can be adjusted flexibly according to the size of design area, avoid causing to mark The spilling of quasi- unit.
Embodiment of the disclosure passes through the height according to the area of standard block, port number, port density and monomer The number that isolation constraint to be added is calculated with width, can respectively be added not according to the difference of standard block port density Same isolation binding occurrence.Compared in traditional technology to various criterion unit use the same isolation binding occurrence, solve due to The problem of unreasonable addition isolation constrains and be easy to cause the spilling of unit and can not effectively alleviate congestion.
Embodiment of the disclosure calculates the port number of the left and right sides inside standard block, and accordingly in standard block or so Both sides distribution isolation constraint adds compared in the addition isolation constraint of standard block side in traditional technology or in the both sides of unit Add equal isolation to constrain, be more reasonably assigned with isolation constraint so that port it is more side addition isolation constraint compared with It is more, it can more effectively solve congestion problems.
Embodiment of the disclosure provides plurality of target regioselective way, such as module hierarchy selection, coordinate selection, and A variety of regions can be used in mixed way, can be set for each target area and individually dredge degree threshold value to be screened, in face In the case of product is limited, very well can flexibly it be used.
The foregoing is merely preferred embodiment of the present disclosure, are not limited to the disclosure, for those skilled in the art For, the disclosure can have various modifications and changes.It is all within the spirit and principle of the disclosure made by any modification, equivalent Replace, improve etc., it should be included within the protection domain of the disclosure.

Claims (12)

1. a kind of method of designing integrated circuit, for adding isolation constraint to standard block, which is characterized in that the integrated circuit Design method includes:
Calculate the port density that each standard block in region is specified in integrated circuit;
The standard block of selection port density within a predetermined range;
Isolation constraint is added for selected standard block.
2. method of designing integrated circuit according to claim 1, which is characterized in that specify area in the calculating integrated circuit The port density of each standard block includes in domain:
Monomer surface product is calculated according to the hull beam of the standard block and monomer height;
According to the monomer number in standard block described in the area of the standard block and the monomer areal calculation;
By the way that the monomer number in the port number of the standard block divided by the standard block is obtained the standard block Port density.
3. method of designing integrated circuit according to claim 1, which is characterized in that specify area in the calculating integrated circuit The port density of each standard block includes in domain:
By the way that the area of the port number of the standard block divided by the standard block is obtained the port of the standard block Density.
4. method of designing integrated circuit according to claim 1, which is characterized in that described to calculate each standard block Further include after port density:
Dredge degree in the port that the standard block is calculated according to the port density of each standard block.
5. method of designing integrated circuit according to claim 4, which is characterized in that the selection port density is in predetermined model Enclosing interior standard block includes:
Selection port dredges standard block of the degree less than predetermined threshold value.
6. method of designing integrated circuit according to claim 5, which is characterized in that described to be directed to selected standard block Addition isolation, which constrains, includes:For each selected standard block,
According to the height and width of the area of the standard block, port number, port density and monomer, calculates and be directed to the standard The number of unit isolation constraint to be added;
In the opposite sides addition isolation constraint of the standard block.
7. method of designing integrated circuit according to claim 6, which is characterized in that the face according to the standard block The height and width of product, port number, the threshold value of port density and monomer calculate and are directed to standard block isolation to be added The number of constraint includes:
The number for standard block isolation constraint to be added is calculated according to following equation:
Wherein NkmIndicate the number of isolation constraint to be added, NpIndicate the port of standard block Number, δthIndicate that the threshold value of degree, S are dredged in the port of standard blockcIndicate the area of standard block, WuIndicate hull beam, HuIt indicates Monomer height.
8. method of designing integrated circuit according to claim 7, which is characterized in that further include:It is isolated about calculated In the case that the number of beam is not integer, calculated isolation constraint is converted into integer by way of rounding up.
9. method of designing integrated circuit according to claim 6, which is characterized in that described opposite the two of the standard block Side addition isolation, which constrains, includes:
Calculate the port number of the center line both sides of the standard block;
According to the port number of the center line both sides of the standard block, isolation is added respectively about in the both sides of the standard block Beam.
10. method of designing integrated circuit according to claim 9, which is characterized in that in described calculating standard block The monomer number of line both sides includes:
The midline position of the standard block is calculated according to the position coordinates of the standard block, area and monomer height;
According to each port position of the midline position of the standard block and the standard block, to calculate the standard block center line two The port number of side
11. method of designing integrated circuit according to claim 6, which is characterized in that described according in the standard block The port number of line both sides, adding isolation constraint respectively in the both sides of the standard block includes:
Calculate the absolute difference of the port number of the center line both sides of the standard block;
It is if being more than the absolute difference for the number of standard block isolation constraint to be added, the difference is exhausted To being worth isolation constraint addition larger side of port number in the center line both sides of the standard block of number, remaining isolation is about Beam is uniformly added in the center line both sides of the standard block;
If for the standard block it is to be added isolation constraint number be less than or equal to the absolute difference, will all every From constraint addition larger side of port number in the center line both sides of the standard block.
12. a kind of computer readable storage medium, for storing instruction, described instruction makes processor hold when being executed by processor Row method of designing integrated circuit according to any one of claim 1 to 11.
CN201810270103.8A 2018-03-29 2018-03-29 Integrated circuit design method and computer-readable storage medium Active CN108520128B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810270103.8A CN108520128B (en) 2018-03-29 2018-03-29 Integrated circuit design method and computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810270103.8A CN108520128B (en) 2018-03-29 2018-03-29 Integrated circuit design method and computer-readable storage medium

Publications (2)

Publication Number Publication Date
CN108520128A true CN108520128A (en) 2018-09-11
CN108520128B CN108520128B (en) 2022-04-15

Family

ID=63431218

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810270103.8A Active CN108520128B (en) 2018-03-29 2018-03-29 Integrated circuit design method and computer-readable storage medium

Country Status (1)

Country Link
CN (1) CN108520128B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112257384A (en) * 2020-10-30 2021-01-22 上海兆芯集成电路有限公司 Method for detecting standard cell
CN112466872A (en) * 2020-12-01 2021-03-09 江苏博沃汽车电子系统有限公司 Integrated circuit wiring method and device

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5757658A (en) * 1996-03-06 1998-05-26 Silicon Graphics, Inc. Procedure and system for placement optimization of cells within circuit blocks by optimizing placement of input/output ports within an integrated circuit design
US5784289A (en) * 1994-09-07 1998-07-21 Lsi Logic Corporation Method for estimating routability and congestion in a cell placement fo integrated circuit chip
US5984510A (en) * 1996-11-01 1999-11-16 Motorola Inc. Automatic synthesis of standard cell layouts
US20020166098A1 (en) * 1998-09-30 2002-11-07 Cadence Design Systems, Inc. Block based design methodology
US20030023938A1 (en) * 2001-07-27 2003-01-30 Fujitsu Limited LSI layout method and apparatus for cell arrangement in which timing is prioritized
US20050235244A1 (en) * 2004-04-14 2005-10-20 Lsi Logic Corporation Process and apparatus for characterizing intellectual property for integration into an IC platform environment
US20090019412A1 (en) * 2007-07-10 2009-01-15 Masahiro Yoshimura Design method and design apparatus for semiconductor integrated circuit
US20090271752A1 (en) * 2008-04-24 2009-10-29 International Business Machines Corporation Legalization of VLSI circuit placement with blockages using hierarchical row slicing
US20100262944A1 (en) * 2009-04-08 2010-10-14 International Business Machines Corporation Object placement in integrated circuit design
CN102467582A (en) * 2010-10-29 2012-05-23 国际商业机器公司 Method and system for optimizing wiring constraint in integrated circuit design
US20130086544A1 (en) * 2011-10-03 2013-04-04 International Business Machines Corporation Consideration of local routing and pin access during vlsi global routing
US20150161318A1 (en) * 2013-09-27 2015-06-11 Taiwan Semiconductor Manufacturing Company, Ltd. Method of making semiconductor device and system for performing the same
US20150234950A1 (en) * 2012-03-29 2015-08-20 Cisco Technology, Inc. Methods and Apparatus for Synthesizing Multi-Port Memory Circuits
US20160165730A1 (en) * 2014-12-05 2016-06-09 Taiwan Semiconductor Manufacturing Co., Ltd. Input output for an integrated circuit
US20170169155A1 (en) * 2015-12-10 2017-06-15 GlobalFoundries, Inc. Method to adjust alley gap between large blocks for floorplan optimization
US20170176849A1 (en) * 2014-06-20 2017-06-22 Taiwan Semiconductor Manufacturing Company, Ltd. Method of Fabricating an Integrated Circuit With Non-Printable Dummy Features
US20170199955A1 (en) * 2016-01-11 2017-07-13 Samsung Electronics Co., Ltd. Method for routing between pins of semiconductor device and design system therewith
US20170286585A1 (en) * 2016-03-29 2017-10-05 Wipro Limited Methods and Systems for Reducing Congestion in Very Large Scale Integrated (VLSI) Chip Design
CN107832571A (en) * 2017-12-21 2018-03-23 北京华大九天软件有限公司 The method that unit amount of movement is reduced in integrated circuit standard unit increment layout

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5784289A (en) * 1994-09-07 1998-07-21 Lsi Logic Corporation Method for estimating routability and congestion in a cell placement fo integrated circuit chip
US5757658A (en) * 1996-03-06 1998-05-26 Silicon Graphics, Inc. Procedure and system for placement optimization of cells within circuit blocks by optimizing placement of input/output ports within an integrated circuit design
US5984510A (en) * 1996-11-01 1999-11-16 Motorola Inc. Automatic synthesis of standard cell layouts
US20020166098A1 (en) * 1998-09-30 2002-11-07 Cadence Design Systems, Inc. Block based design methodology
US20030023938A1 (en) * 2001-07-27 2003-01-30 Fujitsu Limited LSI layout method and apparatus for cell arrangement in which timing is prioritized
US20050235244A1 (en) * 2004-04-14 2005-10-20 Lsi Logic Corporation Process and apparatus for characterizing intellectual property for integration into an IC platform environment
US20090019412A1 (en) * 2007-07-10 2009-01-15 Masahiro Yoshimura Design method and design apparatus for semiconductor integrated circuit
US20090271752A1 (en) * 2008-04-24 2009-10-29 International Business Machines Corporation Legalization of VLSI circuit placement with blockages using hierarchical row slicing
US20100262944A1 (en) * 2009-04-08 2010-10-14 International Business Machines Corporation Object placement in integrated circuit design
CN102467582A (en) * 2010-10-29 2012-05-23 国际商业机器公司 Method and system for optimizing wiring constraint in integrated circuit design
US20130086544A1 (en) * 2011-10-03 2013-04-04 International Business Machines Corporation Consideration of local routing and pin access during vlsi global routing
US20150234950A1 (en) * 2012-03-29 2015-08-20 Cisco Technology, Inc. Methods and Apparatus for Synthesizing Multi-Port Memory Circuits
US20150161318A1 (en) * 2013-09-27 2015-06-11 Taiwan Semiconductor Manufacturing Company, Ltd. Method of making semiconductor device and system for performing the same
US20170176849A1 (en) * 2014-06-20 2017-06-22 Taiwan Semiconductor Manufacturing Company, Ltd. Method of Fabricating an Integrated Circuit With Non-Printable Dummy Features
US20160165730A1 (en) * 2014-12-05 2016-06-09 Taiwan Semiconductor Manufacturing Co., Ltd. Input output for an integrated circuit
US20170169155A1 (en) * 2015-12-10 2017-06-15 GlobalFoundries, Inc. Method to adjust alley gap between large blocks for floorplan optimization
US20170199955A1 (en) * 2016-01-11 2017-07-13 Samsung Electronics Co., Ltd. Method for routing between pins of semiconductor device and design system therewith
US20170286585A1 (en) * 2016-03-29 2017-10-05 Wipro Limited Methods and Systems for Reducing Congestion in Very Large Scale Integrated (VLSI) Chip Design
CN107832571A (en) * 2017-12-21 2018-03-23 北京华大九天软件有限公司 The method that unit amount of movement is reduced in integrated circuit standard unit increment layout

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112257384A (en) * 2020-10-30 2021-01-22 上海兆芯集成电路有限公司 Method for detecting standard cell
CN112257384B (en) * 2020-10-30 2022-11-01 上海兆芯集成电路有限公司 Method for detecting standard cell
CN112466872A (en) * 2020-12-01 2021-03-09 江苏博沃汽车电子系统有限公司 Integrated circuit wiring method and device

Also Published As

Publication number Publication date
CN108520128B (en) 2022-04-15

Similar Documents

Publication Publication Date Title
US6848091B2 (en) Partitioning placement method and apparatus
US7089523B2 (en) Method and apparatus for using connection graphs with potential diagonal edges to model interconnect topologies during placement
US7055120B2 (en) Method and apparatus for placing circuit modules
US7080336B2 (en) Method and apparatus for computing placement costs
Hsu et al. Routability-driven analytical placement for mixed-size circuit designs
US8201128B2 (en) Method and apparatus for approximating diagonal lines in placement
US20070157146A1 (en) Method of packing-based macro placement and semiconductor chip using the same
TW564575B (en) Method and apparatus for considering diagonal wiring in placement
US6829757B1 (en) Method and apparatus for generating multi-layer routes
US6877146B1 (en) Method and apparatus for routing a set of nets
He et al. Ripple: A robust and effective routability-driven placer
US10229239B2 (en) Capacity model for global routing
CN108520128A (en) Method of designing integrated circuit and computer readable storage medium
Chen et al. ECO timing optimization using spare cells
Huang et al. Detailed-routability-driven analytical placement for mixed-size designs with technology and region constraints
Chen et al. A novel wire-density-driven full-chip routing system for CMP variation control
CN112861466B (en) Wiring track distribution method, electronic equipment and computer readable storage medium
Tsota et al. Guiding global placement with wire density
US7596773B2 (en) Automating optimal placement of macro-blocks in the design of an integrated circuit
US7310793B1 (en) Interconnect lines with non-rectilinear terminations
Saeedi et al. Prediction and reduction of routing congestion
CN116050340A (en) Automatic layout method and device for pins in layout design and related products
US6895569B1 (en) IC layout with non-quadrilateral Steiner points
CN115048900A (en) Corner filling method and device for integrated circuit layout and computer equipment
JP2006190062A (en) Floor plan method and computing system for semiconductor integrated circuit

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