Redundancy unit chain, layout method and apparatus

CN122471986BActive Publication Date: 2026-09-22广东鸿钧微电子科技有限公司
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202610968864.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-07-01
Publication Date
2026-09-22
Estimated Expiration
2046-07-01

AI Technical Summary

Technical Problem

[0005]本申请提供了一种冗余单元链、布局方法及装置,以解决相关技术中在金属层工程改变命令时冗余单元的逻辑重连受到连接方式限制的问题

Benefits of technology

[0023]有益效果:该贪婪选择策略确保了在遍历过程中,剩余负载能力最大的固定电位连接单元被优先使用,从而使得各个单元的负载消耗速度趋于均衡,避免了某些单元提前耗尽而其他单元仍有大量闲置的情况,最终使得所有固定电位连接单元在完成所有输入端连接后负载尽可能接近,在金属层工程改变命令时可提供更均衡的绕线资源。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122471986B_ABST
    Figure CN122471986B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of integrated circuit design, and discloses a redundancy unit chain, a layout method and a device. The layout method comprises the following steps: acquiring a redundancy unit list to be laid out and coordinate information of the redundancy unit in an integrated circuit layout; determining the connection sequence of the redundancy unit according to the coordinate information; and connecting the output end of a previous redundancy unit with the input end of a subsequent redundancy unit in sequence according to the connection sequence to form a redundancy unit chain. According to the application, the redundancy units are connected into a chain in advance in the layout stage, so that the change of the underlying metal layer can be reduced when a metal layer engineering change order is implemented, and the implementation difficulty of the engineering change order is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of integrated circuit design technology, specifically to redundant cell chains, placement methods, and apparatus. Background Technology

[0002] In the integrated circuit design process, as process nodes upgrade and design complexity increases, design defects or functional upgrades are often discovered during the post-tape-out testing phase. To avoid the time costs of redesigning physical plans, placement and routing, and approval checks, as well as the high costs of re-tape-out, existing technologies employ a scheme of pre-inserting redundant cell arrays at specified intervals during the physical design placement phase. Redundant cells typically consist of sequential devices and combinational logic devices that appear frequently in the design.

[0003] In related technologies, to save on the cost of mask layers for re-fabrication, the input terminals of each group of redundant cells are typically connected to a fixed potential signal, while all output terminals are left floating. The redundant cell array is then inserted into the layout at fixed intervals. When a metal layer engineering change command is required, the logic of the redundant cells can be reconnected to maintain the original substrate mask layer while satisfying the functional modification requirements.

[0004] However, in the above technical solution, since the input terminal of the redundant unit is fixedly connected to a potential and the output terminal is in a floating state, the connection method for logical reconnection of the redundant unit is limited when the command is changed in the metal layer engineering. It is necessary to modify the underlying metal layer to achieve reconnection. Summary of the Invention

[0005] This application provides a redundant unit chain, layout method, and apparatus to solve the problem in related technologies where the logical reconnection of redundant units is limited by the connection method when a metal layer engineering change command is executed.

[0006] In a first aspect, this application provides a redundant unit chain layout method, comprising: obtaining a list of redundant units to be laid out, the list of redundant units including multiple redundant units, and obtaining coordinate information of the multiple redundant units in an integrated circuit layout; determining the connection order of the multiple redundant units according to the coordinate information; and connecting the output terminal of the previous redundant unit to the input terminal of the next redundant unit in sequence according to the connection order to form a redundant unit chain.

[0007] Beneficial Effects: The redundant cell chain layout method of this application obtains the coordinate information of redundant cells in the integrated circuit layout, determines the connection order based on the coordinate information, and connects the output terminal of the previous redundant cell to the input terminal of the next redundant cell in sequence to form a redundant cell chain. This method changes the isolated connection method in the prior art, where all input terminals of redundant cells are connected to a fixed potential and all output terminals are floating, so that a signal transmission path with the beginning and end connected is formed between redundant cells in advance. When metal layer engineering change commands are required in the future, since there is already a physical connection between redundant cells, logic reconnection is no longer limited to the isolated state of fixed input terminals and floating output terminals. The existing connections in the chain can be directly used for logic reorganization, thereby reducing the need to modify the underlying metal layer and reducing the difficulty of implementing metal layer engineering change commands.

[0008] In one optional implementation, determining the connection order of the plurality of redundant units based on the coordinate information includes: dividing the plurality of redundant units into multiple rows according to the size of the vertical coordinate; sorting the redundant units in each row according to the size of the horizontal coordinate, wherein the redundant units in odd-numbered rows are sorted in ascending order of horizontal coordinate, and the redundant units in even-numbered rows are sorted in descending order of horizontal coordinate; and merging the sorted redundant units in each row sequentially according to ascending order of vertical coordinate to obtain the connection order.

[0009] Beneficial effects: This sorting rule makes the physical position order of redundant units on the layout basically consistent with the chain connection order. This spatial proximity relationship makes the connection line length between adjacent redundant units the shortest and the winding resources occupied the least, which is conducive to improving wiring efficiency and reducing signal delay. At the same time, when changing commands in the metal layer engineering, it is easier to realize logic reconnection due to the regular connection path.

[0010] In an optional implementation, after forming the redundant unit chain, the method further includes: checking whether the current redundant unit and the next redundant unit are in different rows; if they are in different rows and the projections of the output terminal of the current redundant unit and the input terminal of the next redundant unit overlap in the vertical direction, setting the projection areas of the output terminal and the input terminal as layout obstruction areas; and adjusting the position of the current redundant unit or the next redundant unit to eliminate the projection overlap.

[0011] Beneficial effects: After forming a redundant cell chain, it checks whether adjacent redundant cells are in different rows and whether their vertical projections overlap. If overlap exists, the projection area is set as a layout obstruction area, and the cell position is adjusted. This process avoids the situation where, when consecutive redundant cells are in different rows and their vertical projections overlap, their connecting lines only need to pass through the lower-level metal layer to achieve physical connection. By actively setting the layout obstruction area and re-layouting, the connecting lines are forced to use higher-level metal layers for routing. Therefore, when changing commands for metal layer engineering, there is no need to modify the lower-level metal layer mask, further saving mask costs.

[0012] In one optional implementation, before obtaining the list of redundant units to be laid out, the method further includes: configuring the offset between the redundant unit chain array and the module boundary, as well as the lateral and longitudinal spacing between each group of redundant unit chains; and setting the unit spacing for each redundant unit so that a preset winding resource spacing is maintained between each group of redundant units.

[0013] Beneficial effects: These settings ensure that redundant unit chains are evenly distributed within the module, with sufficient winding resource space between each chain, avoiding winding congestion and timing deterioration caused by excessive concentration of redundant units. At the same time, they ensure that when a metal layer engineering change command is issued at any location in the design, available redundant units can be found within a specific range to complete the logic reconnection.

