Computer implemented method for translating flat transistor shapes into transistor pcells, semiconductor chip and computer system

The computer-implemented method automates the translation of flat transistor shapes into pcells, addressing the inefficiencies of manual conversion in semiconductor chip design by reducing time and costs, and enhancing layout management and verification.

WO2026021869A1PCT designated stage Publication Date: 2026-01-29INTERNATIONAL BUSINESS MACHINE CORPORATION +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2025/069639
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-10-14
Filing Date
2025-07-09
Publication Date
2026-01-29

AI Technical Summary

Technical Problem

Handling flat transistor layouts in semiconductor chip design is time-consuming due to the need for manual conversion to transistor pcells, which involves detecting transistor correspondence and replacing flat shapes, leading to increased design costs.

Method used

A computer-implemented method that automates the translation of flat transistor shapes into transistor pcells by extracting a netlist and layout data, detecting power and signal connections, establishing a permute state, and placing pcells in the layout, thereby eliminating the need for manual conversion.

Benefits of technology

Facilitates faster and more efficient semiconductor chip design by automating the conversion to pcell layouts, reducing design time and costs, and enabling easier layout management and verification.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2025069639_29012026_PF_FP_ABST
    Figure EP2025069639_29012026_PF_FP_ABST
Patent Text Reader

Abstract

A computer implemented method for translating flat transistor shapes (12, 14, 16) into transistor pcells (22, 32) during a hardware design process of a semiconductor chip (100) comprising transistors (1, 2), the method comprising based on the data from a first layout (10) detecting power connections (44, 46) for each transistor (1, 2) of the first layout (10) and tracing signal connections and shared contacts (26) for each transistor (1, 2) of the first layout (10); establishing a permute state for each transistor (1, 2) of the first layout (10); defining transistor pcells (22, 32) from the data and the permute state for each transistor (1, 2); and placing the transistor pcells (22, 32) in the first layout (10) and removing the flat transistor shapes (12, 14, 16) from the first layout (10). A semiconductor chip (100) for a computer system (212) and a computer system (212).
Need to check novelty before this filing date? Find Prior Art

Description

COMPUTER IMPLEMENTED METHOD FOR TRANSLATING FLAT TRANSISTOR SHAPES INTO TRANSISTOR PCELLS, SEMICONDUCTOR CHIP AND COMPUTERSYSTEM

[0001] The present invention relates in general to computer implemented method for translating flat transistor shapes into transistor pcells during a hardware design process of a semiconductor chip comprising transistors, a semiconductor chip for a computer system, a computer system, a computer program product and a data processing system.BACKGROUND

[0002] Transistor level layouts are essential to build processor chips. An example for a transistor level layout could be a standard logic gate like a NAND2 or a more complex layout like a LATCH (storage element). The layout of a transistor can be represented by flat shapes, where a transistor is at least defined by a gate oxide (RX), a gate (PC), and a contact to active (CA) or by a so-called transistor pcell, a parameterized object that builds the transistor shapes based on parameters and is used in the automated design of analog or digital integrated circuits.

[0003] At the beginning of a project often the transistor is represented with flat shapes due to either non-availability of a transistor pcell or deficiencies in the transistor layout generation, e.g. invalid dimensions and / or overlaps. Handling flat layouts is time consuming. Handling layouts that instantiate transistor pcells is less time consuming since transistor instances can be selected, parameters modified and net connectivity can be visualized.

[0004] WO2022266906A1 discloses a method and apparatus for generating a layout of an integrated circuit, used for reducing manual participation in a layout design process of an integrated circuit, and realizing automation of layout design of the integrated circuit. The method comprises: obtaining parameter information of a plurality of basic components comprised in a schematic circuit diagram, wherein the basic components may be obtained by means of unified packaging processing; determining, according to the parameter information, a plurality of component layouts corresponding to the plurality of basic components, that is, obtaining specific shapes and sizes of the plurality of basic components in a layout of an integrated circuit; obtaining relative layout information of the plurality of component layouts, and determining physical location information of the plurality ofcomponent layouts according to the relative layout information and the plurality of component layouts, for example, determining coordinates of each component layout in the plurality of component layouts; and generating, according to the physical location information, the layout of the integrated circuit corresponding to the schematic circuit diagram.SUMMARY

[0005] A computer implemented method for translating flat transistor shapes into transistor pcells during a hardware design process of a semiconductor chip comprising transistors is proposed, the method comprising: extracting a netlist and a first layout of the semiconductor chip; receiving data from the netlist and the first layout comprising parameters defining the properties of the transistors as well as a connectivity of the transistors; based on the data from the first layout detecting power connections for each transistor of the first layout and tracing signal connections and shared contacts for each transistor of the first layout; establishing a permute state for each transistor of the first layout; defining transistor pcells from the data and the permute state for each transistor; and placing the transistor pcells in the first layout and removing the flat transistor shapes from the first layout.

[0006] According to an embodiment of the invention translation of flat transistor layouts into pcell layouts may be automated and with this allows a faster maintenance of transistor layouts. A pcell layout enables designers / layouters to quickly understand a layout since they can search for transistor instance names, show connectivity flightlines or hilight connected shapes to a transistor. If parameters are changed the pcell layout enables to adapt the search for transistor instance names, to show connectivity. Therefore the pcell layout is easily to maintain.

[0007] Manually migrating a flat transistor layout to a pcell layout, i.e. manually detecting transistor correspondence by comparing a schematic topology of the semiconductor chip with layout shapes and replacing flat shapes by transistor pcells, may be avoided. Favorably costs for the design process of a semiconductor chip may be reduced.

[0008] In an additional or alternative embodiment of the invention, a replacement of the flat transistor shapes in the first layout by transistor pcells may be performed, wherein thereplacement is stored in a second layout. Favorably storing the replacement in the second layout may enable to make the management as well as the verification of the different layouts easier.

[0009] In an additional or alternative embodiment of the invention, the second layout may replace the first layout. Further layout processes may be performed on the pcell layout.

