Layout arrangement method and device, electronic equipment and computer readable storage medium
By grouping cells according to functional logic in the integrated circuit layout and adjusting the spacing of metal layer traces, the problem of low efficiency in crosstalk resolution in existing technologies is solved, achieving efficient and automated crosstalk resolution and improving signal integrity.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-04
- Publication Date
- 2026-03-20
AI Technical Summary
Existing technologies rely on engineers' experience to solve crosstalk problems in integrated circuits, which is inefficient and prone to causing design rule or timing violations, making it difficult to efficiently solve crosstalk problems in metal interconnects.
By grouping the cells in the crosstalk region according to their functional logic and allocating corresponding layout areas to each cell group in the layout, combined with static timing analysis and routing tools, the trace spacing of the metal layer is automatically adjusted to reduce the risk of crosstalk.
It improves the efficiency of crosstalk resolution, reduces reliance on engineers, lowers the risk of design rule or timing violations caused by adjustments, and improves the signal integrity of integrated circuits.
Smart Images

Figure CN115587565B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of integrated circuits, in particular to a layout method and device, electronic equipment and computer readable storage medium. BACKGROUND
[0002] With the continuous development of technology and the continuous progress of process, the density of metal interconnection lines and the number of metal layers are increasing, and the width of metal is becoming narrower. Signal integrity has become a key problem in the physical design of current deep submicron integrated circuits. One of the factors that adversely affect the convergence of signal integrity is crosstalk.
[0003] Currently, there are few technical solutions to solve crosstalk in physical design. In engineering, crosstalk problems are usually solved in the stage of checking after the layout design is completed. The specific way is: manually pulling apart the network by root line, or increasing the size of the driver in the network with crosstalk to enhance its driving force.
[0004] However, this method is heavily dependent on the experience of engineers, and in the process of manually pulling apart the network, it is easy to cause design rule violations or timing violations, often requiring a lot of trial and error, and there are problems such as low efficiency. SUMMARY
[0005] The purpose of the embodiments of the present application is to provide a layout method and device, electronic equipment and computer readable storage medium to improve the efficiency of solving crosstalk.
[0006] The embodiments of the present application provide a layout method, which comprises: grouping the cells in the crosstalk region according to the functional logic to which they belong to obtain each cell group; allocating a corresponding layout area for each cell group in the layout layout area; and arranging the cells of each cell group in the layout area corresponding to the layout area of the cell group; and routing each cell.
[0007] In the above implementation process, by grouping the cells in the crosstalk region according to the functional logic, each cell group is arranged in the corresponding layout area allocated for each cell group in the layout. In this way, cells belonging to different functional logic can be laid out in different areas of the layout, thereby effectively preventing crosstalk caused by the mutual influence of cells that do not have functional logic association, thereby reducing the dependence on engineers and effectively improving the efficiency of solving crosstalk.
[0008] Further, before grouping the cells in the crosstalk region according to the functional logic to which the cells belong, the method further comprises: performing static timing analysis on the layout after layout and routing to obtain the positions of the target networks with crosstalk in the layout; and delimiting a region with at least n target networks in the layout as the crosstalk region; the n being a preset positive integer.
[0009] In the implementation process described above, the layout is processed only for the high-frequency crosstalk region (i.e., the region with at least n target networks) by performing static timing analysis on the layout after layout and routing, so that the crosstalk problem can be solved as much as possible while reducing the risk of new problems caused by adjusting the layout.
[0010] Further, the grouping of the cells in the crosstalk region according to the functional logic to which the cells belong comprises: distributing the cells in the crosstalk region, which have a distance between physical positions less than a preset distance threshold, and do not have direct timing checks with each other and whose timing check paths do not overlap, to different cell groups according to the functional logic to which the cells belong.
[0011] The cells with a distance between physical positions less than a preset distance threshold can affect each other and cause crosstalk, while the cells that do not have direct timing checks with each other and whose timing check paths do not overlap will not interfere with each other in terms of functional logic, so that no timing violation or other problems will occur after layout to different regions. Therefore, by the above method, each cell group after grouping can be relaid and can cause crosstalk, so that the crosstalk problem can be solved while adjusting as few cells as possible.
[0012] Further, the allocation of the corresponding layout regions for each cell group in the layout area where the layout can be placed comprises: judging the distribution direction of the networks with crosstalk in the crosstalk region; and dividing the corresponding layout regions for each cell group in the layout area according to the distribution direction; wherein there is an interval region between adjacent layout regions.
[0013] In the implementation process described above, the direction of the divided layout region is consistent with the distribution direction of the networks with crosstalk, so that when the cells in the networks with crosstalk are laid out in the corresponding layout region, the layout direction of each cell can be kept consistent with the original layout direction, thereby reducing the risk of new problems caused by adjusting the layout as much as possible. In addition, by setting an interval region between adjacent layout regions, the cells laid out in adjacent regions can also be prevented from affecting each other, thereby causing new crosstalk problems.
[0014] Further, each of the unit groups corresponds to a layout area provided with an area constraint; wherein the area constraint is that the units of the unit group corresponding to the layout area can only be laid out in the layout area, and other units except the units of the unit group corresponding to the layout area are allowed to be laid out in the layout area.
[0015] In the implementation process, by limiting the units of the unit group corresponding to the layout area to be laid out in the layout area, and allowing other units except the units of the unit group corresponding to the layout area to be laid out in the layout area, the units of the unit group can be ensured to be laid out in the corresponding layout area, and the unit layout and routing in the entire layout are facilitated, the design of the entire layout is prevented from being affected by the division of the layout area, and the difficulty of layout design is reduced.
[0016] Further, the method further comprises: obtaining a minimum width and a minimum spacing of a crosstalk metal layer satisfying a design rule; the crosstalk metal layer is a metal layer having crosstalk; determining a reference track spacing of the crosstalk metal layer according to the minimum width and the minimum spacing; deleting a default routing track of the crosstalk metal layer; generating a target routing track of m times the reference track spacing, and routing each of the units in the crosstalk metal layer according to the target routing track; m is a constant greater than 1.
[0017] In the implementation process, by resetting the reference track spacing of the crosstalk metal layer according to the minimum width and the minimum spacing of the crosstalk metal layer satisfying the design rule, and then expanding the routing interval based on the reset reference track spacing, the interval of the routing in the crosstalk metal layer can be automatically expanded without the intervention of engineers, thereby reducing the crosstalk risk between metal lines in the crosstalk metal layer and improving the crosstalk solving efficiency.
[0018] Further, before obtaining the minimum width and the minimum spacing of the crosstalk metal layer satisfying the design rule, the method further comprises: determining the metal layer used by each network having crosstalk in the layout; determining the metal layer used by at least k networks having crosstalk as the crosstalk metal layer; wherein k is a positive integer.
[0019] In the implementation process, by determining the metal layer used by at least k networks having crosstalk as the crosstalk metal layer, the above processing is only performed on the crosstalk metal layer with serious crosstalk problem, so that the crosstalk problem between metal lines can be solved as much as possible, and the risk of new problems caused by adjusting the metal line routing layout of the metal layer in the layout is reduced.
[0020] Further, the reference track spacing of the crosstalk metal layer is equal to the sum of the minimum width and the minimum spacing.
[0021] In the implementation process, the reference track interval is set to be equal to the sum of the minimum width and the minimum interval, so that the track spacing between adjacent metal lines can meet the design rules, and the risk of crosstalk between metal lines is reduced.
[0022] Further, the method further comprises: if the resources of the crosstalk metal layer are insufficient, continuing to route each unit according to the target track in other metal layers of the layout.
[0023] In the implementation process, when the resources of the crosstalk metal layer are insufficient, the routing of each unit according to the target track in other metal layers of the layout is continued, so that the crosstalk problem in the crosstalk metal layer can be solved while ensuring the integrity of the routing between units, and thus the normal function of the layout is ensured.
[0024] The embodiment of the present application also provides a layout arrangement method, comprising: obtaining a minimum width and a minimum interval of a crosstalk metal layer meeting a design rule; the crosstalk metal layer is a metal layer having crosstalk; determining a reference track interval of the crosstalk metal layer according to the minimum width and the minimum interval; deleting a default track of the crosstalk metal layer; generating a target track of m times the reference track interval, and routing each unit in the layout according to the target track in the crosstalk metal layer; m is a constant greater than 1.
[0025] In the implementation process, the reference track interval of the crosstalk metal layer is reset according to the minimum width and the minimum interval of the crosstalk metal layer meeting the design rule, and then the routing interval is widened based on the reset reference track interval, so that the interval of the routing in the crosstalk metal layer can be widened automatically without the intervention of engineers, the crosstalk risk between metal lines in the crosstalk metal layer is reduced, and compared with the prior art, the dependence on engineers is reduced and the crosstalk solving efficiency is improved.
[0026] Further, before obtaining the minimum width and the minimum interval of the crosstalk metal layer meeting the design rule, the method further comprises: determining the metal layer used by each network having crosstalk in the layout; determining the metal layer used by at least k networks having crosstalk as the crosstalk metal layer; wherein k is a positive integer.
[0027] Further, the reference track interval of the crosstalk metal layer is equal to the sum of the minimum width and the minimum interval.
[0028] Further, the method further comprises: if resources of the crosstalk metal layer are insufficient in the process of routing each of the unit tracks according to the target track in the crosstalk metal layer, continuing to route each of the unit tracks according to the target track in other metal layers of the layout.
[0029] The embodiment of the present application further provides a layout arrangement device, comprising: a grouping module, configured to group units in a crosstalk region according to their belonging function logic to obtain each unit group; a region division module, configured to allocate a corresponding arrangement region for each unit group in a placeable region of the layout; an arrangement module, configured to arrange units of each unit group in the arrangement region corresponding to the unit group; and a wiring module, configured to wire each unit.
[0030] The embodiment of the present application further provides a layout arrangement device, comprising: an acquisition module, configured to acquire a minimum width and a minimum spacing of a crosstalk metal layer satisfying a design rule; the crosstalk metal layer is a metal layer having crosstalk; a reference track spacing determination module, configured to determine a reference track spacing of the crosstalk metal layer according to the minimum width and the minimum spacing; a deletion module, configured to delete a default track of the crosstalk metal layer; and a processing module, configured to generate a target track of m times of the reference track spacing and route each unit in the layout according to the target track in the crosstalk metal layer; the m is a constant greater than 1.
[0031] The embodiment of the present application further provides an electronic device, comprising a processor and a memory; the processor is configured to execute one or more programs stored in the memory to implement the layout arrangement method of any of the above.
[0032] The embodiment of the present application further provides a computer readable storage medium, the computer readable storage medium stores one or more programs, and the one or more programs can be executed by one or more processors to implement the layout arrangement method of any of the above. BRIEF DESCRIPTION OF DRAWINGS
[0033] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following will briefly introduce the drawings needed to be used in the embodiments of the present application. It should be understood that the following drawings only show some embodiments of the present application, and therefore should not be regarded as a limitation to the scope, and for those skilled in the art, other related drawings can also be obtained without creative labor on the basis of these drawings.
[0034] Figure 1 A flowchart of a layout arrangement method provided by the embodiment of the present application;
[0035] Figure 2 A layout region division schematic diagram provided in an embodiment of the present application;
[0036] Figure 3 A flowchart of another layout layout method provided in an embodiment of the present application;
[0037] Figure 4 A schematic diagram of a metal M8 layer based on a reference track pitch wiring provided in an embodiment of the present application;
[0038] Figure 5 A schematic diagram of a metal M8 layer based on a 2 times reference track pitch wiring provided in an embodiment of the present application;
[0039] Figure 6 A structural schematic diagram of a first layout layout device provided in an embodiment of the present application;
[0040] Figure 7 A structural schematic diagram of a second layout layout device provided in an embodiment of the present application;
[0041] Figure 8 A structural schematic diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0042] The technical solutions in the embodiments of the present application will be described below with reference to the drawings in the embodiments of the present application.
[0043] The inventors found that the crosstalk in the target layout mainly includes two parts of crosstalk between units and crosstalk between metal lines, and solving any one of the two parts can improve the signal integrity of the integrated circuit in the layout. Therefore, two layout layout methods are provided in the embodiments of the present application, which are respectively used to solve the crosstalk problem between units and the crosstalk problem between metal lines.
[0044] Referring to FIG. 1, Figure 1 Figure 1 A flowchart of a layout layout method provided in an embodiment of the present application, which can solve the crosstalk problem between units, includes:
[0045] S101: Grouping the units in the crosstalk region according to the function logic to which the units belong, to obtain each unit group.
[0046] It can be understood that in the embodiments of the present application, the layout after layout and wiring is subjected to static timing analysis to obtain the position of the target network with crosstalk in the layout. Then, in an optional embodiment, the region where the target network with crosstalk is located can be determined as a crosstalk region for solving the crosstalk problem.
[0047] In another optional embodiment of the present application, only the region with at least n target networks in the layout can be designated as the crosstalk region, so that the layout processing is performed only on the high-frequency crosstalk region (i.e., the region with at least n target networks), thereby reducing the risk of new problems caused by adjusting the layout while solving the crosstalk problem as much as possible.
[0048] It can be understood that n is a preset positive integer, which can be set according to requirements, for example, can be set to 2, 5, 10, etc., but not as a limitation.
[0049] It can also be understood that in the present application, the static timing analysis can be performed by using the timing analysis tool in the existing various types of layout design software, or by using a special layout timing analysis software, and the specific implementation manner can refer to the prior art, which will not be described herein again.
[0050] In an optional embodiment of the present application, the cells in the crosstalk region, the distance between which is less than the preset distance threshold, and which do not have direct timing checks with each other and the timing check paths of which do not overlap, can be distributed to different cell groups according to the functional logic, so as to realize the grouping of the cells in the crosstalk region.
[0051] It can be understood that the cells with the distance between the physical positions less than the preset distance threshold can affect each other and cause crosstalk, and the cells which do not have direct timing checks with each other and the timing check paths of which do not overlap will not interfere with each other in the functional logic, so that after being laid out to different regions, no timing violation problem will occur, and thus through the above optional embodiment, the cell groups after grouping can be cells which can be relaid out and can cause crosstalk, so that the crosstalk problem can be solved by adjusting as few cells as possible.
[0052] In the present application, the preset distance threshold can be the maximum distance that can be driven by a 5-time driving force buffer under the condition of satisfying the design rule constraint under the specified design process, but not as a limitation. Under this distance threshold, it can be considered that the spacing distance between the cells is too small and crosstalk problem can occur, so that the cells which can cause crosstalk can be relaid out as much as possible, thereby improving the probability of solving the crosstalk problem.
[0053] For example, in the present application, it is assumed that the distance between each two cells in the crosstalk region is less than the maximum distance that can be driven by a 5-time driving force buffer under the condition of satisfying the design rule constraint, and the logical groups to which the cells belong are rsp, req, snp, dat and mcb respectively, and the timing between any two of the five logical groups is not checked, then the cells in the crosstalk region can be divided into five cell groups of rsp, req, snp, dat and mcb.
[0054] Furthermore, in another optional embodiment of this application, units in the crosstalk region that do not have direct timing checks with each other and whose timing check paths do not overlap can be assigned to different unit groups according to their respective functional logic, thereby achieving grouping of units in the crosstalk region. This also allows each grouped unit group to be a reconfigurable unit, thus resolving crosstalk caused by mutual influence between units in the crosstalk region.
[0055] S102: Allocate corresponding deployment areas for each unit group within the deployable area of the map.
[0056] It is understandable that when designing a layout, units are often concentrated in one or more areas, while areas where units are not concentrated can be used as placement areas.
[0057] In this embodiment, the distribution direction of the crosstalk network within the crosstalk region can be determined first. Then, according to the distribution direction, the corresponding deployment area is divided for each unit group within the deployable area.
[0058] For example, please see Figure 2 As shown ( Figure 2 In the diagram, points represent units, and boxes represent networks with crosstalk. It is assumed that the distribution direction of crosstalk networks within the crosstalk region is as follows: Figure 2 The diagram shows the horizontal direction (i.e., the length of the distribution area in the crosstalk network is greater than its width). Assuming there are 5 unit groups, horizontal dividing lines can be set within the deployable area, ensuring that each divided deployment area is also horizontal. This allows the placement of units from a crosstalk network into their respective deployment areas while maintaining the original layout orientation of each unit, thus minimizing the risk of new problems arising from adjustments to the layout.
[0059] Of course, in this embodiment, the division may not be based on the distribution direction of the network with crosstalk in the crosstalk area. In this case, the units after grouping can be rearranged to reduce or even eliminate the crosstalk between units.
[0060] Furthermore, in the embodiments of this application, such as Figure 2 As shown, intervals can be set between adjacent deployment areas. In this way, by setting intervals between adjacent deployment areas, it is also possible to effectively prevent the units deployed in adjacent areas from affecting each other and thus creating new crosstalk problems.
[0061] It can be understood that, in the embodiments of the present application, the width of the spacing region can be set according to the minimum spacing distance required to prevent crosstalk between units. For example, the width of the spacing region can be set to a value between 15 and 20 um.
[0062] In the embodiments of the present application, a region constraint can be set for each unit group corresponding to the layout region. The region constraint is that the units of the unit group corresponding to the layout region can only be laid out in the layout region, and other units in addition to the units of the unit group corresponding to the layout region are allowed to be laid out in the layout region.
[0063] In this way, the direction of the divided layout region is consistent with the distribution direction of the network with crosstalk, which makes it possible to keep the layout direction of each unit consistent with the original layout direction when the units in the network with crosstalk are laid out in the corresponding layout region, thereby minimizing the risk of new problems caused by adjusting the layout of the layout.
[0064] In addition, by setting the above-mentioned region constraint, when processing other crosstalk regions, the already divided layout region (because the divided layout region in the layout region allows other units to be laid out) can be reused for the relocation of the unit groups in other crosstalk regions, thereby improving the utilization rate of the layout region.
[0065] It can also be understood that, in the embodiments of the present application, when the layout region is divided, the division of the layout region can also be performed according to the number of units in each unit group or the logic amount (which can be represented by the total area of each unit in the unit group). For example, assuming that the rsp, req, snp, dat and mcb unit groups are divided, and the proportion of the logic amount of the rsp, req, snp, dat and mcb unit groups is 3:3:1:1:1, then the area size of the layout region corresponding to the rsp, req, snp, dat and mcb unit groups can also be 3:3:1:1:1, to ensure that the units of each unit group can have sufficient layout space when being relocated, thereby obtaining a better relocation effect.
[0066] S103: Lay out the units of each unit group in the layout region corresponding to the unit group.
[0067] It can be understood that, when the units of each unit group are relocated, the units can be automatically placed in the corresponding layout region according to the original logical relationship of the units of each unit group, realizing automatic unit layout.
[0068] Of course, this step can also be completed manually by an engineer, and embodiments of the present application do not limit this.
[0069] S104: wiring for each unit.
[0070] In embodiments of the present application, wiring between units can be completed by an automatic wiring tool, thereby obtaining a new layout.
[0071] Through the above layout method provided by embodiments of the present application, after grouping units in a crosstalk region according to functional logic, each unit group is arranged in a corresponding arrangement region allocated to the unit group in the layout. Thus, units belonging to different functional logic are arranged in different regions of the layout, thereby effectively preventing crosstalk caused by mutual influence of units without functional logic association, and reducing dependence on engineers and effectively improving crosstalk solving efficiency. That is, crosstalk caused by mutual influence between units can be solved, and signal integrity of integrated circuits in the layout can be improved.
[0072] Referring to FIG. 1, Figure 3 Figure 3 FIG. 1 is a flow diagram of a layout method for solving crosstalk between metal lines provided in embodiments of the present application, including:
[0073] S301: obtaining a minimum width and a minimum spacing of a crosstalk metal layer satisfying a design rule.
[0074] In embodiments of the present application, the crosstalk metal layer is a metal layer having crosstalk.
[0075] In an optional embodiment, a metal layer used by each network having crosstalk in the layout can be determined, and then a metal layer used by at least k networks having crosstalk is determined as the crosstalk metal layer; wherein k is a positive integer. In this way, by reasonably setting the value of k, only the crosstalk metal layer with serious crosstalk problem can be processed, thereby reducing the risk of new problems caused by adjusting the layout of metal lines of the metal layer in the layout while solving the crosstalk problem between metal lines as much as possible.
[0076] For example, k can be set to 1, in which case all metal layers used by all networks having crosstalk in the layout are processed as crosstalk metal layers. In addition, k can also be set to a value greater than or equal to 2, in which case only part of the metal layers used by the networks having crosstalk in the layout are processed, which can reduce the risk of new problems caused by adjusting the layout of metal lines of the metal layer in the layout. The specific value of k can be set according to actual needs, and embodiments of the present application do not limit this.
[0077] In the embodiment of the present application, after static timing analysis is performed on the layout, the metal layer used by the network with crosstalk in the layout is captured, so as to realize the above scheme.
[0078] In the embodiment of the present application, the process lef file can be captured to obtain the minimum width and minimum spacing of the crosstalk metal layer that meet the design rules, but this is not a limitation.
[0079] S302: Determine the reference track spacing of the crosstalk metal layer according to the minimum width and the minimum spacing.
[0080] For example, the reference track spacing of the crosstalk metal layer can be equal to the sum of the minimum width and the minimum spacing. At this time, it can be ensured that the track spacing between adjacent metal lines can meet the design rules, and the risk of crosstalk between metal lines is reduced.
[0081] Of course, in the embodiment of the present application, the reference track spacing of the crosstalk metal layer can also be greater than the sum of the minimum width and the minimum spacing, which is not limited in the embodiment of the present application.
[0082] S303: Delete the default track of the crosstalk metal layer.
[0083] It can be understood that in the layout and routing tool of the layout design software, the metal layer is provided with a default track. The track is used to guide the routing, so as to avoid the routing confusion, and the default track of the layout and routing tool is deleted in the present application.
[0084] S304: Generate a target track with m times the reference track spacing, and route each unit in the layout according to the target track in the crosstalk metal layer.
[0085] In the embodiment of the present application, m is a constant greater than 1. The specific value of m can be set according to the size of the routing area and the number of lines to be routed.
[0086] For example, taking the metal M8 layer in the horizontal direction as the crosstalk metal layer, the minimum width W recorded in the process lef is 0.126um, and the minimum spacing S is 0.126um, so the reference track spacing P of the metal M8 layer is determined as 0.252, and at this time, as shown in Figure 4 The black part marked with M8 in the figure is the metal line of the M8 layer. Assuming that m is 2, the routing result is as shown in Figure 5 The spacing of the metal line is pulled to 0.378, the relative spacing of the parallel metal lines is increased, and thus the crosstalk is smaller under the condition that the length is unchanged.
[0087] It is understood that, in the embodiments of this application, if the resources of the crosstalk metal layer are insufficient, the crosstalk metal layer can continue to route each unit according to the target routing track in other metal layers of the layout. This is to solve the crosstalk problem in the crosstalk metal layer while ensuring the integrity of the routing between units, thereby ensuring the normal function of the layout.
[0088] It is understandable that when routing each unit according to the target trace in other metal layers of the layout, it is preferable to continue routing in the metal layer adjacent to the crosstalk metal layer, or to continue routing in the non-crosstalk metal layer.
[0089] The layout method described above allows for the resetting of the baseline track spacing for the crosstalk metal layer based on the minimum width and spacing required to meet design rules. Then, the trace spacing is increased based on this reset baseline track spacing. This automatically increases the spacing between traces within the crosstalk metal layer without the need for engineer intervention, reducing the risk of crosstalk between metal lines within the layer. Compared to existing technologies, this method reduces reliance on engineers and improves crosstalk resolution efficiency. In other words, the layout method described above can resolve crosstalk caused by mutual interference between metal lines, improving the signal integrity of integrated circuits within the layout.
[0090] It is understood that, in the embodiments of this application, the above-mentioned layout method can be written into the layout design tool by rewriting the engineering instructions, so as to achieve automated layout and routing.
[0091] It is also understood that the above two layout methods can be implemented individually or together. For example, after implementing the first layout method, the second layout method can be used for routing to solve the crosstalk problem caused by the influence between cells, as well as the crosstalk problem caused by the mutual influence between metal lines, thereby better improving the signal integrity of the integrated circuit in the layout.
[0092] Based on the same inventive concept, this application also provides a layout device 600 and a layout device 700. Please refer to... Figure 6 and Figure 7 As shown, Figure 6 It shows the use of Figure 1 The layout apparatus of the method shown, Figure 7 It shows the use of Figure 3The layout arrangement device of the method is shown. It should be understood that the specific functions of the device 600 and the device 700 can be referred to the description in the foregoing, and the detailed description is appropriately omitted here to avoid repetition. The device 600 and the device 700 include at least one software function module which can be stored in the form of software or firmware in the memory or solidified in the operating system of the device 600 and the device 700. Specifically:
[0093] Referring to Figure 6 As shown, the device 600 includes a grouping module 601, a region division module 602, a layout module 603 and a wiring module 604. Wherein:
[0094] The grouping module 601 is configured to group the cells in the crosstalk region according to the functional logic to which the cells belong, to obtain each cell group;
[0095] The region division module 602 is configured to allocate a corresponding layout region for each of the cell groups in the layout placeable region;
[0096] The layout module 603 is configured to layout the cells of each of the cell groups in the layout region corresponding to the cell group;
[0097] The wiring module 604 is configured to wire each of the cells.
[0098] In an implementable embodiment of the present application, the grouping module 601 is further configured to, before grouping the cells in the crosstalk region according to the functional logic to which the cells belong, perform static timing analysis on the layout which has been laid out and wired, to obtain the positions of the target networks with crosstalk in the layout, and to demarcate the region with at least n target networks in the layout as the crosstalk region; the n is a preset positive integer.
[0099] In an implementable embodiment of the present application, the grouping module 601 is specifically configured to, according to the functional logic, allocate the cells in the crosstalk region, the distance between which is less than a preset distance threshold, and there is no direct timing check between each other, and the timing check paths of each are not overlapped, to different cell groups.
[0100] In an implementable embodiment of the present application, the region division module 602 is specifically configured to judge the distribution direction of the networks with crosstalk in the crosstalk region, and to divide a corresponding layout region for each of the cell groups in the placeable region according to the distribution direction; wherein there is an interval region between the adjacent layout regions which are divided.
[0101] In a feasible implementation of the embodiment of the present application, the layout area corresponding to each of the cell groups is provided with an area constraint; wherein the area constraint is that the cells of the cell group corresponding to the layout area can only be laid out in the layout area, and cells other than the cells of the cell group corresponding to the layout area are allowed to be laid out in the layout area.
[0102] In the embodiment of the present application, the device 600 further comprises:
[0103] The acquisition unit is configured to acquire a minimum width and a minimum spacing that satisfy a design rule for a crosstalk metal layer; the crosstalk metal layer is a metal layer that has crosstalk;
[0104] The reference track spacing determination unit is configured to determine a reference track spacing of the crosstalk metal layer according to the minimum width and the minimum spacing;
[0105] The deletion unit is configured to delete a default routing track of the crosstalk metal layer;
[0106] The processing unit is configured to generate a target routing track that is m times the reference track spacing, and to route each of the cells according to the target routing track in the crosstalk metal layer; m is a constant greater than 1.
[0107] In the embodiment of the present application, the acquisition unit is further configured to, before acquiring the minimum width and the minimum spacing that satisfy the design rule for the crosstalk metal layer, determine the metal layers used by each network that has crosstalk in the layout, and determine the metal layer used by at least k networks that have crosstalk as the crosstalk metal layer; k is a positive integer.
[0108] In the embodiment of the present application, the reference track spacing of the crosstalk metal layer is equal to the sum of the minimum width and the minimum spacing.
[0109] In the embodiment of the present application, the processing unit is further configured to, in the process of routing each of the cells according to the target routing track in the crosstalk metal layer, continue to route each of the cells according to the target routing track in other metal layers of the layout if the crosstalk metal layer is insufficient in resources.
[0110] Referring to Figure 7 As shown in the figure, the device 700 comprises an acquisition module 701, a reference track spacing determination module 702, a deletion module 703, and a processing module 704. Among them:
[0111] The acquisition module 701 is configured to acquire a minimum width and a minimum spacing that satisfy a design rule for a crosstalk metal layer; the crosstalk metal layer is a metal layer that has crosstalk;
[0112] The reference track spacing determination module 702 is configured to determine a reference track spacing of the crosstalk metal layer according to the minimum width and the minimum spacing.
[0113] The deletion module 703 is configured to delete a default track of the crosstalk metal layer.
[0114] The processing module 704 is configured to generate a target track of m times the reference track spacing, and route each unit in the layout according to the target track in the crosstalk metal layer; m is a constant greater than 1.
[0115] In the embodiment of the present application, the acquisition module 701 is further configured to, before acquiring the minimum width and the minimum spacing of the crosstalk metal layer satisfying the design rule, determine a metal layer used by each network having crosstalk in the layout, and determine a metal layer used by at least k networks having crosstalk as the crosstalk metal layer; k is a positive integer.
[0116] In the embodiment of the present application, the reference track spacing of the crosstalk metal layer is equal to the sum of the minimum width and the minimum spacing.
[0117] In the embodiment of the present application, the processing module 704 is further configured to, in the process of routing each module according to the target track in the crosstalk metal layer, if resources of the crosstalk metal layer are insufficient, continue to route each module according to the target track in other metal layers of the layout.
[0118] It should be understood that, for the sake of brevity of description, some of the contents described in the method embodiments are not repeated in the device part.
[0119] Based on the same inventive concept, the embodiment provides an electronic device, as shown in Figure 8 The electronic device includes a processor 801 and a memory 802. Wherein:
[0120] The processor 801 is configured to execute one or more programs stored in the memory 802 to implement the layout arrangement method described above.
[0121] It can be understood that the processor 801 can be a processor core or a processor chip, or other circuitry that can be programmed and run. And the memory 802 can be a RAM (Random Access Memory, Random Access Memory), ROM (Read-Only Memory, Read-Only Memory), flash memory, etc., but not as a limitation.
[0122] It can also be understood that Figure 8 The structure shown is only schematic, and the electronic device can also include more than Figure 8 The more or fewer components shown, or having the same Figure 8 Different configurations are shown. For example, it may also have an internal communication bus for communication between the processor 801 and the memory 802; or it may have an external communication interface, such as a USB (Universal Serial Bus) interface, a CAN (Controller Area Network) bus interface, etc.; or it may have an information display component such as a display screen, but this is not a limitation.
[0123] Based on the same inventive concept, this embodiment also provides a computer-readable storage medium, such as a floppy disk, optical disk, hard disk, flash memory, USB flash drive, SD (Secure Digital Memory Card), MMC (Multimedia Card), etc., in which one or more programs implementing the above steps are stored. These one or more programs can be executed by one or more processors to implement the above layout method. Further details will not be elaborated here.
[0124] In the embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. The apparatus embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. Furthermore, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Additionally, the displayed or discussed mutual couplings, direct couplings, or communication connections may be through some communication interfaces; indirect couplings or communication connections between devices or units may be electrical, mechanical, or other forms.
[0125] Furthermore, the units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0126] Furthermore, the functional modules in the various embodiments of this application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.
[0127] In this document, relational terms such as first and second and the like can be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions.
[0128] In this document, plural refers to two or more.
[0129] The above description is merely illustrative of the application, and not in limitation of the principles of the application. Various modifications and changes can be made by those of ordinary skill in the art which will encompass the spirit and later principles of the application and fall within the scope of the application. Any modifications, equivalent substitutions, improvements, and the like not described above by way of limitation should be included within the scope of the application.
Claims
1. A layout method, characterized in that, The method includes: In the layout with completed placement and routing, the cells in the crosstalk area are grouped according to their functional logic to obtain each cell group; Within the deployable area of the layout, a corresponding deployment area is allocated to each of the unit groups; Each unit of the unit group is arranged within the arrangement area corresponding to the unit group; Wiring is performed for each of the aforementioned units.
2. The layout method as described in claim 1, characterized in that, Before grouping the units in the crosstalk region according to their respective functional logic, the method further includes: Perform static timing analysis on the layout after placement and routing to determine the location of the target network with crosstalk in the layout; The region in the layout that has at least n target networks is defined as the crosstalk region; where n is a preset positive integer.
3. The layout method as described in claim 1, characterized in that, The step of grouping the units in the crosstalk region according to their functional logic includes: In the crosstalk region, units whose physical locations are less than a preset distance threshold, have no direct timing checks between them, and whose timing check paths do not overlap, are assigned to different unit groups according to their respective functional logic.
4. The layout method as described in claim 1, characterized in that, Assigning corresponding deployment areas to each of the unit groups within the deployable area of the layout includes: Determine the distribution direction of the networks with crosstalk within the crosstalk region; According to the distribution direction, each of the unit groups is divided into corresponding deployment areas within the deployable area; wherein, there are interval areas between adjacent deployment areas.
5. The layout method as described in claim 1, characterized in that, Each of the aforementioned unit groups has a layout area with area constraints. The area constraint is as follows: the units of the unit group corresponding to the deployment area can only be deployed within the deployment area, and other units besides the units of the unit group corresponding to the deployment area are allowed to be deployed within the deployment area.
6. The layout method according to any one of claims 1-5, characterized in that, The method further includes: Obtain the minimum width and minimum spacing of the crosstalk metal layer that satisfy the design rules; the crosstalk metal layer is a metal layer with crosstalk. The reference track spacing of the crosstalk metal layer is determined based on the minimum width and the minimum spacing. Delete the default routing track of the crosstalk metal layer; Generate a target trace track with a spacing of m times the reference track, and route each of the cells in the crosstalk metal layer according to the target trace track; where m is a constant greater than 1.
7. The layout method as described in claim 6, characterized in that, Before obtaining the minimum width and minimum spacing of the crosstalk metal layers to satisfy the design rules, the method further includes: Determine the metal layers used by each network exhibiting crosstalk in the layout; The metal layer used by at least k networks with crosstalk is determined as the crosstalk metal layer; where k is a positive integer.
8. The layout method as described in claim 6, characterized in that, The reference track spacing of the crosstalk metal layer is equal to the sum of the minimum width and the minimum spacing.
9. The layout method as described in claim 6, characterized in that, The method further includes: If the resources of the crosstalk metal layer are insufficient, the other metal layers of the layout will continue to route the cells according to the target routing track.
10. A layout device, characterized in that, The device includes: The grouping module is used to group the cells in the crosstalk area of the layout after the placement and routing are completed according to their functional logic to obtain each cell group; The region division module is used to allocate corresponding deployment areas to each of the unit groups within the deployable area of the map. A deployment module is used to deploy the units of each unit group within the deployment area corresponding to the unit group. A wiring module is used to perform wiring for each of the units.
11. An electronic device, characterized in that, include: Processor and memory; The processor is configured to execute one or more programs stored in the memory to implement the method as described in any one of claims 1-9.
12. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores one or more programs, which can be executed by one or more processors to implement the method as described in any one of claims 1-9.
Citation Information
Patent Citations
High-speed standard cell library layout design method based on FinFET structure
CN110232213A
Design method of semiconductor chip layout
CN114048700A