[0014] In an optional implementation, the redundant unit chain layout method further includes: determining the required number of fixed-potential connection units and the total number of redundant unit input terminals to be connected to the fixed-potential redundant unit input terminals; allocating the number of input terminals to be connected to each fixed-potential connection unit according to the required number of fixed-potential connection units and the total number of redundant unit input terminals; traversing each input terminal of each redundant unit, and for input terminals not connected to the output terminal of the previous redundant unit, selecting the fixed-potential connection unit with the largest number of currently remaining connectable input terminals for connection.

[0015] Beneficial effects: This method ensures that the input terminals not covered by the chain connection in the redundant unit chain are provided with a stable fixed potential by the fixed potential connection unit, avoiding the floating of the input terminals. At the same time, through the load balancing distribution strategy, the load of each fixed potential connection unit is made as even as possible. When the command is changed in the subsequent metal layer engineering, the signal line of each input terminal can be wound independently without interference.

[0016] In one optional implementation, determining the required number of fixed-potential connection units includes: obtaining the maximum number of input pins for all redundant units in the redundant unit list; determining that the required number of fixed-potential connection units is one when the number of input pins for all redundant units is at most one; determining that the required number of fixed-potential connection units is equal to the maximum number of input pins when the redundant unit with the maximum number of input pins is located at the first position in the connection sequence; and determining that the required number of fixed-potential connection units is equal to the maximum number of input pins minus one when there is a redundant unit with more than one number of input pins among the multiple redundant units and the redundant unit with the maximum number of input pins is not located at the first position in the connection sequence.

[0017] Beneficial effects: This scheme ensures that the number of fixed-potential connection units is minimized while meeting the connection requirements of all input terminals. Thus, when the command is changed in the metal layer engineering, independent access of all input terminal signals can be achieved with the least amount of fixed-potential connection unit resources, avoiding resource waste.

[0018] In one optional implementation, allocating the number of input terminals to be connected to each fixed-potential connection unit includes: determining an average number of redundant unit input terminals connected to each fixed-potential connection unit based on the total number of redundant unit input terminals to be connected to the fixed-potential and the required number of fixed-potential connection units; determining the remainder obtained by dividing the total number by the required number of fixed-potential connection units as a first number, where the first number represents the number of fixed-potential connection units that need to be connected with one more redundant unit input terminal than the average number; determining a fixed-potential connection unit with the same number as the first number, where each fixed-potential connection unit is connected with one more redundant unit input terminal than the average number; and determining the remaining fixed-potential connection units, where the number of redundant unit input terminals connected to each remaining fixed-potential connection unit is equal to the average number.

[0019] Beneficial effects: This allocation method ensures that the number of input terminals is evenly distributed across each fixed potential connection unit, avoiding situations where some units are overloaded while others are idle, and providing a basis for winding balance when changing commands in subsequent metal layer engineering.

[0020] In one alternative implementation, before connecting each input of each redundant unit, the method further includes: initializing the access state of each fixed-potential connection unit to unaccessed, and setting the number of remaining connectable inputs of each fixed-potential connection unit to the number allocated to it.

[0021] Beneficial effects: This initialization step establishes the correct starting state for the subsequent greedy selection process, ensuring that each fixed potential connection unit is in an available state and its load capacity is predetermined, thereby ensuring that the traversal process can be executed accurately according to the preset allocation scheme, and finally achieving the orderly connection of all input terminals.

[0022] In one optional implementation, the step of selecting the fixed-potential connection unit with the largest number of remaining connectable input terminals from all fixed-potential connection units for connection includes: for each redundant unit input terminal that has not been connected to the output terminal of the previous redundant unit, selecting the fixed-potential connection unit with the largest number of remaining connectable input terminals from the fixed-potential connection units whose access status is unaccessed; connecting the current input terminal to the selected fixed-potential connection unit; updating the access status of the fixed-potential connection unit to accessed, and decrementing its remaining connectable input terminal count by one.

[0023] Beneficial effects: This greedy selection strategy ensures that the fixed-potential connection unit with the largest remaining load capacity is used first during the traversal process, thereby making the load consumption rate of each unit tend to be balanced. It avoids the situation where some units are exhausted in advance while other units still have a lot of idle time. Ultimately, it makes the load of all fixed-potential connection units as close as possible after all input terminals are connected, which can provide more balanced winding resources when changing commands in the metal layer engineering.

[0024] In an optional implementation, the redundant unit chain layout method further includes: when connecting the output terminal of the previous redundant unit to the input terminal of the next redundant unit, setting a wiring constraint such that the connecting line is wound using a metal layer higher than the lowest interface metal layer of the redundant unit.

[0025] Beneficial effects: Setting routing constraints during connection forces the connectors to use a metal layer higher than the lowest interface metal layer for routing. Since the lowest interface metal layer is one of the more expensive layers for masking, when changing the metal layer engineering command, if the connector is located on a higher metal layer, there is no need to modify the mask of the lowest interface metal layer, thus significantly saving the masking cost of re-fabrication.

[0026] In one optional implementation, the redundant unit chain layout method further includes: setting routing priorities for signal lines in the redundant unit chain, such that metal layers higher than the lowest interface metal layer of the redundant unit have higher routing priorities.

[0027] Beneficial effect: This priority setting guides the routing tool to prioritize the use of higher-level metal layers for routing. Although its enforceability is lower than that of routing constraints, it can still achieve the purpose of avoiding the use of lower-level metal layers in designs with relatively ample routing resources, thereby saving the mask overhead of lower-level metal layers when changing commands in metal layer engineering.

[0028] Secondly, this application provides a redundant unit chain, comprising: a plurality of redundant units connected sequentially, wherein the output terminal of each redundant unit except the last redundant unit is connected to the input terminal of the next redundant unit; the input terminal of the first redundant unit among the plurality of redundant units is connected to a first fixed potential; and the output terminal of the last redundant unit is connected to a virtual unit.

[0029] Beneficial effects: This structure enables pre-connected signal transmission paths between redundant units, ensuring that the input at the beginning is not floating and the output at the end is not suspended. When commands are changed in subsequent metal layer engineering, since the intra-chain connections already exist, logic reconfiguration can be performed using these pre-connections without modifying the underlying metal layer. This effectively solves the problem in existing technologies where redundant unit logic reconnection is limited by the connection method and requires modification of the underlying metal layer.

[0030] In one alternative implementation, the virtual unit includes at least one of a virtual buffer, a virtual inverter, or a virtual delay unit.

[0031] Beneficial effects: These virtual units provide load for the output of the last redundant unit, preventing the output from floating directly. When changing commands in the metal layer engineering, if the output of the last redundant unit needs to be used, since the virtual unit connection already exists and its metal layer is already in place, there is no need to introduce an additional underlying metal layer for connection, thus further protecting the integrity of the lower layer mask.