[0010] In an additional or alternative embodiment of the invention, parameters defining the properties of the transistor may comprise at least one of a position of the transistor in the first layout, a transistor type, a number of gate fingers, a channel width, a number of fins, a sheet width, a width to length ratio. Thus, essential design parameters of the transistor are covered by the pcell layout design.

[0011] In an additional or alternative embodiment of the invention, the connectivity of a transistor at least may comprise net connections of a gate electrode, and / or a drain electrode, and / or a source electrode of the transistor. Thus, essential design parameters of the transistor are covered by the pcell layout design.

[0012] In an additional or alternative embodiment of the invention, the permute state for each transistor pcell of the first layout may be detected comprising assigning a source electrode or a drain electrode as a left contact of a gate electrode based on at least one of power connections, shared contacts, net tracing in the first layout. The permute state of the transistor, necessary to identify possible connections of neighboring transistors, maybe favourable to replace flat shapes by a transistor pcell.

[0013] In an additional or alternative embodiment of the invention, drain electrodes and source electrodes of the transistor pcells may be placed in an alternating sequence. Thus, a flexible design for a layout of a whole semiconductor chip due to easier routing of connections to the transistor electrodes may be achieved.

[0014] In an additional or alternative embodiment of the invention, neighboring gate electrodes of multi-gate flat transistor shapes of the netlist may be grouped and represented by a single transistor pcell with a corresponding number of gate electrodes. Translation of a flat shapes layout into a pcell layout may favourably be achieved.

[0015] In an additional or alternative embodiment of the invention, a position of a transistor pcell may be translated into a matrix comprising columns and rows. Translation of a flat shapes layout into a pcell layout may favourably be achieved.

[0016] In an additional or alternative embodiment of the invention, a coordinate translation of a transistor pcell relative to a position of a gate electrode may be performed. In particular, a coordinate origin of a transistor pcell may be defined in a lower left comer position of a gate electrode. Thus, transistor pcells in layout may easily be generated.

[0017] In an additional or alternative embodiment of the invention, neighboring flat transistor shapes may be grouped with a same base name into a single transistor pcell. The pcell layout may easily be generated from an algorithm that gets executed on the pcell.

[0018] In an additional or alternative embodiment of the invention, dummy transistors in the first layout may be removed. A so-called dummy transistor may be identified by the fact that a source contact is equal to a drain contact in the net. It must be removed from the layout because it is a non-functional component.

[0019] In an additional or alternative embodiment of the invention, a transistor correspondence may be set between the first layout and a schematic topology of the semiconductor chip. Thus, verification of the pcell layout compared to the flat transistor layout may be facilitated.

[0020] In an additional or alternative embodiment of the invention, a shape connectivity may be set by routing connections to the contacts of the transistor pcells. Design of the pcell layout may be facilitated.

[0021] In an additional or alternative embodiment of the invention, it may be checked at a source-drain connection if there is a power connection to a power line at a top boundary or a bottom boundary of the transistor pcell. Verification of the pcell design may be performed by inspecting source-drain connections to power connections to a neigboring power line.

[0022] In an additional or alternative embodiment of the invention, the shared contact between two transistors pcells may be configured with a same net connection. Efficiency ofthe net connections may be achieved.

[0023] In an additional or alternative embodiment of the invention, tracing signal connections may comprise tracing physical shapes to get connected transistor contacts. Circuit design environments may provide tracing capabilities for this purpose being able to track signal connections in a way to realize if there are connected transistor contacts.

[0024] Further, a semiconductor chip for a computer system comprising a plurality of transistors is proposed, designed by a computer implemented method for translating flat transistor shapes into transistor pcells during a hardware design process.

[0025] Design of the semiconductor chip may be facilitated by automated translation of flat transistor layouts into pcell layouts and with this allows a faster maintenance of transistor layouts. A pcell layout enables designers / layouters to quickly understand a layout since they can search for transistor instance names, show connectivity flightlines or hilight connected shapes to a transistor. If parameters are changed the layout adapts search for instance names, show connectivity, therefore being easily to maintain.

[0026] Favorably costs for the design process of the semiconductor chip may be reduced.

[0027] In an additional or alternative embodiment of the invention, each transistor pcell may be configured with a source electrode or a drain electrode may be assigned as a left contact of a gate electrode based on at least one of power connections, shared contacts, net tracing in the first layout. A permute state of the transistor may favourably be detected.

[0028] In an additional or alternative embodiment of the invention, drain electrodes and source electrodes of the transistor pcells may be placed in an alternating sequence. Thus, a flexible design for a layout of a whole semiconductor chip may be achieved.

[0029] In an additional or alternative embodiment of the invention, neighboring flat transistor shapes with a same base name may be grouped into a single transistor pcell. The pcell layout may easily be implemented from the flat shape layout.

[0030] Further, a computer system for translating flat transistor shapes into transistor pcells during a hardware design process of a semiconductor chip comprising transistors is proposed, comprising a computer processing unit storing computer executable instructions to perform the method, comprising: extracting a netlist and a first layout of the semiconductor chip; receiving data from the netlist and the first layout comprising parameters defining the properties of the transistors as well as a connectivity of the transistors; based on the data from the first layout detecting power connections for each transistor of the first layout and tracing signal connections and shared contacts for each transistor of the first layout; establishing a permute state for each transistor of the first layout; defining transistor pcells from the data and the permute state for each transistor; and placing the transistor pcells in the first layout and removing the flat transistor shapes from the first layout.

[0031] According to an embodiment of the invention translation of flat transistor layouts into pcell layouts may be facilitated and with this allows a faster maintenance of transistor layouts. Favorably costs for the design process of a semiconductor chip may be reduced.

[0032] Further, a computer program product for translating flat transistor shapes into transistor pcells during a hardware design process of a semiconductor chip comprising transistors is proposed, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by the computer system to cause the computer system to perform the method, comprising: extracting a netlist and a first layout of the semiconductor chip; receiving data from the netlist and the first layout comprising parameters defining the properties of the transistors as well as a connectivity of the transistors; based on the data from the first layout detecting power connections for each transistor of the first layout and tracing signal connections and shared contacts for each transistor of the first layout; establishing a permute state for each transistor of the first layout; defining transistor pcells from the data and the permute state for each transistor; and placing the transistor pcells in the first layout and removing the flat transistor shapes from the first layout.