[0032] In one optional implementation, the redundant unit chain further includes: at least one fixed potential connection unit, the output terminal of which is connected to an input terminal of the plurality of redundant units that is not connected to the output terminal of the previous redundant unit, for providing a second fixed potential to the unconnected input terminal.

[0033] Beneficial effects: This structure ensures that all input terminals not covered by the chain connection in the redundant unit chain are connected to a fixed potential, avoiding uncertain logic states caused by floating input terminals, so that the entire redundant unit chain is in a stable and usable state before the metal layer engineering changes the command.

[0034] Thirdly, this application provides a redundant unit chain layout apparatus, comprising: an acquisition module, configured to acquire a list of redundant units to be laid out, the list of redundant units including multiple redundant units, and to acquire coordinate information of the multiple redundant units in an integrated circuit layout; a sorting module, configured to determine the connection order of the multiple redundant units according to the coordinate information; and a connection module, configured to connect the output terminal of the previous redundant unit to the input terminal of the next redundant unit in sequence according to the connection order, so as to form a redundant unit chain.

[0035] Fourthly, this application provides an electronic device, including: a memory and a processor, which are communicatively connected to each other. The memory stores computer instructions, and the processor executes the computer instructions to perform the redundant unit chain layout method of the first aspect or any corresponding embodiment described above.

[0036] Fifthly, this application provides a computer-readable storage medium storing computer instructions for causing a computer to execute the redundant unit chain layout method of the first aspect or any corresponding embodiment described above. Attached Figure Description

[0037] To more clearly illustrate the specific embodiments of this application or the technical solutions in the prior art, the drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.

[0038] Figure 1 This is a schematic flowchart of a first method for redundancy unit chain layout according to an embodiment of this application; Figure 2 This is a second flowchart illustrating the redundant unit chain layout method according to an embodiment of this application; Figure 3 This is a schematic diagram of the reciprocating broken-line layout of the redundant unit chain according to an embodiment of this application; Figure 4 This is a schematic diagram of the third process of the redundant unit chain layout method according to the embodiments of this application; Figure 5 This is a schematic diagram of the redundant unit chain array layout according to an embodiment of this application; Figure 6 This is a schematic diagram of the high-layer metal winding after the projection overlap problem is solved according to an embodiment of this application; Figure 7 This is a schematic diagram of the fourth process of the redundant unit chain layout method according to the embodiments of this application; Figure 8 This is a schematic diagram of the fixed potential connection unit connecting the input terminal according to an embodiment of this application; Figure 9 This is a schematic diagram of the redundant unit chain logical connection structure according to an embodiment of this application; Figure 10 This is a structural block diagram of a redundant unit chain layout device according to an embodiment of this application; Figure 11 This is a schematic diagram of the hardware structure of an electronic device according to an embodiment of this application. Detailed Implementation

[0039] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0040] It is understood that before using the technical solutions disclosed in the various embodiments of this application, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this application in an appropriate manner in accordance with relevant laws and regulations, and user authorization should be obtained.

[0041] The terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this application, "multiple" means two or more, unless otherwise explicitly specified.

[0042] The technical solution provided in this application can be applied to the physical design process of integrated circuits and implemented by electronic design automation tools during placement and routing operations. This method pre-connects redundant cells into chains during the placement phase, providing pre-configured signal paths for logic reconnection when subsequent metal layer engineering commands are changed, thereby reducing the need for modifications to the underlying metal layer.

[0043] The embodiments of this application will be described in detail below with reference to the accompanying drawings.

[0044] According to an embodiment of this application, a method for redundant unit chain layout is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.

[0045] This embodiment provides a redundant cell chain layout method, which can be executed by electronic design automation tools. Figure 1 This is a flowchart of a redundant unit chain layout method according to an embodiment of this application, referred to... Figure 1 As shown, the process includes the following steps: Step S101: Obtain the list of redundant cells to be laid out, and the coordinate information of multiple redundant cells in the integrated circuit layout.

[0046] It should be noted that the list of redundant units includes multiple redundant units.

[0047] Specifically, redundant units are pre-inserted spare logic units in integrated circuit design, including sequential devices such as flip-flops, and combinational logic devices such as AND gates, OR gates, and NOT gates. These redundant units are organized in a list format during the physical design phase, with each redundant unit having a defined physical location in the layout, represented by coordinate information on its horizontal and vertical axes.

[0048] For example, in the layout database of an electronic design automation (EDA) tool, each redundant unit corresponds to a location object, and its coordinate values ​​can be obtained through an application programming interface (API). Obtaining the list of redundant units and their coordinate information provides the data foundation for subsequently determining the connection order.

[0049] Step S102: Determine the connection order of multiple redundant units based on the coordinate information.

[0050] Specifically, the connection order determines the sequence in which physical connections are established between redundant units. The purpose of determining the connection order is to place adjacent redundant units as close as possible to each other on the layout, thereby reducing the length of the connection lines and the occupation of routing resources. This step S102 arranges the order based on the horizontal and vertical coordinate values ​​of each redundant unit on the layout, without limiting the specific sorting algorithm, as long as an ordered sequence can be output.

[0051] For example, all redundant units can be arranged in ascending order of their vertical coordinates, and if the vertical coordinates are the same, in ascending order of their horizontal coordinates.

[0052] Step S103: Connect the output terminal of the previous redundant unit to the input terminal of the next redundant unit in sequence according to the connection order to form a redundant unit chain.

[0053] Specifically, the output of the first unit in the sorted sequence of redundant units is connected to an input of the second unit, the output of the second unit is connected to an input of the third unit, and so on, until the last unit. This forms a chain-like structure. Each redundant unit may have multiple inputs, and one unused input can be selected for connection. Through this pre-established chain connection, when subsequent metal layer engineering changes are needed, the existing signal paths within the chain can be used for logic reorganization, thereby reducing modifications to the underlying metal layer.

[0054] The redundant cell chain layout method provided in this embodiment obtains the coordinate information of redundant cells in the integrated circuit layout, determines the connection order based on the coordinate information, and sequentially connects the output terminal of the previous redundant cell to the input terminal of the next redundant cell to form a redundant cell chain. This method changes the isolated connection method in the prior art, where all input terminals of redundant cells are connected to a fixed potential and all output terminals are floating, allowing redundant cells to form a pre-connected signal transmission path. When subsequent metal layer engineering change commands are needed, since there is already a physical connection between redundant cells, logic reconnection is no longer limited to the isolated state of fixed input terminals and floating output terminals. The existing connections within the chain can be directly used for logic reorganization, thereby reducing the need to modify the underlying metal layer and reducing the difficulty of implementing metal layer engineering change commands.

[0055] This embodiment provides a redundant cell chain layout method, which can be executed by electronic design automation tools. Figure 2 This is a flowchart of a redundant unit chain layout method according to an embodiment of this application, referred to... Figure 2 As shown, the process includes the following steps: Step S201: Obtain the list of redundant cells to be placed, and the coordinate information of multiple redundant cells in the integrated circuit layout. For details, please refer to [link to relevant documentation]. Figure 1 Step S101 of the illustrated embodiment will not be described again here.

[0056] Step S202: Determine the connection order of multiple redundant units based on the coordinate information.

[0057] Specifically, step S202 includes: Step S2021: Divide multiple redundant units into multiple rows according to the size of the vertical axis.

[0058] It should be noted that in integrated circuit layouts, redundant cells are usually arranged in rows. Redundant cells with the same y-coordinate belong to the same row. This step groups all redundant cells according to their y-coordinate values, grouping those with the same y-coordinate into one row and those with different y-coordinates into different rows.

[0059] Step S2022: For redundant units in each row, sort them according to the size of the horizontal coordinate. Redundant units in odd-numbered rows are sorted in ascending order of horizontal coordinate, while redundant units in even-numbered rows are sorted in descending order of horizontal coordinate.

[0060] Specifically, the sorting rule is related to the parity of the row numbers. For the first row (odd-numbered rows), the third row (odd-numbered rows), etc., the redundant units are arranged in ascending order of their horizontal coordinates, i.e., from left to right. For the second row (even-numbered rows), the fourth row (even-numbered rows), etc., the redundant units are arranged in descending order of their horizontal coordinates, i.e., from right to left.

[0061] Reference Figure 3 As shown, after sorting according to the above rules, the entire redundant unit array forms a continuous reciprocating zigzag layout. Odd-numbered rows of units are arranged from left to right, and even-numbered rows of units are arranged from right to left. Adjacent rows are connected end to end, so that the redundant units in adjacent sorting positions are close to each other on the physical layout.

[0062] In some optional implementations, the sorting rule in step S2022 above can be implemented in the following ways: Step a1: Obtain the x-coordinate value of each redundant unit.

[0063] Step a2: Determine whether the row containing the redundant unit is an odd or even row.

[0064] Step a3: For odd-numbered rows, arrange all redundant units in ascending order of their horizontal coordinates; for even-numbered rows, arrange all redundant units in descending order of their horizontal coordinates.

[0065] By using this sorting method of odd rows from left to right and even rows from right to left, the redundant units in adjacent sorting positions in the entire redundant unit array are made close to each other on the physical layout.

[0066] Step S2023: Merge the redundant units in each row sequentially according to the order of the vertical coordinates from smallest to largest to obtain the connection order.

[0067] Specifically, first, take all the sorted units from the first row and place them into the connection order sequence; then take all the sorted units from the second row and place them into the sequence; then take all the sorted units from the third row and place them into the sequence; and so on. The final sequence is the connection order.

[0068] Step S203: Connect the output of the previous redundant unit to the input of the next redundant unit in sequence to form a redundant unit chain. For details, please refer to [link to details]. Figure 1 Step S103 of the illustrated embodiment will not be described again here.

[0069] The redundant unit chain layout method provided in this embodiment defines a specific sorting rule for determining the connection order based on coordinate information: rows are divided according to the vertical coordinate; odd-numbered rows are sorted by horizontal coordinate from smallest to largest, and even-numbered rows are sorted by horizontal coordinate from largest to smallest; then, they are merged according to the vertical coordinate order. This sorting rule ensures that the physical position order of redundant units on the layout is basically consistent with the chain connection order. This spatial proximity minimizes the length of connection lines between adjacent redundant units, reduces routing resources, improves routing efficiency, and reduces signal delay. Furthermore, when commands are changed in the metal layer engineering, the regular connection paths facilitate logical reconnection.

[0070] This embodiment provides a redundant cell chain layout method, which can be executed by electronic design automation tools. Figure 4 This is a flowchart of a redundant unit chain layout method according to an embodiment of this application, referred to... Figure 4 As shown, the process includes the following steps: Step S301: Configure layout parameters before obtaining the list of redundant units to be laid out.

[0071] Specifically, step S301 includes the following steps: Step S3011: Configure the offset between the redundant unit chain array and the module boundary, as well as the horizontal and vertical spacing between each group of redundant unit chains.

[0072] It should be noted that in the layout, redundant unit chains are arranged in an array. Offsets are used to determine the starting position of the first group of redundant unit chains relative to the module boundary; both lateral and longitudinal offsets can be specified. Lateral and longitudinal spacings are used to determine the distance between adjacent groups of redundant unit chains. (Refer to...) Figure 5 As shown, multiple sets of redundant unit chains are evenly distributed within the module according to the set horizontal and vertical spacing, with winding resource space reserved between each set of chains. The values ​​of these parameters are related to the process node and the unit driving capability, and designers can set them according to the actual design scale.

[0073] Step S3012: Set the unit spacing for each redundant unit so that a preset winding resource spacing is maintained between each group of redundant units.

[0074] It should be noted that cell spacing refers to the blank area reserved around a single redundant cell for subsequent wiring and placement of other logic cells. By setting cell spacing, it is possible to avoid excessive density of redundant cells, which could lead to congestion of wiring resources.

[0075] In some alternative implementations, step S3012 above can be further refined as follows: Step b1: Set the spacing in the four directions (up, down, left, and right) for each redundant unit.

[0076] Step b2: According to the requirements of the design rules, adjust the spacing value to ensure that the minimum distance between redundant units meets the process requirements.

[0077] By properly setting the offset, spacing, and cell spacing, redundant cell chains can be evenly distributed within the module, reserving sufficient winding resources for subsequent metal layer engineering change commands.

[0078] Step S302: Obtain the list of redundant cells to be placed, and the coordinate information of multiple redundant cells in the integrated circuit layout. For details, please refer to [link to relevant documentation]. Figure 2Step S201 of the illustrated embodiment will not be described again here.

[0079] Step S303: Determine the connection sequence of multiple redundant units based on the coordinate information. For details, please refer to [link to relevant documentation]. Figure 2 Step S202 of the illustrated embodiment will not be described again here.

[0080] Step S304: Connect the output of the previous redundant unit to the input of the next redundant unit in sequence to form a redundant unit chain. For details, please refer to [link to details]. Figure 2 Step S203 of the illustrated embodiment will not be described again here.

[0081] Step S305: After forming the redundant unit chain, check whether the current redundant unit and the next redundant unit are in different rows.

[0082] Specifically, since redundant units are arranged in rows on the layout, redundant units within the same row have the same ordinate, while redundant units in different rows have different ordinates. In step S305, the already connected chains of redundant units are traversed, and for each pair of adjacent redundant units, their ordinate values ​​are compared. If the ordinates are different, it means that the two redundant units are located in different rows.

[0083] Step S306: When the projections of the output of the current redundant unit and the input of the next redundant unit overlap in the vertical direction, the projection areas of the output and input are set as layout obstruction areas.