[0033] According to an embodiment of the invention translation of flat transistor layouts into pcell layouts may be facilitated and with this allows a faster maintenance of transistor layouts. Favorably costs for the design process of a semiconductor chip may be reduced.

[0034] Further, a data processing system for execution of a data processing program comprising computer readable program instructions for performing the method is proposed.BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

[0035] The present invention together with the above-mentioned and other objects and advantages may best be understood from the following detailed description of the embodiments, but not restricted to the embodiments.

[0036] Figure 1 depicts grouping neighboring gate electrodes of multi-gate flat transistor shapes of a netlist by a single transistor pcell with a corresponding number of gate electrodes according to an embodiment of the invention.

[0037] Figure 2 depicts a first permute state for a transistor pcell according to an embodiment of the invention.

[0038] Figure 3 depicts a second permute state for a transistor pcell according to an embodiment of the invention.

[0039] Figure 4 depicts a flow chart of the computer implemented method for translating flat transistor shapes into transistor pcells during a hardware design process of a semiconductor chip comprising transistors according to an embodiment of the invention.

[0040] Figure 5 depicts translating a position of a transistor pcell into a matrix comprising columns and rows according to an embodiment of the invention.

[0041] Figure 6 depicts performing a coordinate translation of a transistor pcell relative to a position of a gate electrode according to an embodiment of the invention.

[0042] Figure 7 depicts detection of the permute state based on power connections of a transistor pcell layout according to an embodiment of the invention.

[0043] Figure 8 depicts detection of the permute state based on shared contacts between two transistors pcells according to a further embodiment of the invention.

[0044] Figure 9 depicts detection of the permute state based on tracing signalconnections according to a further embodiment of the invention.

[0045] Figure 10 depicts an example embodiment of a data processing system for executing a method according to the invention.DETAILED DESCRIPTION

[0046] In the drawings, like elements are referred to with equal reference numerals. The drawings are merely schematic representations, not intended to portray specific parameters of the invention. Moreover, the drawings are intended to depict only typical embodiments of the invention and therefore should not be considered as limiting the scope of the invention.

[0047] The illustrative embodiments described herein provide a computer implemented method for translating flat transistor shapes into transistor pcells during a hardware design process of a semiconductor chip comprising transistors is proposed, the method comprising: extracting a netlist and a first layout of the semiconductor chip; receiving data from the netlist and the first layout comprising parameters defining the properties of the transistors as well as a connectivity of the transistors; based on the data from the first layout detecting power connections for each transistor of the first layout and tracing signal connections and shared contacts for each transistor of the first layout; establishing a permute state for each transistor of the first layout; defining transistor pcells from the data and the permute state for each transistor; and placing the transistor pcells in the first layout and removing the flat transistor shapes from the first layout.

[0048] The illustrative embodiments may further be used for a semiconductor chip for a computer system, comprising a plurality of transistors, designed by the computer implemented method for translating flat transistor shapes into transistor pcells during a hardware design process.

[0049] Figure 1 depicts grouping neighboring gate electrodes 13, 15, 17 of multi-gate flat transistor shapes 12, 14, 16 of a netlist of a first layout 10 by a single transistor pcell 22 with a corresponding number of gate electrodes 23 in a second layout 20 according to an embodiment of the invention.

[0050] According to the computer implemented method flat transistor shapes 12, 14, 16are translated into a transistor pcell 22 during a hardware design process of a semiconductor chip 100 comprising transistors 1. Flat transistor shapes 12, 14, 16 as well as the transistor pcell 22 are marked by respective rectangular boxes.

[0051] The method uses an extracted netlist and a first layout 10 as input and replaces flat transistor shapes 12, 14, 16 in the first layout 10 by the single transistor pcell 22. The first layout 10 exhibits flat transistor shapes 12, 14, 16 with gate electrodes 13, 15, 17 on a gate oxide 50. Source electrodes 24 and gate electrodes shared by the flat transistor shapes 12, 14, 16 are kept in the single transistor pcell 22.

[0052] Data are received from the netlist. Thus, the extracted netlist is used to get the transistor properties such as position, transistor type, fins / finger and connectivity such as gate 23, drain 25, source 24 net connection.

[0053] The first layout 10 is used to detect transistor power connections and to trace transistor signal connections in order to establish a permute state of the transistor 1.

[0054] Since flat transistors shapes 12, 14, 16 are represented by single fingers, neighboring fingers 13, 15, 17, i.e. the gate electrodes 13, 15, 17 in the extracted netlist, are grouped and are represented by the single pcell instance 22 with a corresponding number of fingers, the gate electrodes 23, as a pcell parameter. For converting single fingers 13, 15, 17 of a flat transistor shape 12, 14, 16 into a multi-finger transistor pcell 22, 32 it is sufficient to know the position of the flat transistor shapes 12, 14, 16. To be able to group flat transistor shapes 12, 14, 16 into a single transistor pcell 22, 32 the single finger flat transistor shapes 12, 14, 16 must be in the same row 64 and in a neighboured column 62 of a matrix-like positioning of the transistor pcell 22 representing the transistors 1 (see Figure 5) and have the same source 24, drain 25 and gate 23 connections. In Figure 1 the transistor pcell 22 is represented by a three finger device with three gate electrodes 23.

[0055] In particular, neighboring flat transistor shapes 12, 14, 16 with a same base name 18 may be grouped into a single transistor pcell 22.

[0056] Figure 2 depicts a first permute state for a transistor pcell 22 according to an embodiment of the invention. Figure 3 depicts a second permute state for a transistor pcell22.

[0057] A permute state for each transistor 1 of the first layout 10 is established by determining a sequence of source 24 and drain 25 connections. The transistor pcells 22 are defined from the data and the permute state for each transistor 1. The transistor pcells 22 are placed in the first layout 10 and the flat transistor shapes 12, 14, 16 are removed from the first layout 10.

[0058] In the permute states of the transistor 1 source electrodes 24 and drain electrodes 25 are arranged in an alternating sequence. In Figure 2 the transistor 1 is laid out with a source electrode 24 as a left most contact, whereas in Figure 3 the transistor 1 is laid out with a drain electrode 25 as a left most contact.

[0059] In an alternative embodiment of the invention, the flat transistor shapes 12, 14, 16 in the first layout 10 may be replaced by two transistor pcells 22, 32 as two finger devices, and the replacement may be stored in a second layout 20, as is to be seen in Figure 8.

[0060] Figure 4 depicts a flow chart of the computer implemented method for translating flat transistor shapes 12, 14, 16 into transistor pcells 22 during a hardware design process of a semiconductor chip comprising transistors according to an embodiment of the invention.

[0061] In step SI 00 layout properties are retrieved from a first layout 10.

[0062] In step SI 02 the transistor properties, such as geometrical coordinates, transistor type, number of fins, are retrieved from the extracted netlist. Parameters defining the properties of the transistor 1 may comprise at least one of a position 66 (see Figure 6) of the transistor 1 in the first layout, a transistor type, a number of fins, a channel width, a sheet width.

[0063] In step SI 04 geometrical coordinates of a power net are retrieved from the first layout 10.

[0064] In step SI 06 gate, drain, source connections are retrieved from the extracted netlist. The connectivity of a transistor 1 may at least comprise net connections of a gate electrode 23, and / or a drain electrode 25, and / or a source electrode 24 of the transistor 1.

[0065] In step SI 08 transistor coordinates are translated into a matrix according to columns 62 and rows 64 (see Figure 5).

[0066] In steps S110 to S114 alternatives for detection of the permute state of the transistor 1 are executed. Detecting the permute state for each transistor pcell 22 of the first layout may comprise assigning a source electrode 24 or a drain electrode 25 as a left contact of a gate electrode 23 based on at least one of power connections 44, 46 (see Figure 7), shared contacts 24, 26 (see Figure 8), or net tracing in the first layout (see Figure 9).

[0067] In step SI 10 a source electrode 24 or a drain electrode 25 is assigned as a left contact, based on a power net. In an alternative step SI 12 a source electrode 24 or a drain electrode 25 is assigned as a left contact, based on shared contacts. In another alternative step SI 14 a source electrode 24 or a drain electrode 25 is assigned as a left contact, based on a net tracing in the first layout 10.

[0068] In step SI 16 neigboring transistors 1 in the same row 64 (see Figure 5) with a same base name 18 are grouped.

[0069] In an optional step SI 18 dummy transistors may be removed.

[0070] In step S120 the transistor pcells 22 are generated in the first layout 10.Coordinates of the transistor pcells 22 are translated.

[0071] In step S122 the connectivity and the permute state are applied to the transistor pcells 22 in the first layout 10.

[0072] In an optional step S124 a transistor correspondence may be set between the first layout 10 and the schematic topology of the semiconductor chip.

[0073] In step SI 26 flat transistor shapes 12, 14, 16 are removed from the first layout10. Flat transistor shapes 12, 14, 16 in the first layout 10 are replaced by transistor pcells 22, 32, wherein the replacement may be stored in a second layout 20. Alternatively, the first layout 10 may still be kept.

[0074] In an optional step S128 a shape connectivity may be set. The shape connectivity is set by routing the transistor pcells 22. In design frameworks there are options for propagating the connectivity of instance pins and cell pins to shapes. The shapes of routings remain geometrically the same, only a so called “net property” will be assigned to existing shapes.

[0075] Favorably, the second layout 20 may replace the first layout 10.

[0076] Figure 5 depicts translating a position of a transistor pcell 22 into a matrix 60 comprising columns 62 and rows 64 according to an embodiment of the invention. Here a position 66 of a transistor pcell 22 is translated into a specific column 62 and a specific row 64 of the matrix 60. Thus, the transistor 1, being represented by the transistor pcell 22, further may be referred to with a position of column 1, row 3.

[0077] Figure 6 depicts performing a coordinate translation of a transistor pcell 22 relative to a position of a gate electrode 23 according to an embodiment of the invention.

[0078] According to the example shown in Figure 6, after an extraction of a gate position of a transistor, an origin 68 of a coordinate system is translated from a center position 66 on a gate electrode 13 of a flat transistor shape 12 to a lower left comer position 66 of a gate electrode 23 of a transistor pcell 22. This new origin 68 of the coordinate system of the transistor pcell 22 may be used as a reference for further steps in the design process.

[0079] The Figures 7, 8 and 9 show the three alternative approaches for detection of the permute state of the transistor 1 as described in Figure 4 with the steps SI 10, SI 12 and SI 14. The detection of the permute state, shown in Figure 7, is based on assignment of a power net 44, 46 as described in step SI 10 of Figure 4. An alternative detection of the permute state, shown in Figure 8, is based on an assignment of shared contacts 26 as described in step SI 12 of Figure 4. A further alternative detection of the permute state, shown in Figure 9, is based on a net tracing in the first layout 10 as described in step SI 14 of Figure 4. For all threeapproaches information from an extracted netlist is essential.

[0080] Figure 7 depicts detection of the permute state based on power connections 44, 46 of a transistor pcell layout 20 . According to step SI 10 of Figure 4, a source electrode 24 or a drain electrode 25 is assigned as a left contact, based on power connections 44, 46.Power connections 44 may correspond to ground VSS and power connections 46 may correspond to supply voltage VDD.

[0081] Further, in Figure 7 a transistor pcell 22, named P0, representing a single transistor 1 as a one-finger device is highlighted by the rectangle in the Figure comprising one gate electrode 23.

[0082] For detection of the permute state of the transistor 1, information from the netlist, given in Figure 7, is used:USGDEF P0UPIN g I NlUPIN d B N2UPIN s B VDD

[0083] The netlist comprises information concerning the name of the transistor pcell (USGDEF P0), the gate electrode (g I), connected to Nl, the drain electrode (d B), connected to N2, and the source electrode (s B), connected to VDD.