[0084] Specifically, when two redundant units are located in different rows, it is further checked whether the vertical projection of the output of the former unit and the vertical projection of the input of the latter unit overlap, that is, whether their horizontal positions intersect. If there is an overlap, according to conventional wiring methods, the connection may only need to pass through the very lowest metal layer, such as directly through the contact hole and the first metal layer to achieve a physical connection. This would require modification of the lower metal layer when changing commands in subsequent metal layer engineering.

[0085] To avoid this situation, this step sets the projected areas of the output and input terminals as layout obstruction areas. Layout obstruction areas are areas in the layout where other devices or wiring are prohibited from being placed. Setting this area prevents routing tools from using lower metal layers for connections.

[0086] Step S307: Adjust the position of the current redundant unit or the next redundant unit to eliminate projection overlap.

[0087] Specifically, by shifting the position of the current redundant unit or the next redundant unit, for example by slightly offsetting it in the horizontal direction, the projections of the two no longer overlap. After adjustment, the connecting lines can no longer be implemented via simple vertical paths; instead, higher-level metal layers must be used for winding. (See reference...) Figure 6 As shown, the output interface of the current redundant unit and the input interface of the next redundant unit are connected through a metal layer higher than the lowest interface metal layer, thus avoiding the use of the bottom metal layer.

[0088] The redundant unit chain layout method provided in this embodiment further limits the configuration of array offset, lateral spacing, vertical spacing, and unit spacing before layout. Reasonable configuration of these parameters ensures that the redundant unit chains are evenly distributed within the module, reserving sufficient winding resource space between each chain group. This avoids winding congestion and timing deterioration caused by excessive concentration of redundant units, while ensuring that when a metal layer engineering change command is issued at any location in the design, available redundant units can be found within a specific range to complete logical reconnection. Furthermore, after forming the redundant unit chain, it checks whether adjacent redundant units are in different rows and whether their vertical projections overlap. If overlap exists, the projection area is set as a layout obstruction area, and the unit position is adjusted. This process avoids the situation where, when consecutive redundant units are in different rows and their vertical projections overlap, their connection lines only need to pass through the lower metal layer to achieve physical connection. By actively setting the layout obstruction area and re-layouting, the connection lines are forced to use higher metal layers for winding, thus eliminating the need to modify the lower metal layer mask when a metal layer engineering change command is issued, further saving mask costs.

[0089] The two improvements mentioned above work together to achieve the technical effect of reducing modifications to the underlying metal layer when using engineering change commands for the metal layer, thereby reducing the difficulty of implementing engineering change commands and mask costs.

[0090] This embodiment provides a redundant cell chain layout method, which can be executed by electronic design automation tools. Figure 7 This is a flowchart of a redundant unit chain layout method according to an embodiment of this application, referred to... Figure 7 As shown, the process includes the following steps: Step S401: Obtain the list of redundant cells to be placed, and the coordinate information of multiple redundant cells in the integrated circuit layout. For details, please refer to [link to relevant documentation]. Figure 2 Step S201 of the illustrated embodiment will not be described again here.

[0091] Step S402: Determine the connection sequence of multiple redundant units based on the coordinate information. For details, please refer to [link to relevant documentation]. Figure 2 Step S202 of the illustrated embodiment or Figure 4 Step S302 of the illustrated embodiment.

[0092] Step S403: Determine the number of fixed-potential connection units required, and the total number of redundant unit input terminals to be connected to the fixed potential.

[0093] Specifically, a fixed-potential connection unit is used to provide a fixed-potential signal to redundant units, such as connecting to the power supply voltage or ground voltage. In a chain of redundant units, all input terminals except those connected to the output of the preceding unit need to be connected to a fixed potential to avoid floating.

[0094] In step S403, when determining the required number of fixed-potential connection units, it is necessary to first obtain the maximum number of input pins of all redundant units in the redundant unit list. Then, a judgment is made based on the following three cases: The first scenario: If the number of input pins of all redundant units does not exceed one, then only one fixed-potential connection unit is needed.

[0095] The second scenario: If there is a redundant unit with more than one input pin, and the redundant unit with the largest number of input pins is located first in the connection sequence, then the number of fixed-potential connection units is equal to the largest number of input pins.

[0096] The third scenario: If there is a redundant unit with more than one input pin, and the redundant unit with the largest number of input pins is not located in the first position of the connection sequence, then the number of fixed-potential connection units is equal to the maximum number of input pins minus one.

[0097] Simultaneously, the total number of redundant unit inputs that need to be connected to a fixed potential is calculated. This is achieved by subtracting the inputs already connected to the outputs of the previous unit from the inputs of each redundant unit, resulting in the sum of the remaining inputs. This scheme ensures that the number of fixed-potential connection units is minimized while still meeting all input connection requirements. Consequently, when commands are changed during metal layer engineering, independent access to all input signals is achieved with minimal fixed-potential connection unit resources, avoiding resource waste.

[0098] Step S404: Based on the required number of fixed potential connection units and the total number of redundant unit input terminals, allocate the number of input terminals to be connected to each fixed potential connection unit.

[0099] Specifically, in step S404, the number of input terminals to be connected is allocated for each fixed-potential connection unit, including: Step c1: Based on the total number of redundant unit input terminals to be connected to the fixed potential and the required number of fixed potential connection units, determine the average number of redundant unit input terminals connected to each fixed potential connection unit, and determine the remainder obtained by dividing the total number by the required number of fixed potential connection units as the first number. The first number represents the number of fixed potential connection units that need to be connected with one more redundant unit input terminal than the average number.

[0100] Step c2: Determine the same number of fixed potential connection units as the first number, wherein the number of redundant unit input terminals connected to each fixed potential connection unit is one more than the average number.

[0101] Step c3: Determine the remaining fixed-potential connection units. The number of redundant unit input terminals connected to each remaining fixed-potential connection unit is equal to the average number.

[0102] Reference Figure 8 As shown, multiple fixed-potential connection units are connected to the input pins in the redundant unit chain that are not connected to the output of the previous unit. Each fixed-potential connection unit can simultaneously provide a fixed-potential signal to the inputs of multiple redundant units. This allocation method ensures that the number of inputs is evenly distributed among the fixed-potential connection units, avoiding situations where some units are overloaded while others are idle. This provides a basis for winding balancing when changing commands in subsequent metal layer engineering.

[0103] Step S405: Traverse each input terminal of each redundant unit. For an input terminal that is not connected to the output terminal of the previous redundant unit, select the unit with the largest number of remaining connectable input terminals from all fixed potential connection units and connect it.

[0104] Before starting the traversal, the access status of each fixed-potential connection unit needs to be initialized to unaccessed, and the number of its remaining connectable input terminals needs to be set to the number allocated to that unit in step S404. This initialization step establishes the correct starting state for the subsequent greedy selection process, ensuring that each fixed-potential connection unit is in an available state and that its load capacity has been predetermined. This ensures that the traversal process can be executed accurately according to the preset allocation scheme, ultimately achieving the orderly connection of all input terminals.