[0084] As the power connection 46 corresponds to the supply voltage VDD which is connected to a source electrode 24 according to the netlist, the left most contact of the transistor pcell 22, in Figure 7, is a drain electrode 25.

[0085] Further nets Nl and N2 are not shown in Figure 7.

[0086] Figure 8 depicts detection of the permute state based on a shared contact 26 configured between two transistors pcells 22, 32 represented as one-finger devices with a same net connection according to a further embodiment of the invention. According to step SI 12 of Figure 4, a source electrode 24 or a drain electrode 25 may be assigned as a left contact, based on shared contacts 26.

[0087] The first transistor pcell 22, named Pl, comprises one gate electrode 23. The neigboring second transistor pcell 32, named P2, comprises onee electrode 33. Both transistor pcells 22, 32 comprise a shared contact 26.

[0088] For detection of the permute state of the transistor pcells 22, 32 information from the netlist, given in Figure 8, is used. This is for pcell 32:USGDEF P2UPIN g I Net6UPIN d B Net3UPIN s B Net4, and and for pcell 22:USGDEF PlUPIN g I Net7UPIN d B Net3UPIN s B Net5

[0089] As the drain electrodes 25, 35 (d) of both pcells 22, 32 are connected with the same connectivity Net3 this must be the shared contact 26, meaning that the shared contact 26 according to the netlist is a drain electrode 25, 35 (d). For this reason the left most contact of the pcell 22 must be a source electrode 24 and the left most contact of the pcell 32 is the drain electrode 35, shared with the pcell 22.

[0090] Further nets Net 6, Net4, Net7, Net5 are not shown in Figure 8.

[0091] Figure 9 depicts detection of the permute state based on tracing signal connections comprising tracing physical shapes to get connected transistor contacts according to an embodiment of the invention. According to step SI 14 of Figure 4, a source electrode 24 or a drain electrode 25 may be assigned as a left contact, based on tracing a connectivity.

[0092] In Figure 9 two transistor pcells 22, 32 representing transistors 1, 2 as one-finger devices with corresponding gate electrodes 23, 33, are highlighted by rectangles. A power line 40 as power connection 44 is depicted corresponding to a ground VSS. Power lines 40 may advantageously always be fed from a top boundary 52 or a bottom boundary 54, asshown in Figure 9. The power line feeding the supply voltage VDD is omitted for clarity reasons. Further, a signal line 42 is also shown.

[0093] The first pcell 22, named Nl, is connected in a contact area 36 to the signal line 42 and in the contact area 37 to the power line 40. The second pcell 32, named N2, is connected in a contact area 36 to the signal line 42.

[0094] For detection of the permute state of the transistor pcells 22, 32 information from the netlist, given in Figure 9, is used. This is for pcell 22:USGDEF NlUPIN g I Net8UPIN d B Net9UPIN s B VSS and for pcell 32:USGDEF N2UPIN g I NetlOUPIN d B Netl lUPIN s B Net9

[0095] As the electrode of the first pcell 22 connected to the power line 40 which is a ground electrode VSS, is a source electrode 24 (s) according to the netlist, the left most contact of the pcell 22 must be a drain electrode 25. The drain electrode 25 (d) of pcell 22 is connected to the signal line 42, which according to the netlist is Net9. According to the netlist of pcell 32, the electrode connected to Net9 as the signal line 42 is a source electrode 34 (s), so the left most contact of pcell 32 must be a drain electrode 35.

[0096] Further nets Net8, NetlO, Netll are not shown in Figure 9.

[0097] Favorably, a semiconductor chip 100 for a computer system 212 comprising a plurality of transistors 1, 2, may be designed by a computer implemented method for translating flat transistor shapes 12, 14, 16 into transistor pcells 22, 32 during a hardware design process according to the described method.

[0098] Each transistor pcell 22, 32 may be configured with a source electrode 24, 34 ora drain electrode 25, 35 being assigned as a left contact of a gate electrode 23, 33 based on at least one of power connections 44, 46, shared contacts 26, or net tracing in the first layout.

[0099] Drain electrodes 25, 35 and source electrodes 24, 34 of the transistor pcells 22, 32 may be placed in an alternating sequence.

[0100] Neighboring flat transistor shapes 12, 14, 16 with a same base name 18 may be grouped into a single transistor pcell 22, 32.

[0101] Figure 10 depicts an example embodiment of a data processing system 210 for executing a method according to the invention.

[0102] A computer system 212 for translating flat transistor shapes 12, 14, 16 into transistor pcells 22, 32 during a hardware design process of a semiconductor chip 100 comprising transistors 1, 2, comprising a computer processing unit 216 storing computer executable instructions may be used to perform the method according to an embodiment of the invention.

[0103] A computer program product may be used on the data processing system 210 for translating flat transistor shapes 12, 14, 16 into transistor pcells 22, 32 during a hardware design process of a semiconductor chip 100 comprising transistors 1, 2, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by the computer system 212 to cause the computer system 212 to perform the method according to an embodiment of the invention.

[0104] Referring now to Figure 10, a schematic of an example of a data processing system 210 is shown. Data processing system 210 is only one example of a suitable data processing system and is not intended to suggest any limitation as to the scope of use or functionality of embodiments of the invention described herein. Regardless, data processing system 210 is capable of being implemented and / or performing any of the functionality set forth herein above.

[0105] In data processing system 210 there is a computer system / server 212, which isoperational with numerous other general-purpose or special-purpose computing system environments or configurations. Examples of well-known computing systems, environments, and / or configurations that may be suitable for use with computer system / server 212 include, but are not limited to, personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputer systems, mainframe computer systems, and distributed cloud computing environments that include any of the above systems or devices, and the like.

[0106] Computer system / server 212 may be described in the general context of computer system executable instructions, such as program modules, being executed by a computer system. Generally, program modules may include routines, programs, objects, components, logic, data structures, and so on that perform particular tasks or implement particular abstract data types. Computer system / server 212 may be practiced in distributed cloud computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed cloud computing environment, program modules may be located in both local and remote computer system storage media including memory storage devices.