[0105] During traversal, for each redundant unit input that is not connected to the output of the previous redundant unit, perform the following operations: Step d1: Select the unit with the largest number of remaining connectable input terminals from all fixed potential connection units that are currently not accessed.

[0106] Step d2: Connect the input terminal to the selected fixed potential connection unit.

[0107] Step d3: Update the access status of the fixed potential connection unit to "accessed" and decrease the number of its remaining connectable input terminals by one.

[0108] By employing the greedy selection strategy described above, it is ensured that the fixed-potential connection unit with the largest remaining load capacity is used first during the traversal process. This makes the load consumption rate of each unit tend to be balanced, avoiding the situation where some units are exhausted in advance while other units still have a lot of idle time. Ultimately, this ensures that the loads of all fixed-potential connection units are as close as possible after all input connections are completed, providing more balanced winding resources when changing commands in the metal layer engineering.

[0109] Step S406: Connect the output of the previous redundant unit to the input of the next redundant unit in sequence to form a redundant unit chain. For details, please refer to [link to details]. Figure 2 Step S203 of the illustrated embodiment.

[0110] It should be noted that the processing steps of the fixed potential connection units involved in this embodiment are independent of the formation steps of the redundant unit chain, and there is no fixed timing constraint between the two. In this embodiment, it is arranged to be executed before the formation of the redundant unit chain, but it is not limited to this order. In practical applications, it can be flexibly adjusted according to the layout process.

[0111] The redundant unit chain layout method provided in this embodiment performs the allocation and connection operations of fixed-potential connection units before or after the formation of the redundant unit chain. By determining the number of fixed-potential connection units and the total number of input terminals to be connected, the number of input terminals is evenly allocated to each fixed-potential connection unit, and the actual connection is performed through a traversal and greedy selection strategy. This method ensures that the input terminals not covered by the chain connection in the redundant unit chain are provided with a stable fixed potential by the fixed-potential connection units, avoiding floating input terminals. At the same time, through a load balancing allocation strategy, the load of each fixed-potential connection unit is made as even as possible. When changing commands in subsequent metal layer engineering, the signal lines of each input terminal can be wound independently without interference.

[0112] Based on the foregoing embodiments, optionally, in some embodiments of this application, the redundant unit chain layout method further includes: Step e1: When connecting the output of the previous redundant unit to the input of the next redundant unit, a wiring constraint is set so that the connection line is wound using a metal layer higher than the lowest interface metal layer of the redundant unit.

[0113] Specifically, the lowest interface metal layer of a redundant unit is usually the bottommost metal layer, and its mask is relatively expensive. By setting routing constraints, routing tools are forced to avoid this metal layer and instead use higher-level metal layers to establish connections. Thus, if subsequent metal layer engineering commands require modification of the connections, since the connections are located on higher-level metal layers, there is no need to change the mask of the lowest interface metal layer, significantly saving the cost of re-fabrication.

[0114] The redundant unit chain layout method provided in this embodiment sets routing constraints during connection, forcing the connecting lines to use a metal layer higher than the lowest interface metal layer for routing. Since the lowest interface metal layer is one of the layers with higher mask costs, when a metal layer engineering change command is executed, if the connecting line is located in a higher metal layer, there is no need to modify the mask of the lowest interface metal layer, thereby significantly saving the mask cost of re-fabrication.

[0115] Based on the foregoing embodiments, optionally, in some embodiments of this application, the redundant unit chain layout method further includes: Step f1 sets routing priorities for signal lines in the redundant unit chain, so that metal layers with higher than the lowest interface metal layer of the redundant unit have higher routing priorities.

[0116] Specifically, by using constraint commands provided by electronic design automation (EDA) tools, a metal layer preference list can be assigned to each signal line in the redundant unit chain, giving higher-level metal layers a higher priority during routing. Although this setting is less mandatory than routing constraints, it can still effectively guide routing tools to prioritize the use of higher-level metal layers for routing in designs with ample routing resources, thereby avoiding the use of lower-level metal layers.

[0117] The redundant unit chain layout method provided in this embodiment sets routing priorities, giving higher routing priorities to metal layers above the lowest interface metal layer. This priority setting guides the routing tool to prioritize using higher-level metal layers for routing. Although the enforcement is lower than routing constraints, it can still achieve the goal of avoiding the use of lower-level metal layers in designs with relatively ample routing resources. This saves on the mask overhead of lower-level metal layers when changing commands in metal layer engineering, providing designers with a more flexible alternative.

[0118] This embodiment provides a redundant unit chain. Specifically, refer to... Figure 9 As shown, the redundant unit chain includes: Multiple redundant units are connected sequentially. The output of each redundant unit (except the last one) is connected to the input of the next redundant unit. The input of the first redundant unit is connected to a first fixed potential. The output of the last redundant unit is connected to a dummy unit.

[0119] Figure 9 The logical connection structure of the redundant unit chain is illustrated schematically: multiple redundant units are connected end to end, the input terminal of the first unit is connected to a fixed potential, and the output terminal of the last unit is connected to a virtual unit.

[0120] This structure creates pre-connected signal transmission paths between redundant units, ensuring that the input at the beginning is not floating and the output at the end is not suspended. When commands are changed in subsequent metal layer engineering, since the intra-chain connections already exist, logic reconfiguration can be performed using these pre-connections without modifying the underlying metal layer. This effectively solves the problem in existing technologies where redundant unit logic reconnection is limited by the connection method and requires modification of the underlying metal layer.

[0121] It should be noted that the first fixed potential can be the power supply voltage or ground voltage. The virtual unit is used to provide a load to the output of the last redundant unit, preventing the output from floating directly. The virtual unit can include at least one of a virtual buffer, a virtual inverter, or a virtual delay unit.

[0122] These virtual units provide load for the output of the last redundant unit, preventing the output from floating directly. When the metal layer engineering changes the command, if the output of the last redundant unit needs to be used, since the virtual unit is already connected and its metal layer already exists, there is no need to introduce an additional underlying metal layer for connection, thus further protecting the integrity of the lower layer mask.

[0123] In some alternative implementations, the redundant unit chain further includes at least one fixed-potential connection unit. The output of this fixed-potential connection unit is connected to an input terminal of the plurality of redundant units that is not connected to the output of a previous redundant unit, for providing a second fixed potential to the unconnected input terminal. The second fixed potential may be the same as the first fixed potential, for example, both being power supply voltages; or they may be different, for example, one being a power supply voltage and the other being ground voltage.

[0124] This structure ensures that all inputs not covered by the chain connection in the redundant unit chain are connected to a fixed potential, avoiding uncertain logic states caused by floating inputs, and making the entire redundant unit chain in a stable and usable state before the metal layer engineering changes the command.