[0107] As shown in Figure 10, computer system / server 212 in data processing system 210 is shown in the form of a general-purpose computing device. The components of computer system / server 212 may include, but are not limited to, one or more processors or processing units 216, a system memory 228, and a bus 218 that couples various system components including system memory 228 to processor 216.

[0108] Bus 218 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. By way of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus.

[0109] Computer system / server 212 typically includes a variety of computer system readable media. Such media may be any available media that is accessible by computersystem / server 212, and it includes both volatile and non-volatile media, removable and nonremovable media.

[0110] System memory 228 can include computer system readable media in the form of volatile memory, such as random access memory (RAM) 230 and / or cache memory 232. Computer system / server 212 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, storage system 234 can be provided for reading from and writing to a non-removable, non-volatile magnetic media (not shown and typically called a "hard drive"). Although not shown, a magnetic disk drive for reading from and writing to a removable, non-volatile magnetic disk (e.g., a "floppy disk"), and an optical disk drive for reading from or writing to a removable, non-volatile optical disk such as a CD-ROM, DVD-ROM or other optical media can be provided. In such instances, each can be connected to bus 218 by one or more data media interfaces. As will be further depicted and described below, memory 228 may include at least one program product having a set (e.g., at least one) of program modules that are configured to carry out the functions of embodiments of the invention.

[0111] Program / utility 240, having a set (at least one) of program modules 242, may be stored in memory 228 by way of example, and not limitation, as well as an operating system, one or more application programs, other program modules, and program data. Each of the operating system, one or more application programs, other program modules, and program data or some combination thereof, may include an implementation of a networking environment. Program modules 242 generally carry out the functions and / or methodologies of embodiments of the invention as described herein.

[0112] Computer system / server 212 may also communicate with one or more external devices 214 such as a keyboard, a pointing device, a display 224, etc.; one or more devices that enable a user to interact with computer system / server 212; and / or any devices (e.g., network card, modem, etc.) that enable computer system / server 212 to communicate with one or more other computing devices. Such communication can occur via Input / Output (VO) interfaces 222. Still yet, computer system / server 212 can communicate with one or more networks such as a local area network (LAN), a general wide area network (WAN), and / or a public network (e.g., the Internet) via network adapter 220. As depicted, network adapter 220 communicates with the other components of computer system / server 212 via bus 218. Itshould be understood that although not shown, other hardware and / or software components could be used in conjunction with computer system / server 212. Examples, include, but are not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data archival storage systems, etc.

[0113] The present invention may be a system, a method, and / or a computer program product. The computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present invention.

[0114] The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non- exhaustive list of more specific examples of the computer readable storage medium includes the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.

[0115] Computer readable program instructions described herein can be downloaded to respective computing / processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and / or a wireless network. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and / or edge servers. A network adapter card ornetwork interface in each computing / processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing / processing device.

[0116] Computer readable program instructions for carrying out operations of the present invention may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++ or the like, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present invention.

[0117] Aspects of the present invention are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer readable program instructions.

[0118] These computer readable program instructions may be provided to a processor of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processing apparatus, create means for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and / or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function / act specified in the flowchart and / or block diagram block or blocks.

[0119] The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process, such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions / acts specified in the flowchart and / or block diagram block or blocks.

[0120] The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and / or flowchart illustration, and combinations of blocks in the block diagrams and / or flowchart illustration, can be implemented by specialpurpose hardware-based systems that perform the specified functions or acts or carry out combinations of special-purpose hardware and computer instructions.

[0121] The descriptions of the various embodiments of the present invention have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the describedembodiments. The terminology used herein was chosen to best explain the principles of the embodiments, the practical application or technical improvement over technologies found in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.

[0122] Further exemplary embodiments of the present disclosure are set out in the following numbered clauses:

[0123] Numbered clause 1 : A computer implemented method for translating flat transistor shapes (12, 14, 16) into transistor pcells (22, 32) during a hardware design process of a semiconductor chip (100) comprising transistors (1, 2), the method comprising extracting a netlist and a first layout (10) of the semiconductor chip (100); receiving data from the netlist and the first layout (10) comprising parameters defining the properties of the transistors (1, 2) as well as a connectivity of the transistors (1, 2); based on the data from the first layout (10) detecting power connections (44, 46) for each transistor (1, 2) of the first layout (10) and tracing signal connections and shared contacts (26) for each transistor (1, 2) of the first layout (10); establishing a permute state for each transistor (1, 2) of the first layout (10); defining transistor pcells (22, 32) from the data and the permute state for each transistor (1, 2); placing the transistor pcells (22, 32) in the first layout (10) and removing the flat transistor shapes (12, 14, 16) from the first layout (10).

[0124] Numbered clause 2: The method according to clause 1, further performing a replacement of the flat transistor shapes (12, 14, 16) in the first layout (10) by transistor pcells (22, 32), wherein the replacement is stored in a second layout (20).

[0125] Numbered clause 3: The method according to clause 2, wherein the second layout (20) replaces the first layout (10).

[0126] Numbered clause 4: The method according to any one of the preceding clauses, wherein parameters defining the properties of the transistor (1, 2) comprise at least one of a position (66) of the transistor (1, 2) in the first layout (10), a transistor type, a number of gatefingers, a channel width, a number of fins, a sheet width, a width to length ratio.

[0127] Numbered clause 5: The method according to any one of the preceding clauses, wherein the connectivity of a transistor (1, 2) at least comprises net connections of a gate electrode (23, 33), and / or a drain electrode (25, 35), and / or a source electrode (24, 34) of the transistor (1, 2).

[0128] Numbered clause 6: The method according to any one of the preceding clauses, further detecting the permute state for each transistor pcell (22, 32) of the first layout (10) comprising assigning a source electrode (24, 34) or a drain electrode (25, 35) as a left contact of a gate electrode (23, 33) based on at least one of power connections (44, 46); shared contacts (26); net tracing in the first layout.

[0129] Numbered clause 7: The method according to any one of the preceding clauses, further placing drain electrodes (25, 35) and source electrodes (24, 34) of the transistor pcells (22, 32) in an alternating sequence.