[0125] This embodiment also provides a redundant unit chain layout device for implementing the above embodiments and preferred embodiments; details already described will not be repeated. As used below, the term "module" can refer to a combination of software and / or hardware that performs a predetermined function. Although the device described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.

[0126] This embodiment provides a redundant unit chain layout device, referring to... Figure 10 As shown, it includes: The acquisition module 501 is used to acquire a list of redundant units to be laid out, the list of redundant units includes multiple redundant units, and to acquire the coordinate information of multiple redundant units in the integrated circuit layout. The sorting module 502 is used to determine the connection order of multiple redundant units based on coordinate information; The connection module 503 is used to connect the output terminal of the previous redundant unit to the input terminal of the next redundant unit in sequence according to the connection order, so as to form a redundant unit chain.

[0127] In some alternative implementations, the sorting module 502 includes: Row division unit, used to divide multiple redundant units into multiple rows according to the size of the vertical axis; The in-row sorting unit is used to sort the redundant units in each row according to the size of the x-coordinate. The redundant units in odd-numbered rows are sorted in ascending order of x-coordinate, and the redundant units in even-numbered rows are sorted in descending order of x-coordinate. The merge unit is used to merge redundant units in each row in ascending order of their vertical coordinates to obtain the connection order.

[0128] In some alternative implementations, the connection module 503 includes: The constraint setting unit is used to set wiring constraints during connection, so that the connection line is wound using a metal layer higher than the lowest interface metal layer of the redundancy unit.

[0129] In some alternative embodiments, the apparatus further includes: The configuration module is used to configure the offset between the redundant unit chain array and the module boundary, as well as the horizontal and vertical spacing between each group of redundant unit chains, before obtaining the list of redundant units to be laid out, and to set the unit spacing for each redundant unit.

[0130] In some alternative embodiments, the apparatus further includes: The fixed potential processing module is used to determine the number of fixed potential connection units required and the total number of input terminals of all redundant units to be connected to the fixed potential. Based on the number of fixed potential connection units required and the total number, it allocates the number of input terminals to be connected to each fixed potential connection unit, and iterates through each input terminal of each redundant unit. For input terminals that are not connected to the output terminal of the previous redundant unit, it selects the fixed potential connection unit with the largest number of remaining connectable input terminals for connection.

[0131] Furthermore, the fixed potential processing module includes: The quantity determination unit is used to obtain the maximum number of input pins for all redundant units in the redundant unit list, and determine the required number of fixed-potential connection units based on the following: When each of the multiple redundant units has at most one input pin, the required number of fixed-potential connection units is determined to be one. In the case where there is a redundant unit with more than one input pin among multiple redundant units, and the redundant unit with the largest number of input pins is located at the first position in the connection sequence, the number of fixed potential connection units required is determined to be equal to the maximum number of input pins. If there is a redundant unit with more than one input pin among multiple redundant units, and the redundant unit with the largest number of input pins is not the first in the connection sequence, the number of fixed potential connection units required is determined to be equal to the maximum number of input pins minus one. The allocation unit is configured to determine, based on the total number of redundant unit input terminals to be connected to a fixed potential and the required number of fixed potential connection units, the average number of redundant unit input terminals connected to each fixed potential connection unit, and the first number of fixed potential connection units that need to be connected with one more redundant unit input terminal than the average number; determine the same number of fixed potential connection units as the first number, wherein each fixed potential connection unit is connected with one more redundant unit input terminal than the average number; and determine the remaining fixed potential connection units, wherein the number of redundant unit input terminals connected to each remaining fixed potential connection unit is equal to the average number. The process iterates through the connection units. Before iterating through each input of each redundant unit, it initializes the access status of each fixed-potential connection unit to unaccessed and sets the number of remaining connectable inputs for each fixed-potential connection unit to the number already allocated. During the iteration, it selects the fixed-potential connection unit with the largest number of remaining connectable inputs from the unaccessed units, connects the current input to the selected fixed-potential connection unit, updates the access status of the fixed-potential connection unit to accessed, and decrements its number of remaining connectable inputs by one.

[0132] The redundant unit chain layout apparatus provided in this application can execute the redundant unit chain layout method provided in any embodiment of this application, and has the corresponding functional modules and beneficial effects for executing the method. Further functional descriptions of the various modules and units are the same as those in the corresponding embodiments described above, and will not be repeated here.

[0133] Figure 11 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application.

[0134] The following is a detailed reference. Figure 11 This diagram illustrates a suitable structural schematic for implementing the electronic device described in the embodiments of this application. The electronic device may include a processor (e.g., a central processing unit, graphics processor, etc.) 601, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 602 or a program loaded from memory 608 into random access memory (RAM) 603. The RAM 603 also stores various programs and data required for the operation of the electronic device. The processor 601, ROM 602, and RAM 603 are interconnected via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0135] Typically, the following devices can be connected to I / O interface 605: input devices 606 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 607 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; memory devices 608 including, for example, magnetic tapes, hard disks, etc.; and communication devices 609. Communication device 609 allows electronic devices to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 11 Electronic devices with various devices are shown, but it should be understood that it is not required to implement or have all of the devices shown, and more or fewer devices may be implemented or have instead.

[0136] Specifically, according to embodiments of this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this application include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 609, or installed from a memory 608, or installed from a ROM 602. When the computer program is executed by the processor 601, it performs the functions defined in the redundant unit chain layout method of embodiments of this application.

[0137] Figure 11The electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this application.

[0138] This application also provides a computer-readable storage medium. The methods described in this application can be implemented in hardware or firmware, or implemented as recordable on a storage medium, or implemented as computer code downloaded over a network and originally stored on a remote storage medium or a non-transitory machine-readable storage medium and then stored on a local storage medium. Thus, the methods described herein can be processed by software stored on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. The storage medium can be a magnetic disk, optical disk, read-only memory, random access memory, flash memory, hard disk, or solid-state drive, etc.; further, the storage medium can also include combinations of the above types of memory. It is understood that computers, processors, microprocessor controllers, or programmable hardware include storage components capable of storing or receiving software or computer code. When the software or computer code is accessed and executed by the computer, processor, or hardware, the redundant unit chain layout method shown in the above embodiments is implemented.

[0139] A portion of this application can be applied as a computer program product, such as computer program instructions, which, when executed by a computer, can invoke or provide the methods and / or technical solutions according to this application through the operation of the computer. Those skilled in the art will understand that the forms in which computer program instructions exist in a computer-readable medium include, but are not limited to, source files, executable files, installation package files, etc. Correspondingly, the ways in which computer program instructions are executed by a computer include, but are not limited to: the computer directly executing the instructions, or the computer compiling the instructions and then executing the corresponding compiled program, or the computer reading and executing the instructions, or the computer reading and installing the instructions and then executing the corresponding installed program. Here, the computer-readable medium can be any available computer-readable storage medium or communication medium accessible to a computer.