[0130] Numbered clause 8: The method according to any one of the preceding clauses, further grouping and representing neighboring gate electrodes (13, 15, 17) of multi-gate flat transistor shapes (12, 14, 16) of the netlist by a single transistor pcell (22, 32) with a corresponding number of gate electrodes (23).

[0131] Numbered clause 9: The method according to any one of the preceding clauses, further translating a position (66) of a transistor pcell (22, 32) into a matrix (60) comprising columns (62) and rows (64).

[0132] Numbered clause 10: The method according to any one of the preceding clauses, further performing a coordinate translation of a transistor pcell (22, 32) relative to a position of a gate electrode (23, 33), in particular, defining a coordinate origin (68) of a transistor pcell (22, 32) in a lower left comer position (66) of a gate electrode (23, 33).

[0133] Numbered clause 11 : The method according to any one of the preceding clauses, further grouping neighboring flat transistor shapes (12, 14, 16) with a same base name (18) into a single transistor pcell (22, 32).

[0134] Numbered clause 12: The method according to any one of the preceding clauses, further removing dummy transistors in the first layout (10).

[0135] Numbered clause 13: The method according to any one of the preceding clauses, further setting a transistor correspondence between the first layout (10) and schematic topology of the semiconductor chip (100).

[0136] Numbered clause 14: The method according to any one of the preceding clauses, wherein a shape connectivity is set by routing the transistor pcells (22, 32).

[0137] Numbered clause 15: The method according to any one of the preceding clauses, further checking at a source-drain connection if there is a power connection (44, 46) to a power line (40, 42) at a top boundary (52) or a bottom boundary (54) of the transistor pcell (22, 32).

[0138] Numbered clause 16: The method according to any one of the preceding clauses, further configuring the shared contact (26) between two transistors pcells (22, 32) with a same net connection.

[0139] Numbered clause 17: The method according to any one of the preceding clauses, wherein tracing signal connections comprises tracing physical shapes to get connected transistor contacts.

[0140] Numbered clause 18: A semiconductor chip (100) for a computer system (212) comprising a plurality of transistors (1, 2), designed by a computer implemented method for translating flat transistor shapes (12, 14, 16) into transistor pcells (22, 32) during a hardware design process according to any one of the preceding clauses.

[0141] Numbered clause 19: The semiconductor chip according to clause 18, wherein each transistor pcell (22, 32) is configured with a source electrode (24, 34) or a drainelectrode (25, 35) is assigned as a left contact of a gate electrode (23, 33) based on at least one of power connections (44, 46); shared contacts (26); net tracing in the first layout.

[0142] Numbered clause 20: The semiconductor chip according to clause 18 or 19, wherein drain electrodes (25, 35) and source electrodes (24, 34) of the transistor pcells (22, 32) are placed in an alternating sequence.

[0143] Numbered clause 21 : The semiconductor chip according to any one of the clauses 18 to 20, wherein neighboring flat transistor shapes (12, 14, 16) with a same base name (18) are grouped into a single transistor pcell (22, 32).

[0144] Numbered clause 22: A computer system (212) for translating flat transistor shapes (12, 14, 16) into transistor pcells (22, 32) during a hardware design process of a semiconductor chip (100) comprising transistors (1, 2), comprising a computer processing unit (216) storing computer executable instructions to perform the method according to any one of the clauses 1 to 17, comprising: extracting a netlist and a first layout (10) of the semiconductor chip (100); receiving data from the netlist and the first layout (10) comprising parameters defining the properties of the transistors (1, 2) as well as a connectivity of the transistors (1, 2); based on the data from the first layout (10) detecting power connections (44, 46) for each transistor (1, 2) of the first layout (10) and tracing signal connections and shared contacts (26) for each transistor (1, 2) of the first layout (10); establishing a permute state for each transistor (1, 2) of the first layout (10); defining transistor pcells (22, 32) from the data and the permute state for each transistor (1, 2); placing the transistor pcells (22, 32) in the first layout (10) and removing the flat transistor shapes (12, 14, 16) from the first layout (10).

[0145] Numbered clause 23 : A computer program product for translating flat transistor shapes (12, 14, 16) into transistor pcells (22, 32) during a hardware design process of asemiconductor chip (100) comprising transistors (1, 2), the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by the computer system (212) to cause the computer system (212) to perform the method according to any one of the clauses 1 to 17 comprising: extracting a netlist and a first layout (10) of the semiconductor chip (100); receiving data from the netlist and the first layout (10) comprising parameters defining the properties of the transistors (1, 2) as well as a connectivity of the transistors (1, 2); based on the data from the first layout (10) detecting power connections (44, 46) for each transistor (1, 2) of the first layout (10) and tracing signal connections and shared contacts (26) for each transistor (1, 2) of the first layout (10); establishing a permute state for each transistor (1, 2) of the first layout (10); defining transistor pcells (22, 32) from the data and the permute state for each transistor (1, 2); placing the transistor pcells (22, 32) in the first layout (10) and removing the flat transistor shapes (12, 14, 16) from the first layout (10).

[0146] Numbered clause 24: A data processing system (210) for execution of a data processing program (240) comprising computer readable program instructions for performing the method according to any one of the clauses 1 to 17.

Claims

CLAIMS1. A computer implemented method for translating flat transistor shapes (12, 14, 16) into transistor pcells (22, 32) during a hardware design process of a semiconductor chip (100) comprising transistors (1, 2), the method comprising extracting a netlist and a first layout (10) of the semiconductor chip (100); receiving data from the netlist and the first layout (10) comprising parameters defining the properties of the transistors (1, 2) as well as a connectivity of the transistors (1, 2); based on the data from the first layout (10) detecting power connections (44, 46) for each transistor (1, 2) of the first layout (10) and tracing signal connections and shared contacts (26) for each transistor (1, 2) of the first layout (10); establishing a permute state for each transistor (1, 2) of the first layout (10); defining transistor pcells (22, 32) from the data and the permute state for each transistor (1, 2); placing the transistor pcells (22, 32) in the first layout (10) and removing the flat transistor shapes (12, 14, 16) from the first layout (10).

2. The method according to claim 1, further performing a replacement of the flat transistor shapes (12, 14, 16) in the first layout (10) by transistor pcells (22, 32), wherein the replacement is stored in a second layout (20).

3. The method according to claim 2, wherein the second layout (20) replaces the first layout (10).

4. The method according to any one of the preceding claims, wherein parameters defining the properties of the transistor (1, 2) comprise at least one of a position (66) of the transistor (1, 2) in the first layout (10), a transistor type, a number of gate fingers, a channel width, a number of fins, a sheet width, a width to length ratio.

5. The method according to any one of the preceding claims, wherein the connectivity of a transistor (1, 2) at least comprises net connections of a gate electrode (23, 33), and / or a drain electrode (25, 35), and / or a source electrode (24, 34) of the transistor (1, 2).

6. The method according to any one of the preceding claims, further detecting the permute state for each transistor pcell (22, 32) of the first layout (10) comprising assigning a source electrode (24, 34) or a drain electrode (25, 35) as a left contact of a gate electrode (23, 33) based on at least one of power connections (44, 46); shared contacts (26); net tracing in the first layout.

7. The method according to any one of the preceding claims, further placing drain electrodes (25, 35) and source electrodes (24, 34) of the transistor pcells (22, 32) in an alternating sequence.

8. The method according to any one of the preceding claims, further grouping and representing neighboring gate electrodes (13, 15, 17) of multi-gate flat transistor shapes (12, 14, 16) of the netlist by a single transistor pcell (22, 32) with a corresponding number of gate electrodes (23).

9. The method according to any one of the preceding claims, further translating a position (66) of a transistor pcell (22, 32) into a matrix (60) comprising columns (62) and rows (64).

10. The method according to any one of the preceding claims, further performing a coordinate translation of a transistor pcell (22, 32) relative to a position of a gate electrode (23, 33), in particular, defining a coordinate origin (68) of a transistor pcell (22, 32) in a lower left comer position (66) of a gate electrode (23, 33).

11. The method according to any one of the preceding claims, further grouping neighboring flat transistor shapes (12, 14, 16) with a same base name (18) into a single transistor pcell (22, 32).

12. The method according to any one of the preceding claims, further removing dummy transistors in the first layout (10).

13. The method according to any one of the preceding claims, further setting a transistor correspondence between the first layout (10) and schematic topology of the semiconductor chip (100).

14. The method according to any one of the preceding claim, wherein a shape connectivity is set by routing the transistor pcells (22, 32).

15. The method according to any one of the preceding claims, further checking at a source-drain connection if there is a power connection (44, 46) to a power line (40, 42) at a top boundary (52) or a bottom boundary (54) of the transistor pcell (22, 32).

16. The method according to any one of the preceding claims, further configuring the shared contact (26) between two transistors pcells (22, 32) with a same net connection.

17. The method according to any one of the preceding claims, wherein tracing signal connections comprises tracing physical shapes to get connected transistor contacts.

18. A semiconductor chip (100) for a computer system (212) comprising a plurality of transistors (1, 2), designed by a computer implemented method for translating flat transistor shapes (12, 14, 16) into transistor pcells (22, 32) during a hardware design process according to claim 1.

19. The semiconductor chip according to claim 18, wherein each transistor pcell (22, 32) is configured with a source electrode (24, 34) or a drain electrode (25, 35) is assigned as a left contact of a gate electrode (23, 33) based on at least one of power connections (44, 46); shared contacts (26); net tracing in the first layout.

20. The semiconductor chip according to claims 18 or 19, wherein drain electrodes (25, 35) and source electrodes (24, 34) of the transistor pcells (22, 32) are placed in an alternating sequence.

21. The semiconductor chip according to any one of the preceding claims 18 to 20, wherein neighboring flat transistor shapes (12, 14, 16) with a same base name (18) are grouped into a single transistor pcell (22, 32).

22. A computer system (212) for translating flat transistor shapes (12, 14, 16) into transistor pcells (22, 32) during a hardware design process of a semiconductor chip (100) comprising transistors (1, 2), comprising a computer processing unit (216) storing computer executable instructions to perform the method according to claim 1, comprising: extracting a netlist and a first layout (10) of the semiconductor chip (100); receiving data from the netlist and the first layout (10) comprising parameters defining the properties of the transistors (1, 2) as well as a connectivity of the transistors (1, 2); based on the data from the first layout (10) detecting power connections (44, 46) for each transistor (1, 2) of the first layout (10) and tracing signal connections and shared contacts (26) for each transistor (1, 2) of the first layout (10); establishing a permute state for each transistor (1, 2) of the first layout (10); defining transistor pcells (22, 32) from the data and the permute state for each transistor (1, 2); placing the transistor pcells (22, 32) in the first layout (10) and removing the flat transistor shapes (12, 14, 16) from the first layout (10).

23. A computer program product for translating flat transistor shapes (12, 14, 16) into transistor pcells (22, 32) during a hardware design process of a semiconductor chip (100) comprising transistors (1, 2), the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by the computer system (212) to cause the computer system (212) to perform the method according to claim 1 comprising: extracting a netlist and a first layout (10) of the semiconductor chip (100); receiving data from the netlist and the first layout (10) comprising parameters defining the properties of the transistors (1, 2) as well as a connectivity of the transistors (1, 2); based on the data from the first layout (10) detecting power connections (44,46) for each transistor (1, 2) of the first layout (10) and tracing signal connections and shared contacts (26) for each transistor (1, 2) of the first layout (10); establishing a permute state for each transistor (1, 2) of the first layout (10); defining transistor pcells (22, 32) from the data and the permute state for each transistor (1, 2); placing the transistor pcells (22, 32) in the first layout (10) and removing the flat transistor shapes (12, 14, 16) from the first layout (10).

24. A data processing system (210) for execution of a data processing program (240) comprising computer readable program instructions for performing the method according to claims 1 to 17.

Citation Information

Patent Citations

  • Method and apparatus for generating layout of integrated circuit

    WO2022266906A1

  • Generating an electromagnetic parameterized cell for an integrated circuit design

    US20160125115A1