[0140] Although embodiments of this application have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of this application, and all such modifications and variations fall within the scope defined by the appended claims.

Claims

1. A method for arranging redundant unit chains, characterized in that, include: Obtain a list of redundant units to be laid out, the list of redundant units including multiple redundant units, and obtain the coordinate information of the multiple redundant units in the integrated circuit layout; Based on the coordinate information, the connection order of the multiple redundant units is determined; According to the connection order, the output terminal of the previous redundant unit is connected to the input terminal of the next redundant unit in sequence to form a redundant unit chain. Before obtaining the list of redundant units to be laid out, the process also includes: configuring the offset between the redundant unit chain array and the module boundary, as well as the horizontal and vertical spacing between each group of redundant unit chains; and setting the unit spacing for each redundant unit. The step of determining the connection order of the multiple redundant units based on the coordinate information includes: dividing the multiple redundant units into multiple rows according to the size of the vertical coordinate; sorting the redundant units in each row according to the size of the horizontal coordinate, wherein the redundant units in odd-numbered rows are sorted in ascending order of horizontal coordinate, and the redundant units in even-numbered rows are sorted in descending order of horizontal coordinate; and merging the sorted redundant units in each row in ascending order of vertical coordinate to obtain the connection order. After forming the redundant unit chain, the method further includes: checking whether the current redundant unit and the next redundant unit are in different rows; if they are in different rows and the projections of the output terminal of the current redundant unit and the input terminal of the next redundant unit overlap in the vertical direction, setting the projection areas of the output terminal and the input terminal as layout obstruction areas; adjusting the position of the current redundant unit or the next redundant unit to eliminate the projection overlap. The redundant unit chain layout method further includes: when connecting the output end of the previous redundant unit to the input end of the next redundant unit, setting a wiring constraint so that the connecting line is wound using a metal layer higher than the lowest interface metal layer of the redundant unit.

2. The redundant unit chain layout method according to claim 1, characterized in that, The redundant unit chain layout method further includes: Determine the number of fixed-potential connection units required, and the total number of redundant unit inputs to be connected to the fixed potential; Based on the required number of fixed-potential connection units and the total number of redundant unit inputs, allocate the number of inputs to be connected to each fixed-potential connection unit. Iterate through each input terminal of each redundant unit. For an input terminal that is not connected to the output terminal of the previous redundant unit, select the unit with the largest number of remaining connectable input terminals from all fixed-potential connection units and connect it.

3. The redundant unit chain layout method according to claim 2, characterized in that, Determining the required number of fixed-potential connection units includes: Obtain the maximum number of input pins for all redundant units in the redundant unit list; If the number of input pins of all redundant units is at most one, then the number of fixed-potential connection units required is determined to be one. When a redundant unit with the maximum number of input pins is located at the beginning of the connection sequence, the required number of fixed-potential connection units is determined to be equal to the maximum number of input pins. If there is a redundant unit with more than one input pin among the multiple redundant units, and the redundant unit with the maximum number of input pins is not the first in the connection sequence, then the required number of fixed-potential connection units is determined to be equal to the maximum number of input pins minus one.

4. The redundant unit chain layout method according to claim 2, characterized in that, The allocation of the number of input terminals to be connected for each fixed-potential connection unit includes: Based on the total number of redundant unit input terminals to be connected to the fixed potential and the required number of fixed potential connection units, determine the average number of redundant unit input terminals connected to each fixed potential connection unit, and determine the remainder obtained by dividing the total number by the required number of fixed potential connection units as the first number. The first number represents the number of fixed potential connection units that need to be connected with one more redundant unit input terminal than the average number. Determine the same number of fixed potential connection units as the first number, wherein the number of redundant unit input terminals connected to each fixed potential connection unit is one more than the average number; The remaining fixed-potential connection units are determined, and the number of redundant unit input terminals connected to each of the remaining fixed-potential connection units is equal to the average number.

5. The redundant unit chain layout method according to claim 2, characterized in that, Before connecting each input of each redundant unit, the process also includes: Initialize the access status of each fixed-potential connection unit to unaccessed, and the number of remaining connectable input terminals of each fixed-potential connection unit to the number that has been allocated. Furthermore, during the traversal process, selecting the unit with the largest number of remaining connectable input terminals from all fixed-potential connection units for connection includes: For each redundant unit input that is not connected to the output of the previous redundant unit, select the unit with the most remaining connectable inputs from the fixed-potential connection units that are not accessed. Connect the current input terminal to the selected fixed potential connection unit; Update the access status of the fixed potential connection unit to "accessed" and decrease the number of its remaining connectable input terminals by one.

6. The redundant unit chain layout method according to claim 1, characterized in that, The redundant unit chain layout method further includes: Set routing priorities for signal lines in the redundant unit chain, such that metal layers higher than the lowest interface metal layer of the redundant unit have higher routing priorities.

7. A redundant unit chain layout device, characterized in that, include: The acquisition module is used to acquire a list of redundant units to be laid out, the list of redundant units including multiple redundant units, and to acquire the coordinate information of the multiple redundant units in the integrated circuit layout. The sorting module is used to determine the connection order of the multiple redundant units based on the coordinate information. A connection module is used to connect the output terminal of the previous redundant unit to the input terminal of the next redundant unit in sequence according to the connection order, so as to form a redundant unit chain. The sorting module includes: a row partitioning unit, used to divide the multiple redundant units into multiple rows according to the size of the vertical coordinate; an intra-row sorting unit, used to sort the redundant units in each row according to the size of the horizontal coordinate, wherein the redundant units in odd-numbered rows are sorted in ascending order of horizontal coordinate, and the redundant units in even-numbered rows are sorted in descending order of horizontal coordinate; and a merging unit, used to merge the sorted redundant units in each row sequentially according to the ascending order of the vertical coordinate to obtain the connection order. The connection module further includes a constraint setting unit, which is used to set wiring constraints during connection, so that the connection line is wound using a metal layer higher than the lowest interface metal layer of the redundancy unit. The connection module is also used to check whether the current redundant unit and the next redundant unit are in different rows after the redundant unit chain is formed; if they are in different rows and the projections of the output end of the current redundant unit and the input end of the next redundant unit overlap in the vertical direction, the projection areas of the output end and the input end are set as layout obstruction areas; the position of the current redundant unit or the next redundant unit is adjusted to eliminate the projection overlap. The device further includes a configuration module, configured to configure the offset between the redundant unit chain array and the module boundary, as well as the lateral and longitudinal spacing between each group of redundant unit chains, before obtaining the list of redundant units to be laid out, and to set the unit spacing for each redundant unit.

Citation Information

Patent Citations

  • Method for adding spare via into spare cell

    CN105069228A

  • Integrated circuit and metal layer ECO method thereof

    CN119272704A