DE102017117801B4 - METHOD FOR DESIGNING A LAYOUT FOR A SEMICONDUCTOR DEVICE, MACHINE READABLE MEDIA WITH MACHINE READABLE INSTRUCTIONS FOR PERFORMING A METHOD FOR DESIGNING A SEMICONDUCTOR DEVICE AND SEMICONDUCTOR DEVICE - Google Patents
METHOD FOR DESIGNING A LAYOUT FOR A SEMICONDUCTOR DEVICE, MACHINE READABLE MEDIA WITH MACHINE READABLE INSTRUCTIONS FOR PERFORMING A METHOD FOR DESIGNING A SEMICONDUCTOR DEVICE AND SEMICONDUCTOR DEVICE Download PDFInfo
- Publication number
- DE102017117801B4 DE102017117801B4 DE102017117801.5A DE102017117801A DE102017117801B4 DE 102017117801 B4 DE102017117801 B4 DE 102017117801B4 DE 102017117801 A DE102017117801 A DE 102017117801A DE 102017117801 B4 DE102017117801 B4 DE 102017117801B4
- Authority
- DE
- Germany
- Prior art keywords
- spare
- eco
- cells
- grid spacing
- layout
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 77
- 239000004065 semiconductor Substances 0.000 title claims abstract description 50
- 238000001465 metallisation Methods 0.000 claims abstract description 38
- 238000013461 design Methods 0.000 claims description 24
- 239000010410 layer Substances 0.000 description 42
- 230000006870 function Effects 0.000 description 13
- 230000000873 masking effect Effects 0.000 description 13
- 239000003086 colorant Substances 0.000 description 12
- 238000003860 storage Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 238000012360 testing method Methods 0.000 description 8
- 238000004519 manufacturing process Methods 0.000 description 6
- 239000000758 substrate Substances 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 5
- 230000002829 reductive effect Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 239000002184 metal Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 229910021420 polycrystalline silicon Inorganic materials 0.000 description 3
- 229920005591 polysilicon Polymers 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 239000003990 capacitor Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 229910052710 silicon Inorganic materials 0.000 description 2
- 239000010703 silicon Substances 0.000 description 2
- 241000605059 Bacteroidetes Species 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000003989 dielectric material Substances 0.000 description 1
- 239000011229 interlayer Substances 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L21/00—Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
- H01L21/70—Manufacture or treatment of devices consisting of a plurality of solid state components formed in or on a common substrate or of parts thereof; Manufacture of integrated circuit devices or of parts thereof
- H01L21/71—Manufacture of specific parts of devices defined in group H01L21/70
- H01L21/768—Applying interconnections to be used for carrying current between separate components within a device comprising conductors and dielectrics
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10D—INORGANIC ELECTRIC SEMICONDUCTOR DEVICES
- H10D84/00—Integrated devices formed in or on semiconductor substrates that comprise only semiconducting layers, e.g. on Si wafers or on GaAs-on-Si wafers
- H10D84/90—Masterslice integrated circuits
- H10D84/903—Masterslice integrated circuits comprising field effect technology
- H10D84/907—CMOS gate arrays
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10D—INORGANIC ELECTRIC SEMICONDUCTOR DEVICES
- H10D89/00—Aspects of integrated devices not covered by groups H10D84/00 - H10D88/00
- H10D89/10—Integrated device layouts
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Manufacturing & Machinery (AREA)
- Power Engineering (AREA)
- Architecture (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Verfahren zum Entwerfen, für eine Halbleitervorrichtung, eines Layouts, das unprogrammierte Reserve-Standardzellen aufweist, mit den folgenden Schritten:
Erzeugen (602), auf Basis eines ersten Rasterabstands (PSTRAP) von Brückenleitungen einer Metallisierungsschicht, einer Menge von möglichen Werten für einen zweiten Rasterabstand (PSPARE) von unprogrammierten Reserve-Standardzellen;
Wählen (604) eines Elements der Menge von möglichen Werten als den zweiten Rasterabstand (PSPARE);
Platzieren (606) von unprogrammierten Reserve-Standardzellen in einen Logikbereich (904) des Layouts entsprechend dem zweiten Rasterabstand (PSPARE), und Reservieren (608), in jeder Reserve-Standardzelle, eines reservierten Teils, über dem eine oder mehrere Brückenleitungen hergestellt werden können, wobei jeder reservierte Teil über die Reserve-Standardzelle hinweg verläuft; wobei mindestens einer der Schritte Erzeugen, Wählen und Platzieren von einem Prozessor eines Computers ausgeführt wird.
A method of designing, for a semiconductor device, a layout having spare unprogrammed standard cells, comprising the steps of:
generating (602), based on a first grid spacing (P STRAP ) of bridge lines of a metallization layer, a set of possible values for a second grid spacing (P SPARE ) of unprogrammed spare standard cells;
choosing (604) a member of the set of possible values as the second grid spacing (P SPARE );
placing (606) unprogrammed spare standard cells in a logic area (904) of the layout corresponding to the second pitch (P SPARE ), and reserving (608), in each spare standard cell, a reserved portion over which one or more bridge lines are fabricated with each reserved part passing over the reserve standard cell; wherein at least one of creating, selecting and placing is performed by a processor of a computer.
Description
Hintergrund der ErfindungBackground of the Invention
Ein integrierter Schaltkreis (IC) weist eine Anzahl von elektronischen Bauelementen auf. Eine Möglichkeit, den IC darzustellen, ist ein Layout-Diagramm (nachstehend „Layout“). Ein Layout ist hierarchisch und wird in Module zerlegt, die übergeordnete Funktionen ausführen, die von den IC-Entwurfsspezifikationen gefordert werden. Unter Umständen werden bei einem SCD-Projekt (SCD: semicustom design; Universal-Entwurf) die Module in Makrozellen, Standardzellen und kundenspezifische Zellen zerlegt.An integrated circuit (IC) includes a number of electronic components. One way to represent the IC is with a layout diagram (hereafter "layout"). A layout is hierarchical and broken down into modules that perform high-level functions required by IC design specifications. In an SCD project (SCD: semicustom design; universal design), the modules may be broken down into macro cells, standard cells and customer-specific cells.
Für ein gegebenes SCD-Projekt wird eine kundenspezifische Zelle mit einer Anordnung entworfen, die für das gegebene SCD-Projekt spezifisch ist, um (bei Betrieb) eine übergeordnete logische Funktion bereitzustellen, die für das SCD-Projekt spezifisch ist. Im Gegensatz dazu wird eine Bibliothek von Standardzellen ohne Rücksicht auf ein spezielles Projekt entworfen, und sie umfasst Standardzellen, die (bei Betrieb) übliche untergeordnete logische Funktionen bereitstellen. Hinsichtlich der Grundfläche in einem Layout sind kundenspezifische Zellen größer (normalerweise viel größer) als Standardzellen. Darüber hinaus haben bei einer gegebenen Bibliothek alle Standardzellen mindestens eine Dimension, die die gleiche Größe hat (wobei normalerweise die Größe ein Vielfaches einer Bibliotheks-spezifischen feststehenden Dimension ist), um die Platzierung der Standardzellen in einem Layout zu erleichtern. An sich werden Standardzellen als Zellen bezeichnet, die für ein gegebenes SCD-Projekt vordefiniert sind. Kundenspezifische Zellen können mindestens eine Dimension haben, oder auch nicht, die die gleiche Größe wie die entsprechende Dimension der Standardzellen hat.For a given SCD project, a custom cell is designed with an arrangement specific to the given SCD project to provide (in operation) a high level logical function specific to the SCD project. In contrast, a library of standard cells is designed without regard to a particular project, and includes standard cells that provide (in use) common ancillary logic functions. In terms of footprint in a layout, custom cells are larger (usually much larger) than standard cells. In addition, for a given library, all standard cells have at least one dimension that is the same size (usually the size being a multiple of a library-specific fixed dimension) to facilitate placement of the standard cells in a layout. As such, standard cells are referred to as cells that are predefined for a given SCD project. Custom cells may or may not have at least one dimension that is the same size as the corresponding standard cell dimension.
Ein Verfahren gemäß zum Entwerfen eines Layouts, für eine Halbleitervorrichtung, das Reserve-Standardzellen aufweist, ist aus der
Zusammenfassung der ErfindungSummary of the Invention
Die vorliegende Erfindung betrifft ein Verfahren gemäß Anspruch 1 zum Entwerfen, für eine Halbleitervorrichtung, eines Layouts, dass unprogrammierte Reserve-Standardzellen aufweist, ein maschinenlesbares Medium gemäß Anspruch 9 mit maschinenlesbaren Befehlen zum Ausführen eines Verfahrens zum Entwerfen einer Halbleitervorrichtung und eine Halbleitervorrichtung gemäß Anspruch 14. Bevorzugte Ausführungsformen werden in den abhängigen Ansprüchen angegeben.The present invention relates to a method according to
Figurenlistecharacter list
Aspekte der vorliegenden Erfindung lassen sich am besten anhand der nachstehenden detaillierten Beschreibung in Verbindung mit den beigefügten Zeichnungen verstehen. Es ist zu beachten, dass entsprechend der üblichen Praxis in der Branche verschiedene Elemente nicht maßstabsgetreu gezeichnet sind. Vielmehr können der Übersichtlichkeit der Erörterung halber die Abmessungen der verschiedenen Elemente beliebig vergrößert oder verkleinert sein.
-
1A ist ein Layout, für ein Halbleiter-Bauelement, von ECO-Basiszellen (ECO: technische Änderungsanweisung) in Bezug zu Leitungssegmenten, gemäß einigen Ausführungsformen. -
1B ist ein Layout, das dem Layout von1A entspricht, der Zuweisung von Metallisierungssegmenten zu entsprechenden Maskierungsstrukturen/-farben, gemäß einigen Ausführungsformen. -
1C ist ein Layout, das dem Layout von1A entspricht, von reservierten Bereichen in den ECO-Basiszellen, gemäß einigen Ausführungsformen. -
2 ist ein Layout, für ein Halbleiter-Bauelement, von reservierten Bereichen in den ECO-Basiszellen, gemäß einigen Ausführungsformen. -
3A ist ein weiteres Layout, für ein Halbleiter-Bauelement, von reservierten Bereichen in den ECO-Basiszellen, gemäß einigen Ausführungsformen. -
3B ist eine vereinfachte Variante des Layouts von3A , gemäß einigen Ausführungsformen. -
3C ist eine weitere vereinfachte Variante des Layouts von3A , gemäß einigen Ausführungsformen. -
4A ist ein Layout, für ein Halbleiter-Bauelement, von ECO-Basiszellen in Bezug zu Leitungssegmenten, gemäß einigen Ausführungsformen. -
4B ist eine vereinfachte Variante des Layouts von4A , gemäß einigen Ausführungsformen. -
4C ist eine weitere vereinfachte Variante des Layouts von4A , gemäß einigen Ausführungsformen. -
5A ist ein Layout, für ein Halbleiter-Bauelement, von ECO-Basiszellen in Bezug zu Leitungssegmenten, gemäß einigen Ausführungsformen. -
5B ist eine vereinfachte Variante des Layouts von5A , gemäß einigen Ausführungsformen. -
5C ist eine weitere vereinfachte Variante des Layouts von5A , gemäß einigen Ausführungsformen. -
6A ist ein Ablaufdiagramm eines Verfahrens zum Entwerfen, für ein Halbleiter-Bauelement, eines Layouts, gemäß einigen Ausführungsformen. -
6B ist eine detaillierte Darstellung eines Blocks in dem Ablaufdiagramm von6A , gemäß einigen Ausführungsformen. -
6C ist eine detaillierte Darstellung eines weiteren Blocks in dem Ablaufdiagramm von6A , gemäß einigen Ausführungsformen. -
6D ist eine detaillierte Darstellung eines weiteren Blocks in dem Ablaufdiagramm von6A , gemäß einigen Ausführungsformen. -
7A ist ein Ablaufdiagramm eines Verfahrens zum Entwerfen, für ein Halbleiter-Bauelement, eines Layouts, gemäß einigen Ausführungsformen. -
7B ist eine detaillierte Darstellung eines Blocks in dem Ablaufdiagramm von7A , gemäß einigen Ausführungsformen. -
7C ist eine detaillierte Darstellung eines weiteren Blocks in dem Ablaufdiagramm von7A , gemäß einigen Ausführungsformen. -
8 ist ein Ablaufdiagramm eines Verfahrens zum Entwerfen, für ein Halbleiter-Bauelement, eines Layouts, gemäß einigen Ausführungsformen. -
9A ist eine schematische Darstellung eines Halbleiter-Bauelements, gemäß einigen Ausführungsformen. -
9B ist eine schematische Darstellung des Halbleiter-Bauelements von9A , das mit einer oder mehreren programmierten ECO-Zellen abgeändert ist, gemäß einigen Ausführungsformen. -
10 ist ein Ablaufdiagramm eines Verfahrens zur Herstellung eines Halbleiter-Bauelements, gemäß einigen Ausführungsformen. -
11 ist ein Blockdiagramm eines EDA-Systems gemäß einigen Ausführungsformen.
-
1A 14 is a layout, for a semiconductor device, of basic ECO cells (ECO: technical change instruction) in relation to line segments, according to some embodiments. -
1B is a layout similar to the layout of1A corresponds to the assignment of metallization segments to corresponding masking patterns/colors, according to some embodiments. -
1C is a layout similar to the layout of1A corresponds to reserved areas in the ECO basic cells, according to some embodiments. -
2 12 is a layout, for a semiconductor device, of reserved areas in the ECO basic cells, according to some embodiments. -
3A 12 is another layout, for a semiconductor device, of reserved areas in the ECO basic cells, according to some embodiments. -
3B is a simplified variant of the layout of3A , according to some embodiments. -
3C is another simplified variant of the layout of3A , according to some embodiments. -
4A 14 is a layout, for a semiconductor device, of basic ECO cells in relation to line segments, according to some embodiments. -
4B is a simplified variant of the layout of4A , according to some embodiments. -
4C is another simplified variant of the layout of4A , according to some embodiments. -
5A 14 is a layout, for a semiconductor device, of basic ECO cells in relation to line segments, according to some embodiments. -
5B is a simplified variant of the layout of5A , according to some embodiments. -
5C is another simplified variant of the layout of5A , according to some embodiments. -
6A 12 is a flow diagram of a method for designing a layout for a semiconductor device, according to some embodiments. -
6B FIG. 12 is a detailed representation of a block in the flow chart of FIG6A , according to some embodiments. -
6C FIG. 12 is a detailed representation of another block in the flow chart of FIG6A , according to some embodiments. -
6D FIG. 12 is a detailed representation of another block in the flow chart of FIG6A , according to some embodiments. -
7A 12 is a flow diagram of a method for designing a layout for a semiconductor device, according to some embodiments. -
7B FIG. 12 is a detailed representation of a block in the flow chart of FIG7A , according to some embodiments. -
7C FIG. 12 is a detailed representation of another block in the flow chart of FIG7A , according to some embodiments. -
8th 12 is a flow diagram of a method for designing a layout for a semiconductor device, according to some embodiments. -
9A -
9B 12 is a schematic representation of the semiconductor device of FIG9A , modified with one or more programmed ECO cells, according to some embodiments. -
10 FIG. 12 is a flow chart of a method of manufacturing a semiconductor device, according to some embodiments. -
11 12 is a block diagram of an EDA system, according to some embodiments.
Detaillierte BeschreibungDetailed description
Die nachstehende Beschreibung liefert viele verschiedene Ausführungsformen oder Beispiele zum Implementieren verschiedener Merkmale des bereitgestellten Gegenstands. Nachstehend werden spezielle Beispiele für Komponenten, Materialien, Werte, Schritte, Prozesse, Anordnungen oder dergleichen beschrieben, um die vorliegende Erfindung zu vereinfachen. Diese sind natürlich lediglich Beispiele und sollen nicht beschränkend sein. Es werden auch andere Komponenten, Materialien, Werte, Schritte, Anordnungen usw. in Betracht gezogen. Zum Beispiel kann die Herstellung eines ersten Elements über oder auf einem zweiten Element in der nachstehenden Beschreibung Ausführungsformen umfassen, bei denen das erste und das zweite Element in direktem Kontakt ausgebildet werden, und sie kann auch Ausführungsformen umfassen, bei denen zusätzliche Elemente zwischen dem ersten und dem zweiten Element so ausgebildet werden können, dass das erste und das zweite Element nicht in direktem Kontakt sind. Darüber hinaus können in der vorliegenden Erfindung Bezugszahlen und/oder -buchstaben in den verschiedenen Beispielen wiederholt werden. Diese Wiederholung dient der Einfachheit und Übersichtlichkeit und schreibt an sich keine Beziehung zwischen den verschiedenen erörterten Ausführungsformen und/oder Konfigurationen vor.The description below provides many different embodiments or examples for implementing various features of the provided subject matter. Specific examples of components, materials, values, steps, processes, configurations, or the like are described below in order to simplify the present invention. These are, of course, merely examples and are not intended to be limiting. Other components, materials, values, steps, arrangements, etc. are also contemplated. For example, the fabrication of a first member over or on a second member in the description below may include embodiments where the first and second members are formed in direct contact, and may also include embodiments where additional members are formed between the first and the second element can be formed such that the first and second elements are not in direct contact. Furthermore, in the present invention, reference numbers and/or letters may be repeated in the various examples. This repetition is for the purpose of simplicity and clarity and does not in itself dictate a relationship between the various embodiments and/or configurations discussed.
Darüber hinaus können hier räumlich relative Begriffe, wie etwa „darunter befindlich“, „unter“, „untere(r)“/„unteres“, „darüber befindlich“, „obere(r)“/„oberes“ und dergleichen, zur einfachen Beschreibung der Beziehung eines Elements oder einer Struktur zu einem oder mehreren anderen Elementen oder Strukturen verwendet werden, die in den Figuren dargestellt sind. Die räumlich relativen Begriffe sollen zusätzlich zu der in den Figuren dargestellten Orientierung andere Orientierungen des in Gebrauch oder in Betrieb befindlichen Bauelements umfassen. Die Vorrichtung kann anders ausgerichtet werden (um 90 Grad gedreht oder in einer anderen Orientierung), und die räumlich relativen Deskriptoren, die hier verwendet werden, können ebenso entsprechend interpretiert werden.In addition, spatially relative terms such as "beneath", "below", "lower", "above", "upper" and the like may be used herein for ease of reference describing the relationship of an element or structure to one or more other elements or structures depicted in the figures. The spatially relative terms are intended to encompass other orientations of the device in use or operation in addition to the orientation depicted in the figures. The device may be oriented differently (rotated 90 degrees or in a different orientation) and the spatially relative descriptors used herein interpreted accordingly as well.
Beim Platzieren von ECO-Basiszellen in eine Zeile eines Layouts wird durch Minimierung von Spalten zwischen benachbarten ECO-Basiszellen unnützer Zwischenraum reduziert und die Dichte (ausgedrückt als die Anzahl von Bauelementen je Zelle) wird erhöht. Außerdem wird die Platzierung von ECO-Basiszellen in eine Zeile eines Layouts vereinfacht, wenn die ECO-Basiszellen nicht nur eine feststehende Höhe, sondern auch eine feststehende Breite haben. Bei einigen Ausführungsformen werden die Spalte reduziert und die Platzierung von ECO-Basiszellen in eine Zeile wird vereinfacht, indem ein Rasterabstand PECOB (oder PSPARE) der ECO-Basiszellen verwendet wird, der gleichmäßig in einen Rasterabstand PM1-STRAP von M1-Brücken unterteilt werden kann. Bei einigen Ausführungsformen umfasst eine Brücke ein oder mehrere Segmente in einer Metallisierungsschicht, die eine Betriebsspannung führen, z. B. VDD, VSS oder dergleichen. Die erste Metallisierungsschicht wird als M1 bezeichnet. Somit ist eine Brücke in der M1-Schicht eine M1-Brücke. Um beim Platzieren von ECO-Basiszellen in eine Zeile die Spalte zwischen benachbarten ECO-Basiszellen zu eliminieren (um ein Aneinandergrenzen zu erreichen), wird bei einigen Ausführungsformen der Rasterabstand PECOB der ECO-Basiszellen so gewählt, dass er mit dem Gerade-/Ungerade-Status (Paritätsstatus) der Anzahl CLR von Maskierungsstrukturen/-farben übereinstimmt.When placing ECO basic cells in a row of a layout, by minimizing gaps between adjacent ECO basic cells, useless space is reduced and density (expressed as the number of devices per cell) is increased. In addition, the placement of ECO basic cells in a row of a layout is simplified if the ECO basic cells have not only a fixed height but also a fixed width. In some embodiments, the gaps are reduced and the placement of ECO basic cells in a row is simplified by using a pitch P ECOB (or P SPARE ) of ECO basic cells that is evenly spaced into a pitch P M1-STRAP of M1 bridges can be subdivided. In some embodiments, a bridge includes one or more segments in a metallization layer, the one Conduct operating voltage, e.g. B. VDD, VSS or the like. The first metallization layer is referred to as M1. Thus, a bridge in the M1 layer is an M1 bridge. In order to eliminate the gaps between adjacent ECO basic cells (to achieve contiguity) when placing ECO basic cells in a row, in some embodiments the pitch P ECOB of the ECO basic cells is chosen to correspond to the even/odd -Status (parity status) of the number CLR of masking structures/colors matches.
Im Rahmen eines SCD-Projekts (SCD: Universal-Entwurf) können außer Standardzellen und kundenspezifischen Zellen auch Makrozellen verwendet werden. Ähnlich wie kundenspezifische Zellen bieten Makrozellen eine höhere Funktion als Standardzellen. Jedoch werden Makrozellen ähnlich wie Standardzellen ohne Berücksichtigung eines speziellen Projekts entworfen. Daher werden Makrozellen mit einer Anordnung entworfen, die eine übergeordnete Funktion bereitstellt, die gebräuchlich ist, z. B. RAM, ROM, serielle Schnittstelle, ALE-Prozessorkern oder dergleichen. Makrozellen, die eine übergeordnete Funktion haben, nehmen eine größere Anschlussfläche ein. Daher haben Makrozellen eine viel größere Anschlussfläche als Standardzellen. Einige Makrozellen sind Anordnungen von Standardzellen.In addition to standard cells and customer-specific cells, macro cells can also be used within an SCD project (SCD: Universal Design). Similar to custom cells, macro cells offer higher function than standard cells. However, similar to standard cells, macro cells are designed without any special project in mind. Therefore, macrocells are designed with an arrangement that provides an overriding function that is common, e.g. B. RAM, ROM, serial port, ALE processor core or the like. Macro cells, which have a higher function, take up a larger connection area. Therefore, macro cells have a much larger footprint than standard cells. Some macro cells are arrays of standard cells.
Ebenfalls ähnlich wie kundenspezifische Zellen haben Makrozellen nicht mindestens eine Dimension, die die gleiche Größe wie die entsprechende Dimension der Standardzellen hat. Aus diesem Grund werden Makrozellen und kundenspezifische Zellen als Nicht-Standardzellen bezeichnet.Also similar to custom cells, macro cells do not have at least one dimension that is the same size as the corresponding dimension of standard cells. For this reason, macro cells and custom cells are referred to as non-standard cells.
Es gibt zwei Arten von Standardzellen, und zwar funktionelle Standardzellen und Reserve-Standardzellen, wobei letztere als ECO-Zellen (ECO: Technische Änderungsanweisung) bezeichnet werden. Funktionelle Standardzellen werden mit speziellen inneren Anordnungen von Komponenten definiert, um (bei Betrieb) entsprechende häufige untergeordnete Funktionen bereitzustellen, z. B. logische Funktionen, die einen Inverter, NAND, NOR, XOR, D-Latch, Entkopplungskondensator (DeCap), AND-OR-Invert (AOI), OR-AND-Invert (OAI), Multiplexer, Flipflop oder dergleichen umfassen.There are two types of standard cells, functional standard cells and reserve standard cells, the latter being referred to as ECO cells (ECO: Technical Change Instruction). Functional standard cells are defined with specific internal arrangements of components to provide (in use) corresponding common ancillary functions, e.g. B. Logic functions that include an inverter, NAND, NOR, XOR, D-Latch, decoupling capacitor (DeCap), AND-OR-Invert (AOI), OR-AND-Invert (OAI), multiplexer, flip-flop or the like.
ECO-Zellen umfassen ECO-Basiszellen und programmierte ECO-Zellen. Eine programmierte ECO-Zelle bezeichnet eine ECO-Basiszelle, die programmiert worden ist. Ähnlich wie eine funktionelle Zelle wird eine ECO-Basiszelle mit einer speziellen inneren Anordnung von Komponenten definiert. Anders als eine funktionelle Zelle ist eine ECO-Basiszelle nicht so eingerichtet, dass sie eine spezielle Funktion bereitstellt. Im Gegensatz zu Standardzellen, die arbeiten (betriebsfähig sind), arbeitet eine ECO-Basiszelle (die noch nicht programmiert worden ist) nicht (sie ist nicht betriebsfähig).ECO cells include ECO basic cells and programmed ECO cells. A programmed ECO cell refers to a basic ECO cell that has been programmed. Similar to a functional cell, a basic ECO cell is defined with a specific internal arrangement of components. Unlike a functional cell, a basic ECO cell is not set up to provide a specific function. Unlike standard cells that work (are operational), a basic ECO cell (which has not yet been programmed) does not work (it is not operational).
Eingedenk dessen, dass ECO-Basiszellen Reserve-Zellen sind, ist die Anordnung einer ECO-Basiszelle ausreichend, da sie im Bedarfsfall so „programmiert“ (transformiert) werden kann, dass sie arbeitet und eine der gleichen üblichen untergeordneten Funktionen bereitstellt, wie sie von einer entsprechenden funktionellen Standardzelle bereitgestellt werden. Bei einigen Ausführungsformen reicht die Anordnung einer ECO-Basiszelle aus, um sie so „programmieren“ (transformieren) zu können, dass sie arbeitet und eine der logischen Funktionen bereitstellt, die einen Inverter, NAND, NOR, XOR, D-Latch, Entkopplungskondensator (DeCap), AND-OR-Invert (AOI), OR-AND-Invert (OAI), Multiplexer, Flipflop oder dergleichen umfassen. Bei einigen Ausführungsformen wird eine ECO-Basiszelle zu einer programmierten ECO-Zelle programmiert (transformiert), indem eine oder mehrere Verbindungen in mindestens einer ECO-Basiszelle (interne ECO-Basiszellen-Verbindungen), wie etwa Metall-Silizium-Kontakte und Metall-Polysilizium-Kontakte, geändert werden oder andere Metallschicht-Änderungen mit entsprechenden Durchkontaktierungen oder Kontakten vorgenommen werden.Bearing in mind that basic ECO cells are reserve cells, the placement of a basic ECO cell is sufficient as it can be “programmed” (transformed) when needed to operate and provide any of the same common ancillary functions as those provided by a corresponding functional standard cell can be provided. In some embodiments, the arrangement of an ECO basic cell is sufficient to be able to "program" (transform) it to operate and provide any of the logic functions that are an inverter, NAND, NOR, XOR, D-latch, decoupling capacitor ( DeCap), AND-OR-Invert (AOI), OR-AND-Invert (OAI), multiplexer, flip-flop or the like. In some embodiments, a basic ECO cell is programmed (transformed) into a programmed ECO cell by making one or more connections in at least one basic ECO cell (internal basic ECO cell connections), such as metal-silicon contacts and metal-polysilicon -Contacts are changed or other metal layer changes are made with appropriate vias or contacts.
Bei einem SCD-Projekt werden EDA-Tools (EDA: Entwurfsautomatisierung elektronischer Systeme) dazu verwendet, um funktionelle Standardzellen aus Standardzellen-Bibliotheken auszuwählen und die funktionellen Standardzellen (gegebenenfalls) zusammen mit Nicht-Standardzellen in ein erstes Layout zu platzieren. EDA-Tools werden auch zum Durchführen der Trassierung verwendet, durch die die funktionellen Standardzellen und die Nicht-Standardzellen unter Verwendung einer oder mehrerer Metallschichten und entsprechender Durchkontaktierungen und Kontakte verbunden werden. EDA-Tools werden außerdem zum Prüfen der Trassierung verwendet. In Abhängigkeit von den Prüfergebnissen werden die Auswahl, Platzierung und Trassierung der Standard- und Nicht-Standardzellen überarbeitet. Bei zumindest einigen Ausführungsformen ist der gesamte Auswahl-, Platzierungs-, Trassierungs- und Prüfungsprozess (SPRT-Prozess) iterativ. Schließlich laufen die SPRT-Prozess-Iterationen zu einem abgeschlossenen Layout zusammen.In an SCD project, EDA (Electronic Systems Design Automation) tools are used to select functional standard cells from standard cell libraries and to place the functional standard cells (if any) along with non-standard cells in a first layout. EDA tools are also used to perform the routing that connects the functional standard cells and the non-standard cells using one or more metal layers and corresponding vias and contacts. EDA tools are also used to verify the route. Depending on the test results, the selection, placement and routing of the standard and non-standard cells are revised. In at least some embodiments, the entire selection, placement, routing, and verification (SPRT) process is iterative. Eventually, the SPRT process iterations converge into a completed layout.
Aus verschiedenen Gründen (z. B. wegen einer Entwurfsänderung, eines inakzeptablen Zeitproblems, eines inakzeptablen Elektromigrationsproblems oder dergleichen) muss ein nahezu abgeschlossenes Layout (oder ein Layout, das andernfalls als ein endgültiges Layout angesehen worden wäre) normalerweise einer Überarbeitung unterzogen werden. In Erwartung von Umständen, bei denen die Überarbeitung einen relativ geringen Umfang haben würde, und als eine Schutzmaßnahme (oder Absicherung) dagegen, den iterativen SPRT-Prozess neu starten (erneut beginnen) zu müssen, werden EDA-Tools auch zum Platzieren einer oder mehrerer ECO-Basiszellen in das erste Layout verwendet.For various reasons (e.g., because of a design change, an unacceptable timing issue, an unacceptable electromigration issue, or the like), a near-completed layout (or a layout that would otherwise have been considered a final layout) usually needs to undergo a rework. in anticipation of circumstances, where the revision would be relatively small in scope, and as a safeguard (or safeguard) against having to restart (start again) the iterative SPRT process, EDA tools are also used to place one or more ECO base cells into the first layout used.
Da die ECO-Basiszellen nicht arbeiten, sind sie nicht mit funktionellen Zellen verbunden. Wenn das fast abgeschlossene Layout überarbeitet werden soll, durchlaufen eine oder mehrere ECO-Basiszellen eine „Programmierung“, bei der die eine oder die mehreren ECO-Basiszellen in eine oder mehrere „programmierte“ ECO-Zellen umgewandelt werden. Dann wird die programmierte ECO-Zelle so trassiert, dass sie funktionsfähig mit einer oder mehreren funktionellen Standardzellen verbunden wird. Bei einigen Ausführungsformen entsprechen ECO-Basiszellen den ECO-Basiszellen, die in dem am 14. November 2006 erteilten US-Patent
Bei einigen Ausführungsformen ist die M(i)-Schicht M1. In den
In
Wie vorstehend dargelegt worden ist, haben für eine gegebene Bibliothek alle Standardzellen mindestens eine Dimension, die die gleiche feststehende Größe hat, um die Platzierung der Standardzellen in ein Layout zu unterstützen. Bei einigen Ausführungsformen ist die feststehende Größe ein Vielfaches einer Bibliotheks-spezifischen feststehenden Dimension. Bei einigen Ausführungsformen ist die feststehende Größe ein Vielfaches des Mindestabstands PPOLY zwischen Polysilizium-Strukturelementen.As discussed above, for a given library, all standard cells have at least one dimension that is the same fixed size to aid in the placement of the standard cells in a layout. In some embodiments, the fixed size is a multiple of a library-specific fixed dimension. In some embodiments, the fixed size is a multiple of the minimum spacing P POLY between polysilicon features.
Bei einigen Ausführungsformen sind die Standardzellen (die funktionelle Zellen und ECO-Zellen umfassen) Polygone. Bei einigen Ausführungsformen sind die Standardzellen rechteckige Polygone. Bei einigen Ausführungsformen ist aus der Perspektive einer Draufsicht die x-Achse horizontal und die y-Achse ist vertikal, sodass die horizontale und die vertikale Dimension einer rechteckigen Standardzelle als die entsprechende Breite bzw. Höhe der Zelle bezeichnet werden. Bei einigen Ausführungsformen ist das Layout in Zeilen angeordnet, und die Höhe aller Standardzellen ist gleichgroß, um die Platzierung der Standardzellen in die Zeilen des Layouts zu unterstützen.In some embodiments, the standard cells (which include functional cells and ECO cells) are polygons. In some embodiments, the default cells are rectangular polygons. In some embodiments, from a top view perspective, the x-axis is horizontal and the y-axis is vertical, such that the horizontal and vertical dimensions of a standard rectangular cell are referred to as the cell's corresponding width and height, respectively. In some embodiments, the layout is arranged in rows and the height of all standard cells is the same to help place the standard cells in the rows of the layout.
Kommen wir zu
Um Verbindungen zwischen den Zellen zu ermöglichen, weist ein Layout einen Stapel von planaren „Metallisierungs"schichten auf, die mit planaren Zwischenschicht-Dielektrikum(ILD)-Strukturen durchsetzt sind. Eine gegebene „Metallisierungs"schicht weist parallele leitende Leitungssegmente auf. Bei einigen Ausführungsformen bestehen die leitenden Leitungssegmente aus Metall. Bei einigen Ausführungsformen sind die parallelen Leitungssegmente in aufeinander folgenden Metallisierungsschichten senkrecht zueinander. Bei einigen Ausführungsformen verlaufen die parallelen Leitungssegmente in einer i-ten Metallisierungsschicht [M(i)] in einer ersten Richtung, die parallelen Leitungssegmente in einer (i+1)-ten Metallisierungsschicht [M(i+1)] verlaufen in einer zweiten Richtung, die senkrecht zu der ersten Richtung ist, die parallelen Leitungssegmente in einer (i+2)-ten Metallisierungsschicht [M(i+2)] verlaufen in der ersten Richtung, die parallelen Leitungssegmente in einer (i+3)-ten Metallisierungsschicht [M(i+3)] verlaufen in der zweiten Richtung, und so weiter. Bei einigen Ausführungsformen ist die erste Richtung parallel zu der x-Achse, und die zweite Richtung ist parallel zu der y-Achse.To enable connections between cells, a layout comprises a stack of planar "metallization" layers interspersed with planar interlayer dielectric (ILD) structures. A given "metallization" layer has parallel conductive line segments. In some embodiments, the conductive line segments are made of metal. In some embodiments, the parallel line segments are in sequential metallization layers perpendicular to each other. In some embodiments, the parallel line segments in an i th metallization layer [M(i)] run in a first direction, the parallel line segments in an (i+1) th metallization layer [M(i+1)] run in a second direction which is perpendicular to the first direction, the parallel line segments in an (i+2)th metallization layer [M(i+2)] run in the first direction, the parallel line segments in an (i+3)th metallization layer [ M(i+3)] run in the second direction, and so on. In some embodiments, the first direction is parallel to the x-axis and the second direction is parallel to the y-axis.
Bei einigen Ausführungsformen sind die Segmente der i-ten Metallisierungsschicht M(i) regelmäßig voneinander beabstandet, was als der Rasterabstand PMET-SEG(i) der Metallisierungssegmente bezeichnet wird. Bei einigen Ausführungsformen ist der Rasterabstand PMET-SEG(i) ein Vielfaches des Mindestabstands PPOLY zwischen Polysilizium-Strukturelementen.In some embodiments, the segments of the i th metallization layer M(i) are regularly spaced from each other, referred to as the pitch P MET-SEG (i) of the metallization segments. In some embodiments, the pitch P MET-SEG (i) is a multiple of the minimum pitch P POLY between polysilicon features.
Eine ILD-Struktur ermöglicht eine Trennung zwischen einer Metallisierungsschicht, die auf der ILD-Struktur hergestellt ist, und einer anderen Struktur, auf der die ILD-Struktur hergestellt ist. Bei einigen Ausführungsformen ist die andere Struktur eine weitere Metallisierungsschicht. Bei einigen Ausführungsformen ist die andere Struktur ein Siliziumsubstrat, das z. B. Transistor-Komponenten oder dergleichen aufweist. Daher ist ein großer Teil einer ILD-Struktur ein dielektrisches Material. Wenn die ILD-Struktur unter einer M(i+1)-Schicht hergestellt wird, wird sie als eine i-te ILD-Struktur [ILD(i)] bezeichnet.An ILD structure enables a separation between a metallization layer fabricated on the ILD structure and another structure on which the ILD structure is fabricated. In some embodiments, the other structure is another layer of metallization. In some embodiments, the other structure is a silicon substrate, e.g. B. transistor components or the like. Therefore, a large part of an ILD structure is a dielectric material. If the ILD structure is fabricated under an M(i+1) layer, it is referred to as an ith ILD structure [ILD(i)].
Um eine Verbindung zwischen einem M(i+1)-Segment (das in der ersten Richtung verläuft) in der M(i+1)-Schicht und einem M(i)-Segment (das in der zweiten Richtung verläuft) in der M(i)-Schicht herzustellen, wenn die ILD(i) zwischen die M(i+1)- und die M(i)-Schicht geschichtet ist, weist die ILD(i) außerdem Kontakt-/Durchkontaktierungsstrukturen auf, die in einer dritten Richtung verlaufen, die senkrecht zu der ersten und der zweiten Richtung ist. In ähnlicher Weise ist die ILDo zwischen die M1-Schicht und das Substrat geschichtet, wenn i = 1 ist. Um eine Verbindung zwischen einem M1-Segment und einer Komponente in dem Substrat, z. B. einer Transistor-Komponente oder dergleichen, herzustellen, weist die ILDo ebenfalls Kontaktstrukturen auf, die in der dritten Richtung verlaufen. Bei einigen Ausführungsformen ist die dritte Richtung parallel zu der z-Achse. Bei einigen Ausführungsformen ist die M(i)-Schicht M1. In
Wie vorstehend dargelegt worden ist, sind die ECO-Basiszellen in dem Layout 100A von
Es ist zu beachten, dass nicht unbedingt alle der Mi-Segmente 120A, 120B, 122A, 122B und 124, der mehreren Instanzen des M1-Segments 124, der Gate-Strukturen 130A und 130B und der mehreren Instanzen der Gate-Struktur 132 nich erhalten sind, nachdem die ECO-Basiszellen hergestellt worden sind und/oder nachdem eine oder mehrere der ECO-Basiszellen programmiert worden sind. Zum Beispiel hat jedes der Mi-Segmente 120A, 120B, 122A und 122B und der Gate-Strukturen 130A und 130B, jede der mehreren Instanzen des M1-Segments 124 und jede der mehreren Instanzen der Gate-Struktur 132 das Potential, nach der Herstellung der ECO-Basiszellen bestehen zu bleiben. Daher wird in Betracht gezogen, dass eine gegebene ECO-Basiszelle eine unterschiedliche Menge von Mi-Segmenten und/oder eine unterschiedliche Menge von Gate-Strukturen haben könnte.Note that not all of the
Bei einigen Ausführungsformen werden die ECO-Basiszellen zunächst unter Verwendung einer Cut-Last-Methode hergestellt, die das Herstellen aller möglichen Gate-Strukturen, das vollständige oder teilweise Entfernen (Abschneiden) von ausgewählten Gate-Strukturen, das Herstellen aller möglichen Mi-Segmente und das vollständige oder teilweise Entfernen (Abschneiden) von ausgewählten Mi-Segmenten umfasst, sodass weniger als alle der mehreren Instanzen des M1-Segments 124 und weniger als alle der mehreren Instanzen der Gate-Struktur 132 bestehen bleiben. Bei einigen Ausführungsformen werden die ECO-Basiszellen zunächst unter Verwendung einer Cut-Last-Methode hergestellt, die das Herstellen aller möglichen Mi-Segmente, das vollständige oder teilweise Entfernen (Abschneiden) von ausgewählten M1-Segmenten, das Herstellen aller möglichen Gate-Strukturen und das vollständige oder teilweise Entfernen (Abschneiden) von ausgewählten Gate-Strukturen umfasst, sodass weniger als alle der mehreren Instanzen des M1-Segments 124 und weniger als alle der mehreren Instanzen der Gate-Struktur 132 bestehen bleiben. Bei einigen Ausführungsformen werden beim Programmieren einer ECO-Basiszelle eine oder mehrere der verbliebenen mehreren Instanzen des M1-Segments 124 abgeschnitten, sodass noch weniger Instanzen des M1-Segments 124 bestehen bleiben.In some embodiments, the ECO base cells are first fabricated using a cut-last method, which involves fabricating all possible gate structures, removing (slicing) all or part of selected gate structures, fabricating all possible Mi-segments, and includes removing (clipping) all or part of selected Mi segments such that less than all of the multiple instances of
Die Mi-Segmente 120A, 120B, 122A, 122B und 124 haben jeweils eine kürzere Dimension parallel zu der x-Achse und eine längere Dimension parallel zu der y-Achse. Daher wird die Längsachse jedes der Mi-Segmente 120A, 120B, 122A, 122B und 124 als eine Achse angesehen, die eine oder mehrere entsprechende der Zeilen 118A bis 118C schneidet. Die Mi-Segmente 120A, 120B, 122A und 122B sind jeweils so lang, dass sie sich (senkrecht) über die Zeilen 118A bis 118C erstrecken können. Im Gegensatz dazu hat jedes Mi-Segment 124 eine kürzere Länge als die Mi-Segmente 120A, 120B, 122A und 122B. Entsprechende Mi-Segmente in der ersten Zeile 118A, in der zweiten Zeile 118B und in der dritten Zeile 118C sind in der vertikalen Richtung in einer Linie ausgerichtet, wie es durch das Phantom-Rechteck 126 dargestellt ist. Es werden auch andere horizontale Dimensionen und/oder vertikale Dimensionen für die Mi-Segmente 120A, 120B, 122A und 122B in Betracht gezogen.The
Bei einigen Ausführungsformen hat jedes Mi-Segment 124 eine so kurze Länge, dass es nicht über einen entsprechenden unteren und/oder oberen Rand einer oder mehrerer der ECO-Basiszellen 106A bis 106F, 108A, 110A bis 110F, 112A, 114A bis 114F und 116A in der vertikalen Richtung hinaus reicht. Bei einigen Ausführungsformen werden alle Mi-Segmente 124 so platziert, dass eine imaginäre horizontale Bezugslinie, die jedes Mi-Segment 124 halbiert, kollinear mit einer imaginären Bezugslinie ist, die eine oder mehrere entsprechende der ECO-Basiszellen 106A bis 106F, 108A, 110A bis 110F, 112A, 114A bis 114F und 116A halbiert. Es werden auch andere vertikale Positionen für die Mi-Segmente 124 in Bezug zu einer oder mehreren entsprechenden ECO-Basiszellen 106A bis 106F, 108A, 110A bis 110F, 112A, 114A bis 114F und 116A in Betracht gezogen. Es werden auch andere horizontale Dimensionen und/oder vertikale Dimensionen für die Mi-Segmente 124 in Betracht gezogen.In some embodiments, each
Des Zusammenhangs halber sind die Gate-Strukturen 130A, 130B und 132 in dem Layout 100A von
Bei einigen Ausführungsformen hat jedes Mi-Segment 124 eine so kurze Länge, dass es in der vertikalen Richtung nicht über eine oder mehrere entsprechende ECO-Basiszellen 106A bis 106F, 108A, 110A bis 110F, 112A, 114A bis 114F und 116A hinweg verläuft. Bei einigen Ausführungsformen werden alle Mi-Segmente 124 so platziert, dass eine imaginäre horizontale Bezugslinie, die jedes Mi-Segment 124 halbiert, kollinear mit einer imaginären Bezugslinie ist, die eine oder mehrere entsprechende der ECO-Basiszellen 106A bis 106F, 108A, 110A bis 110F, 112A, 114A bis 114F und 116A halbiert. Es werden auch andere horizontale Dimensionen und/oder vertikale Dimensionen für die Gate-Strukturen 130A, 130B und 132 in Betracht gezogen.In some embodiments, each
Wenn bei einigen Ausführungsformen eine oder mehrere ECO-Basiszellen programmiert (transformiert) werden, ist das Ergebnis eine oder mehrere entsprechende programmierte ECO-Basiszellen. Ebenfalls als ein Ergebnis umfassen die eine oder die mehreren internen ECO-Basiszellen-Verbindungen, die infolgedessen verändert werden, mindestens eine Verbindung mit einem entsprechenden Metallisierungssegment in der M1-Schicht. Wenn bei einigen Ausführungsformen eine programmierte ECO-Basiszelle trassiert wird, werden eine oder mehrere Zwischenzellenverbindungen zwischen der programmierten ECO-Basiszelle und einer oder mehreren funktionellen Standardzellen hergestellt. Mindestens eine der Zwischenzellenverbindungen ist eine Verbindung mit einem Mi-Segment.In some embodiments, when one or more ECO basic cells are programmed (transformed), the result is one or more correspondingly programmed ECO basic cells. Also as a result, the one or more internal ECO base cell connections that are altered as a result include at least one connection to a corresponding metallization segment in the M1 layer. In some embodiments, when a programmed ECO base cell is traced, one or more intercell connections are made between the programmed ECO base cell and one or more functional standard cells. At least one of the intercell connections is a connection to a Mi segment.
Während der globalen Trassierung sind einige der Leitungssegmente in der M1-Schicht zur Verwendung als Brücken (M1-Brücken) vorgesehen. Bei einigen Ausführungsformen sind einige der Mi-Brücken mit der Netzspannung VDD verbunden. Bei einigen Ausführungsformen sind einige der Mi-Brücken mit der Betriebserde VSS verbunden. Bei einigen Ausführungsformen erstrecken sich die Brückensegmente über mehrere Zeilen in dem Layout.During global mapping, some of the line segments in the M1 layer are designated for use as bridges (M1 bridges). In some embodiments, some of the Mi bridges are connected to the power supply VDD. In some embodiments, some of the Mi bridges are connected to the common ground VSS. In some embodiments, the bridge segments span multiple rows in the layout.
Bei einigen Ausführungsformen sind in einem Logikbereich des Layouts die Mi-Brücken regelmäßig voneinander beabstandet, was als Rasterabstand PM1-STRAP der Mi-Brücken bezeichnet wird. Bei einigen Ausführungsformen ist der Rasterabstand PM1-STRAP der M1-Brücke ein Vielfaches des Rasterabstands PMET-SEG der Metallisierungssegmente. In
Im Gegensatz dazu sind die mehreren Instanzen des M1-Segments 124 zur Verwendung als Nicht-Brückensegmente vorgesehen. Es sei daran erinnert, dass eine Brücke eine oder mehrere Segmente in einer Metallisierungsschicht umfasst, die eine Betriebsspannung führen, z. B. VDD, VSS oder dergleichen. Somit ist bei einigen Ausführungsformen ein Nicht-Brückensegment in einer Metallisierungsschicht ein Segment, das nicht direkt mit einem Brückensegment verbunden ist. Daher führt ein Nicht-Brückensegment keine Betriebsspannung, z. B. VDD, VSS oder dergleichen. Bei einigen Ausführungsformen werden M1-Nicht-Brückensegmente zum Verbinden von Komponenten in einer gegebenen ECO-Basiszelle oder zum Herstellen von Verbindungen zwischen der gegebenen ECO-Basiszelle und einer oder mehreren anderen Standardzellen verwendet. Die eine oder die mehreren internen ECO-Basiszellen-Verbindungen, die während der Programmierung verändert werden, umfassen mindestens eine Verbindung mit einer oder mehreren entsprechenden Instanzen des M1-Nicht-Brückensegments 124. Wenn bei einigen Ausführungsformen eine programmierte ECO-Basiszelle trassiert wird, um eine oder mehrere Zwischenzellenverbindungen zwischen der programmierten ECO-Basiszelle und einer oder mehreren funktionellen Standardzellen herzustellen, ist mindestens eine der Zwischenzellenverbindungen eine Verbindung mit einer Instanz des M1-Nicht-Brückensegments 124.In contrast, the multiple instances of the
Um Strukturgrößen des Halbleiter-Bauelements zu erzeugen, die kleiner als die sind, die mit einer fotolithografischen Einfachbelichtung erzeugt werden können, wird das Verfahren der fotolithografischen Mehrfachbelichtung (OLE-Mehrfachbelichtung) verwendet. In der Regel werden mit einer fotolithografischen Doppelbelichtung Strukturgrößen erzeugt, die kleiner als die bei einer fotolithografischen Einfachbelichtung sind, mit einer fotolithografischen Dreifachbelichtung werden Strukturgrößen erzeugt, die kleiner als die bei einer fotolithografischen Doppelbelichtung sind, und so weiter. Die Anzahl von fotolithografischen Belichtungen wird im Allgemeinen als Anzahl von Maskierungsstrukturen (oder Maskenstrukturen) (oder Maskenfarben) bezeichnet. Hier wird die Anzahl von Maskierungsstrukturen/-farben als CLR bezeichnet, wobei CLR eine positive ganze Zahl ist.In order to produce feature sizes of the semiconductor device that are smaller than those that can be produced with a photolithographic single exposure, the method of photolithographic multiple exposure (OLE multiple exposure) is used. Typically, a double photolithographic exposure will produce feature sizes smaller than a single photolithographic exposure, a triple photolithographic exposure will produce feature sizes smaller than a double photolithographic exposure, and so on. The number of photolithographic exposures is generally referred to as the number of mask (or mask) features (or mask colors). Here the number of masking structures/colors is denoted as CLR, where CLR is a positive integer.
Bei einigen Ausführungsformen wird das Layout 100A unter Verwendung einer fotolithografischen Mehrfachbelichtung erzeugt. Bei einigen Ausführungsformen wird das Layout 100A mit einer fotolithografischen Mehrfachbelichtung erzeugt, bei der CLR eine ungerade Zahl ist. Bei einigen Ausführungsformen wird das Layout 100A mit einer fotolithografischen Dreifachbelichtung erzeugt, bei der CLR = 3 ist. Bei einigen Ausführungsformen wird das Layout 100A mit einer fotolithografischen Mehrfachbelichtung erzeugt, bei der CLR eine gerade Zahl ist. Bei einigen Ausführungsformen wird das Layout 100A mit einer fotolithografischen Doppelbelichtung erzeugt, bei der CLR = 2 ist. Es ist zu beachten, dass in
Das Layout 100B ist eine vereinfachte Variante des Layouts 100A von
Außer
Kommen wir zu
Bei einigen Ausführungsformen kann ein Rasterabstand PECOB (oder PSPARE) der ECO-Basiszellen gleichmäßig in den Rasterabstand PM1-STRAP (oder allgemeiner: PSTRAP) der Mi-Brücken unterteilt werden, sodass der Rasterabstand PECOB aus einer Menge Θ von positiven ganzzahligen Werten θ gewählt wird und
Bei einigen Ausführungsformen wird der Rasterabstand PECOB der ECO-Basiszellen so gewählt, dass er das kleinste Element der Menge Θ ist, d. h. der kleinste Wert von θ, sodass:
In
BEISPIEL: - Nehmen wir als ein Beispiel an, dass PM1-STRAP = 30 ist. Insbesondere gibt der Rasterabstand PM1-STRAP = 30 an, dass es 30 Mi-Segmente entlang der horizontalen Richtung in dem Zwischenraum zwischen dem Beginn der einen Brücke und dem Beginn der nächsten Brücke gibt. Die möglichen Werte für θ, die die Gleichung (1) erfüllen, d. h. die möglichen Werte für θ, die den Rasterabstand PECOB gleichmäßig in den Rasterabstand PM1-STRAP unterteilen, sind {θ} = {1, 2, 3, 5, 6, 10, 15, 30}. Eingedenk dessen, dass 2 < θ < PM1-STRAP ist, müssen θ = 1, θ = 2 und θ = 30 gelöscht werden. Somit ist bei dem gegebenen Beispiel PECOB = θ = 3. Der Rasterabstand PECOB = 3 gibt an, dass es 3 Mi-Segmente entlang der horizontalen Richtung in dem Zwischenraum zwischen dem Beginn der einen ECO-Basiszelle und dem Beginn der nächsten ECO-Basiszelle gibt.EXAMPLE: - As an example, assume that PM1-STRAP =30. In particular, the grid spacing P M1-STRAP = 30 indicates that there are 30 Mi segments along the horizontal direction in the gap between the start of one bridge and the start of the next bridge. The possible values for θ that satisfy equation (1), i.e. the possible values for θ that equally divide the grid spacing P ECOB into the grid spacing P M1-STRAP are {θ} = {1, 2, 3, 5, 6, 10, 15, 30}. Bearing in mind that 2<θ<P M1-STRAP , θ=1, θ=2 and θ=30 must be deleted. Thus, in the example given, P ECOB = θ = 3. The grid spacing P ECOB = 3 indicates that there are 3 Mi segments along the horizontal direction in the space between the start of one basic ECO cell and the start of the next ECO cell. basic cell there.
Bei einigen Ausführungsformen ist ein Bezugsrand einer ECO-Basiszelle zu einer gewählten der Maskierungsstrukturen/-farben ausgerichtet. Bei einigen Ausführungsformen ist der Bezugsrand jeder ECO-Basiszelle zu einer Mitte der gewählten Maskierungsstruktur/-farbe ausgerichtet. Zum Beispiel ist in
Die Werte für θ, die die zusätzliche Forderung nach Übereinstimmung des Paritätsstatus von CLR erfüllen können, sind eine Teilmenge der Menge Θ, d. h. eine Teilmenge von {θ}. Um die Teilmenge von {θ} unterscheiden zu können, wird die Teilmenge als Menge Δ von positiven ganzzahligen Werten d bezeichnet, wobei Δ ⊂ Θ., d. h. {d} ⊂ {θ}. ist. Daher ist der Rasterabstand PMECOB:
Bei einigen Ausführungsformen wird der Rasterabstand PMECOB so gewählt, dass er das kleinste Element der Menge Δ ist, das dem Paritätsstatus von CLR entspricht, d. h. der kleinste Wert von d, der dem Paritätsstatus von CLR entspricht, sodass
BEISPIEL: Als eine Variante des vorstehenden Beispiels wird nicht nur angenommen, dass PM1-STRAP = 30 ist, sondern auch, dass das gewählte fotolithografische Belichtungsverfahren ein Doppelbelichtungsverfahren, wie etwa das in den
BEISPIEL: Als eine Variante des vorstehenden ersten Beispiels wird nicht nur angenommen, dass PM1-STRAP = 30 ist, sondern auch, dass das gewählte fotolithografische Belichtungsverfahren ein Dreifachbelichtungsverfahren ist, sodass CLR = 3 ist. Unabhängig von dem Paritätsstatus von CLR sind die möglichen Werte für θ, die die Gleichung (2) erfüllen, d. h. die möglichen Werte für θ, die den Rasterabstand PECOB gleichmäßig in den Rasterabstand PM1-STRAP unterteilen, {θ} = {1, 2, 3, 5, 6, 10, 15, 30}. Hier wird jedoch der Paritätsstatus von CLR berücksichtigt. Hier ist CLR = 3, und somit ist der Paritätsstatus von CLR ungeradzahlig, da 1 = CLR mod 2 = 3 mod 2 ist. Daher ist die Teilmenge von {θ}, also {d}, die die Gleichung (4) erfüllt, d. h. für die alle Elemente dem Paritätsstatus von CLR entsprechen (wobei hier CLR ungeradzahlig ist), {d} = {1, 3, 5, 15}. Unter Verwendung von Gleichung (5) und eingedenk dessen, dass 2 < d < PM1-STRAP ist, muss d = 1 gelöscht werden. Somit ist in dem gegebenen Beispiel PMECOB = 3.EXAMPLE: As a variant of the first example above, assume not only that PM1-STRAP =30, but also that the photolithographic exposure process chosen is a triple exposure process, so CLR=3. Regardless of the parity status of CLR, the possible values for θ that satisfy equation (2), i.e. the possible values for θ that equally divide the grid spacing P ECOB into the grid spacing P M1-STRAP , are {θ} = {1, 2, 3, 5, 6, 10, 15, 30}. Here, however, the parity status of the CLR is taken into account. Here CLR=3, and thus the parity status of CLR is odd since 1=
Wenn eine gegebene Menge von Mi-Segmenten in einer ECO-Basiszelle für einen speziellen Zweck reserviert wird, kann die gegebene Menge von Mi-Segmenten für den speziellen Zweck verwendet werden. Zum Beispiel gibt die Reservierung der gegebenen Menge von Mi-Segmenten in einer ECO-Basiszelle für eine Brücke an, dass die gegebene Menge von Mi-Segmenten für eine Brücke verwendet wird.If a given set of Mi-segments in an ECO basic cell is reserved for a special purpose, the given set of Mi-segments can be used for the special purpose. For example, reserving the given set of Mi segments in a basic ECO cell for a bridge indicates that the given set of Mi segments is used for a bridge.
Wenn ein Bereich in einer ECO-Basiszelle für einen speziellen Zweck reserviert wird, können die Mi-Segmente in dem reservierten Bereich für den speziellen Zweck verwendet werden. Zum Beispiel zeigt die Reservierung eines Bereichs in einer ECO-Basiszelle für eine Brücke an, dass die Mi-Segmente in dem reservierten Bereich für eine Brücke verwendet werden. Bei einigen Ausführungsformen wird ein und derselbe Bereich in jeder ECO-Basiszelle für den gleichen Zweck reserviert.When an area in an ECO basic cell is reserved for a special purpose, the Mi segments in the reserved area can be used for the special purpose. For example, the reservation of an area in an ECO basic cell for a bridge indicates that the Mi segments in the reserved area are used for a bridge. In some embodiments, one and the same area in each ECO base cell is reserved for the same purpose.
Das Layout 100C ist eine vereinfachte Variante des Layouts 100A von
Bei einigen Ausführungsformen bestimmt zusätzlich zu der Reservierung der gleichen Anzahl von Mi-Segmenten jede ECO-Basiszelle in einer Bibliothek von Standardzellen den gleichen Bereich in der Zelle als den Bereich, in dem sich die reservierte Anzahl von Mi-Segmenten befindet. Die Reservierung des gleichen Bereichs in jeder ECO-Basiszelle für Mi-Segmente vereinfacht die Platzierung einer gegebenen ECO-Basiszelle in eine Zeile eines Layouts weiter, da sie z. B. den möglichen Konflikt beseitigt, der andernfalls auftreten könnte, wenn Mi-Segmente, die für andere Zwecke als für Brücken vorgesehen waren, dann auch zur Verwendung als Brückensegmente benötigt werden.In some embodiments, in addition to reserving the same number of Mi segments, each basic ECO cell in a library of standard cells designates the same area in the cell as the area in which the reserved number of Mi segments resides. Reserving the same area in each ECO basic cell for Mi-segments further simplifies the placement of a given ECO basic cell in a row of a layout, since it e.g. B. Eliminates the possible conflict that might otherwise arise when Mi segments intended for purposes other than bridges are then also required to be used as bridge segments.
In
Außerdem sind in den ECO-Basiszellen 106A bis 106F, 108A, 110A bis 110F, 112A, 114A bis 114F und 116A entsprechende Bereiche 142A bis 142F, 146A, 152A bis 152F, 156A, 162A bis 162F und 166A nicht-reservierte Bereiche. Keiner der nicht-reservierten Bereiche 142A bis 142F, 146A, 152A bis 152F, 156A, 162A bis 162F und 166A wird durch entsprechende reservierte Bereiche 140A bis 140F, 144A, 150A bis 150F, 154A, 160A bis 160F und 164A in zwei Teile geteilt.Also, in the ECO
Die Mi-Segmente in den nicht-reservierten Bereichen 142A bis 142F, 146A, 152A bis 152F, 156A, 162A bis 162F und 166A sind für die Verwendung als M1-Nicht-Brückensegmente bestimmt. In
Das Layout 200 ist eine Variante des Layouts 100C von
In
In
Außerdem sind in den ECO-Basiszellen 206A bis 206F, 208A, 210A bis 210F, 212A, 214A bis 214F und 216A entsprechende Bereiche 242A bis 242F, 246A, 252A bis 252F, 256A, 262A bis 262F und 266A nicht-reservierte Bereiche. Keiner der nicht-reservierten Bereiche 242A bis 242F, 246A, 252A bis 252F, 256A, 262A bis 262F und 266A wird durch entsprechende reservierte Bereiche 240A bis 240F, 244A, 250A bis 250F, 254A, 260A bis 260F und 264A in zwei Teile geteilt. Die Mi-Segmente in den nicht-reservierten Bereichen 242A bis 242F, 246A, 252A bis 252F, 256A, 262A bis 262F und 266A sind für die Verwendung als M1-Nicht-Brückensegmente bestimmt.Also, in the ECO
Bei einigen Ausführungsformen ist die M(i)-Schicht M1. In den
Das Layout 300 ist eine Variante des Layouts 100C von
In den
Als eine Folge der Zentrierung hat jede ECO-Basiszelle in den
Bei einigen Ausführungsformen ist die M(i)-Schicht M1. In den
Die
Ähnlich wie in
Linke Ränder der reservierten Bereiche 440A bis 440C, 444A bis 444C, 448A bis 448C, 452A bis 452C, 460A bis 460C, 464A bis 464C, 468A bis 468C, 472A bis 472C, 480A bis 480C, 484A bis 484C, 488A bis 488C und 492A bis 492C sind zu linken Rändern in entsprechenden ECO-Basiszellen 406A bis 406C, 408A bis 408C, 410A bis 410C, 412A bis 412C, 416A bis 416C, 418A bis 418C, 420A bis 420C, 422A bis 422C, 424A bis 424C, 426A bis 426C, 428A bis 428C und 430A bis 430C ausgerichtet. Die Mi-Segmente in den reservierten Bereichen 440A bis 440C, 444A bis 444C, 448A bis 448C, 452A bis 452C, 460A bis 460C, 464A bis 464C, 468A bis 468C, 472A bis 472C, 480A bis 480C, 484A bis 484C, 488A bis 488C und 492A bis 492C sind für die Verwendung als M1-Brückensegmente bestimmt.Left edges of
Außerdem sind in den ECO-Basiszellen 406A bis 406C, 408A bis 408C, 410A bis 410C, 412A bis 412C, 416A bis 416C, 418A bis 418C, 420A bis 420C, 422A bis 422C, 424A bis 424C, 426A bis 426C, 428A bis 428C und 430A bis 430C entsprechende Bereiche 442A bis 442C, 446A bis 446C, 450A bis 450C, 454A bis 454C, 462A bis 462C, 466A bis 46C, 470A bis 470C, 474A bis 474C, 482A bis 482C, 486A bis 486C, 490A bis 490C und 494A bis 494C nicht-reservierte Bereiche.Also in the ECO
Die Mi-Segmente in den reservierten Bereichen 440A, 460A und 480A sind für die Verwendung als entsprechende Mi-Brückensegmente 435A bis 435B bestimmt. Die Mi-Brückensegmente in den reservierten Bereichen 444A, 464A und 484A sind für die Verwendung als entsprechende Mi-Brückensegmente 436A und 436B bestimmt. Die Mi-Segmente in den reservierten Bereichen 448A, 468A und 488A sind für die Verwendung als entsprechende Mi-Brückensegmente 437A und 437B bestimmt. Die Mi-Segmente in den reservierten Bereichen 452A, 472A und 492A sind für die Verwendung als entsprechende Mi-Brückensegmente 438A und 438B bestimmt.The Mi segments in
Bei einigen Ausführungsformen ist die M(i)-Schicht M1. In den
Bei einigen Ausführungsformen wird ein Layout 500A unter Verwendung eines fotolithografischen Mehrfachbelichtungsverfahrens erzeugt. Bei einigen Ausführungsformen wird das Layout 500A mit einem fotolithografischen Mehrfachbelichtungsverfahren erzeugt, bei dem CLR eine gerade Zahl ist. Bei einigen Ausführungsformen wird das Layout 500A mit einem fotolithografischen Doppelbelichtungsverfahren erzeugt, bei dem CLR = 2 ist. Bei einigen Ausführungsformen wird das Layout 500A mit einem fotolithografischen Mehrfachbelichtungsverfahren erzeugt, bei dem CLR eine ungerade Zahl ist. Bei einigen Ausführungsformen wird das Layout 500A mit einem fotolithografischen Dreifachbelichtungsverfahren erzeugt, bei dem CLR = 3 ist. Es ist zu beachten, dass in den
In den
In
In dem Block 608 wird in jeder Reservezelle ein Teil als ein reservierter Teil reserviert/gewählt, wobei eine oder mehrere der Brückenleitungen über dem reservierten Teil hergestellt werden können. Bei einigen Ausführungsformen verläuft jeder reservierte Teil über die Reservezelle hinweg. Einzelheiten des Blocks 608 werden unter Bezugnahme auf
In
Der Block 618 weist die Blöcke 620 bis 624 auf. In dem Block 620 wird eine erste Gruppe von in Frage kommenden positiven ganzen Zahlen berechnet, wobei jedes Element der ersten Gruppe eine positive ganze Zahl ist, die gleichmäßig in den Rasterabstand PSTRAP unterteilt werden kann. Von dem Block 620 geht der Ablauf zu einem Block 622 weiter. In dem Block 622 wird eine zweite Gruppe von in Frage kommenden positiven ganzen Zahlen berechnet, wobei jedes Element der zweiten Gruppe gleichmäßig durch die Anzahl CLR von Masken teilbar ist. Von dem Block 622 geht der Ablauf zu einem Block 624 weiter. In dem Block 624 werden die erste und die zweite Gruppe geteilt, um eine dritte Gruppe von in Frage kommenden positiven ganzen Zahlen zu erzeugen. Die dritte Gruppe stellt die Menge von möglichen Werten für einen Rasterabstand PSPARE von Reserve-Standardzellen dar.
In
In
In
In dem Block 712 wird in jeder Reservezelle ein Teil als ein reservierter Teil reserviert/gewählt, wobei eine oder mehrere Brückenleitungen über dem reservierten Teil hergestellt werden können. Bei einigen Ausführungsformen verläuft jeder reservierte Teil über die Reservezelle hinweg. Von dem Block 712 geht der Ablauf zu einem Block 714 weiter. In dem Block 714 wird jeder reservierte Teil so angeordnet/platziert, dass ein restlicher Teil der Reservezelle nicht in Teile unterteilt wird. Von dem Block 714 geht der Ablauf zu einem Block 716 weiter. In dem Block 716 werden eine oder mehrere Masken für das Layout auf Grund des Rasterabstands PSTRAP und des Rasterabstands PSPARE erzeugt. Von dem Block 716 geht der Ablauf zu einem Block 718 weiter. In dem Block 718 wird ein Halbleiter-Bauelement unter Verwendung der einen oder mehreren Masken hergestellt.In
In
In
In
Das Bauelement 900 weist einen IC auf, der auf einem Substrat 921 hergestellt ist. Das Bauelement 900 weist einen Logikbereich 904 auf. Bei einigen Ausführungsformen ist der Logikbereich 904 so konfiguriert, dass er eine übergeordnete Funktionalität des Bauelements 900 bereitstellt. Bei einigen Ausführungsformen stellt der Logikbereich 904 einen oder mehrere Schaltkreise dar. Bei einigen Ausführungsformen weist der Logikbereich 904 eine Matrix 970 von ECO-Zellen und eine oder mehrere Nicht-Standardzellen 951 (eine oder mehrere kundenspezifische Zellen und/oder eine oder mehrere Makrozellen) auf. Bei einigen Ausführungsformen weist der Logikbereich 904 die Matrix 970 von ECO-Zellen und eine oder mehrere funktionelle Standardzellen 955 auf, die in einer oder mehreren Anordnungen organisiert sind, die eine oder mehrere entsprechende höhere Funktionen bereitstellen. Die Nicht-Standardzellen 951 umfassen eine Gruppe aus einer oder mehreren Nicht-Standardzellen 953. Die funktionellen Standardzellen 955 umfassen eine Gruppe aus einer oder mehreren funktionellen Standardzellen 957. Die ECO-Zellen in der Matrix 970 umfassen eine Gruppe 971 aus einer oder mehreren ECO-Zellen und eine Gruppe 975 aus einer oder mehreren ECO-Zellen. Zunächst sind alle ECO-Zellen in der Matrix 970 ECO-Basiszellen, da noch keine der ECO-Zellen zu einer programmierten ECO-Zelle programmiert (transformiert) worden ist.
In
In dem Block 1025 werden eine oder mehrere ECO-Basiszellen in der Matrix 970 programmiert, wenn die Prüfergebnisse anzeigen, dass der Entwurf überarbeitet werden soll und/oder eine Entwurfsänderung empfangen worden ist. Wenn zum Beispiel der Entwurf überarbeitet werden soll, um die ausgefallene Gruppe 953 und/oder die ausgefallene Gruppe 957 (die in
Bei mindestens einer Ausführungsform werden eine oder mehrere ECO-Basiszellen in der Matrix 970 so programmiert und trassiert, dass in dem Logikbereich 904 eine oder mehrere Zellen (nicht dargestellt) (die nicht unbedingt ausgefallen sind) modifiziert statt ersetzt werden. Bei mindestens einer Ausführungsform werden eine oder mehrere ECO-Basiszellen in der Matrix 970 so programmiert und trassiert, dass dem Logikbereich 904 eine neue Funktionalität verliehen wird. Bei einigen Ausführungsformen werden der überarbeitete Entwurf des IC und/oder ein IC, der auf Grund des überarbeiteteten Entwurfs hergestellt worden ist, geprüft, um festzustellen, ob weitere Überarbeitungen vorgenommen werden sollen. Bei mindestens einer Ausführungsform wird der Prozess so lange wiederholt, bis festgestellt wird, dass der IC neu entworfen werden soll oder dass der überarbeitete Entwurf des IC für die Massenfertigung ausreichend ist.In at least one embodiment, one or more ECO base cells in
Die vorstehenden Verfahren umfassen beispielhafte Schritte, aber diese brauchen nicht unbedingt in der angegebenen Reihenfolge ausgeführt zu werden. Entsprechend dem Grundgedanken und dem Schutzumfang der Ausführungsformen der Erfindung können Schritte gegebenenfalls hinzugefügt, ersetzt, in ihrer Reihenfolge geändert und/oder weggelassen werden. Ausführungsformen, die verschiedene Merkmale und/oder verschiedene Ausführungsformen kombinieren, liegen innerhalb des Schutzumfangs der Erfindung und dürften einem Durchschnittsfachmann nach der Durchsicht dieser Erfindung klar werden.The above methods include example steps, but they do not necessarily have to be performed in the order presented. Steps may be added, substituted, changed in order, and/or omitted according to the spirit and scope of embodiments of the invention. Embodiments combining different features and/or different embodiments are within the scope of the invention and should become apparent to one of ordinary skill in the art after reviewing this invention.
Bei einigen Ausführungsformen werden ein oder mehrere Schritte des Verfahrens 1000 mit einem oder mehreren Computersystemen ausgeführt. Zum Beispiel werden ein oder mehrere der Schritte Entwerfen eines IC, Simulieren eines Entwurfs des IC, Programmieren von ECO-Basiszellen und Trassieren der programmierten ECO-Zellen zu einem Schaltkreis des IC mit einem oder mehreren Computersystemen ausgeführt.In some embodiments, one or more steps of
Bei einigen Ausführungsformen ist das EDA-System 1100 eine Universal-Rechenvorrichtung, die einen Hardware-Prozessor 1102 und ein nichtflüchtiges maschinenlesbares Speichermedium 1104 aufweist. Das Speichermedium 1104 ist unter anderem mit einem Computerprogrammcode 1106 codiert (d. h. es speichert diesen), wobei der Computerprogrammcode 1106 eine Gruppe von ausführbaren Befehlen ist. Gemäß einer oder mehreren Ausführungsformen erfolgt die Ausführung von Befehlen 1106 durch den Hardware-Prozessor 1102 (zumindest teilweise) mit einem EDA-Tool, das einen Teil der, oder alle, folgenden Prozesse implementiert: Auswahl der funktionellen Standardzellen, Platzieren, Trassieren, Prüfen und/oder den gesamten SPRT-Prozess und die Prozesse, die z. B. bei mindestens einem der Verfahren der
Der Prozessor 1102 ist über einen Bus 1108 mit dem maschinenlesbaren Speichermedium 1104 elektrisch verbunden. Der Prozessor 1102 ist durch den Bus 1108 außerdem mit einer E/A-Schnittstelle 1110 elektrisch verbunden. Auch eine Netzwerk-Schnittstelle 1112 ist über den Bus 1108 mit dem Prozessor 1102 elektrisch verbunden. Die Netzwerk-Schnittstelle 1112 ist mit einem Netzwerk 1114 verbunden, sodass der Prozessor 1102 und das maschinenlesbare Speichermedium 1104 externe Elemente über das Netzwerk 1114 verbinden können. Der Prozessor 1102 ist so konfiguriert, dass er den Computerprogrammcode (Befehle) 1106 abarbeitet, der in dem maschinenlesbaren Speichermedium 1104 codiert ist, damit das System 1100 zum Ausführen eines Teils der, oder aller, vorgenannten PROZESSE UND/ODER VERFAHREN verwendet werden kann. Bei einer oder mehreren Ausführungsformen ist der Prozessor 1102 eine zentrale Verarbeitungseinheit (CPU), ein Multiprozessor, ein verteiltes Verarbeitungssystem, eine anwendungsspezifische integrierte Schaltung (ASIC) und/oder eine andere geeignete Verarbeitungseinheit.The
Bei einer oder mehreren Ausführungsformen ist das maschinenlesbare Speichermedium 1104 ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- und/oder Halbleiter-System (oder -Vorrichtung oder -Bauelement). Das maschinenlesbare Speichermedium 1104 umfasst zum Beispiel einen Halbleiter- oder Festkörperspeicher, ein Magnetband, eine Wechselplatte, einen Direktzugriffsspeicher (RAM), einen Festspeicher (ROM), eine starre Magnetplatte und/oder eine optische Platte. Bei einer oder mehreren Ausführungsformen, bei denen optische Platten verwendet werden, ist das maschinenlesbare Speichermedium 1104 eine Compact Disc Read-Only Memory (CD-ROM), eine Compact Disc Read/Write (CD-R/W) und/oder eine digitale Videoplatte (DVD).In one or more embodiments, the machine-
Bei einer oder mehreren Ausführungsformen speichert das Speichermedium 1104 den Computerprogrammcode 1106, der so konfiguriert ist, dass das System 1100 zur Ausführung eines Teils der oder aller vorgenannten PROZESSE UND/ODER VERFAHREN verwendet werden kann [wobei die Abarbeitung (zumindest teilweise) mit dem EDA-Tool erfolgt]. Bei einer oder mehreren Ausführungsformen speichert das Speichermedium 1104 außerdem Informationen, die die Ausführung eines Teils der, oder aller, vorgenannten PROZESSE UND/ODER VERFAHREN ermöglichen. Bei einer oder mehreren Ausführungsformen speichert das Speichermedium 1104 eine Bibliothek 1107 von Standardzellen, die funktionelle Standardzellen und Standard-ECO-Basiszellen umfassen.In one or more embodiments,
Das EDA-System 1100 weist die E/A-Schnittstelle 1110 auf. Die E/A-Schnittstelle 1110 ist mit externen Schaltungen verbunden. Bei einer oder mehreren Ausführungsformen umfasst die E/A-Schnittstelle 1110 eine Tastatur, eine Maus, einen Trackball, einen Touchpad, einen Touchscreen und/oder Kursor-Richtungstasten zum Übermitteln von Informationen und Befehlen an den Prozessor 1102.The
Das EDA-System 1100 weist außerdem eine Netzwerk-Schnittstelle 1112 auf, die mit dem Prozessor 1102 verbunden ist. Die Netzwerk-Schnittstelle 1112 gestattet es dem System 1100, mit dem Netzwerk 1114 zu kommunizieren, mit dem ein oder mehrere Computersysteme verbunden sind. Die Netzwerk-Schnittstelle 1112 umfasst drahtlose Netzwerk-Schnittstellen, wie etwa Bluetooth, Wifi, Wimax, GPRS oder WCDMA; oder drahtgebundene Netzwerk-Schnittstellen, wie etwa Ethernet, USB oder IEEE-1364. Bei einer oder mehreren Ausführungsformen werden ein Teil der, oder alle, vorgenannten PROZESSE UND/ODER VERFAHREN in zwei oder mehr Systemen 1100 implementiert.The
Das System 1100 ist so konfiguriert, dass es über die E/A-Schnittstelle 1110 Informationen empfängt. Die Informationen, die über die E/A-Schnittstelle 1110 empfangen werden, umfassen Befehle, Daten, Entwurfsregeln, Bibliotheken von Standardzellen und/oder andere Parameter für die Verarbeitung durch den Prozessor 1102. Die Informationen werden über den Bus 1108 an den Prozessor 1102 gesendet. Das EDA-System 1100 ist so konfiguriert, dass es Informationen zu einer Benutzerschnittstelle (UI) über die E/A-Schnittstelle 1110 empfängt. Die Informationen werden in dem maschinenlesbaren Medium 1104 als UI 1142 gespeichert.The
Bei einigen Ausführungsformen werden ein Teil der, oder alle, vorgenannten PROZESSE UND/ODER VERFAHREN als eine unabhängige Software-Anwendung für die Abarbeitung durch einen Prozessor implementiert. Bei einigen Ausführungsformen werden ein Teil der, oder alle, vorgenannten PROZESSE UND/ODER VERFAHREN als eine Software-Anwendung implementiert, die Teil einer weiteren Software-Anwendung ist. Bei einigen Ausführungsformen werden ein Teil der, oder alle, vorgenannten PROZESSE UND/ODER VERFAHREN als ein Plug-in für eine Software-Anwendung implementiert. Bei einigen Ausführungsformen wird mindestens einer der vorgenannten PROZESSE UND/ODER VERFAHREN als eine Software-Anwendung implementiert, die Teil eines EDA-Tools ist. Bei einigen Ausführungsformen werden ein Teil der, oder alle, vorgenannten PROZESSE UND/ODER VERFAHREN als eine Software-Anwendung implementiert, die von dem EDA-System 1100 verwendet wird. Bei einigen Ausführungsformen wird ein Layout, das Standardzellen plus ECO-Basiszellen und/oder programmierte ECO-Zellen umfasst, unter Verwendung eines Tools, wie etwa Virtuoso®, das von Cadence Design Systems, Inc. lieferbar ist, oder eines anderen geeigneten Layout-Erzeugungs-Tools erzeugt.In some embodiments, part or all of the foregoing PROCESSES AND/OR METHODS are implemented as an independent software application for execution by a processor. In some embodiments, part or all of the foregoing PROCESSES AND/OR METHODS are implemented as a software application that is part of another software application. In some embodiments, part or all of the foregoing PROCESSES AND/OR METHODS are implemented as a plug-in to a software application. In some embodiments, at least one of the foregoing PROCESSES AND/OR METHODS is implemented as a software application that is part of an EDA tool. In some embodiments, part or all of the foregoing PROCESSES AND/OR METHODS are implemented as a software application used by
Claims (17)
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662402953P | 2016-09-30 | 2016-09-30 | |
US62/402,953 | 2016-09-30 | ||
US15/370,418 | 2016-12-06 | ||
US15/370,418 US10127340B2 (en) | 2016-09-30 | 2016-12-06 | Standard cell layout, semiconductor device having engineering change order (ECO) cells and method |
Publications (2)
Publication Number | Publication Date |
---|---|
DE102017117801A1 DE102017117801A1 (en) | 2018-04-05 |
DE102017117801B4 true DE102017117801B4 (en) | 2022-11-24 |
Family
ID=61623636
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102017117801.5A Active DE102017117801B4 (en) | 2016-09-30 | 2017-08-05 | METHOD FOR DESIGNING A LAYOUT FOR A SEMICONDUCTOR DEVICE, MACHINE READABLE MEDIA WITH MACHINE READABLE INSTRUCTIONS FOR PERFORMING A METHOD FOR DESIGNING A SEMICONDUCTOR DEVICE AND SEMICONDUCTOR DEVICE |
DE102017012456.6A Active DE102017012456B4 (en) | 2016-09-30 | 2017-08-05 | METHOD FOR DESIGNING A LAYOUT FOR A SEMICONDUCTOR DEVICE AND MACHINE READABLE MEDIUM HAVING MACHINE READABLE INSTRUCTIONS FOR EXECUTING THE METHOD |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102017012456.6A Active DE102017012456B4 (en) | 2016-09-30 | 2017-08-05 | METHOD FOR DESIGNING A LAYOUT FOR A SEMICONDUCTOR DEVICE AND MACHINE READABLE MEDIUM HAVING MACHINE READABLE INSTRUCTIONS FOR EXECUTING THE METHOD |
Country Status (1)
Country | Link |
---|---|
DE (2) | DE102017117801B4 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113764410B (en) * | 2020-06-04 | 2024-03-26 | 上海复旦微电子集团股份有限公司 | Semiconductor unit device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020005699A1 (en) | 2000-02-24 | 2002-01-17 | Robert Koenen | Control system for an electric motor having an integral flywheel rotor |
US7137094B2 (en) | 2004-04-16 | 2006-11-14 | Taiwan Semiconductor Manufacturing Company | Method for reducing layers revision in engineering change order |
US7458051B2 (en) | 2005-11-17 | 2008-11-25 | Taiwan Semiconductor Manufacturing Co., Ltd. | ECO cell for reducing leakage power |
US20100162187A1 (en) | 2008-12-23 | 2010-06-24 | Broadcom Corporation | Mixed-Height High Speed Reduced Area Cell Library |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3447673B2 (en) | 2000-06-29 | 2003-09-16 | Necエレクトロニクス株式会社 | Method of designing semiconductor device and method of manufacturing semiconductor device |
WO2015015319A2 (en) | 2013-05-03 | 2015-02-05 | Blackcomb Design Automation Inc. | Architecture of spare wiring structures for improved engineering change orders |
US20160020199A1 (en) | 2014-07-15 | 2016-01-21 | Mediatek Inc. | Semiconductor structure with spare cell region |
-
2017
- 2017-08-05 DE DE102017117801.5A patent/DE102017117801B4/en active Active
- 2017-08-05 DE DE102017012456.6A patent/DE102017012456B4/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020005699A1 (en) | 2000-02-24 | 2002-01-17 | Robert Koenen | Control system for an electric motor having an integral flywheel rotor |
US7137094B2 (en) | 2004-04-16 | 2006-11-14 | Taiwan Semiconductor Manufacturing Company | Method for reducing layers revision in engineering change order |
US7458051B2 (en) | 2005-11-17 | 2008-11-25 | Taiwan Semiconductor Manufacturing Co., Ltd. | ECO cell for reducing leakage power |
US20100162187A1 (en) | 2008-12-23 | 2010-06-24 | Broadcom Corporation | Mixed-Height High Speed Reduced Area Cell Library |
Also Published As
Publication number | Publication date |
---|---|
DE102017117801A1 (en) | 2018-04-05 |
DE102017012456B4 (en) | 2024-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10867100B2 (en) | Integrated circuit designing system | |
DE102019116893B4 (en) | Double-height cell regions, semiconductor device therewith, and method for producing a corresponding layout diagram | |
DE102015200694A1 (en) | METHOD, COMPUTER SYSTEM AND COMPUTER-READABLE STORAGE MEDIUM FOR PRODUCING A LAYOUT OF AN INTEGRATED CIRCUIT | |
DE102012200822B4 (en) | Method of analyzing cells of a cell library | |
DE202016008735U1 (en) | Integrated circuit and masks for the manufacture of an integrated circuit | |
DE102014108739B4 (en) | Layout design method for dual structuring | |
DE102013106541B4 (en) | System for designing a semiconductor device, the device manufactured and methods of using the system | |
DE102019116733B4 (en) | METHOD AND DEVICE OF AN INTEGRATED CIRCUIT LAYOUT | |
DE102019118040A1 (en) | SEMICONDUCTOR DEVICE INCLUDING A CELL REGION HAVING SIMILAR CELL DENSITIES IN LINES OF VARIOUS HEIGHT, AND METHOD AND SYSTEM FOR PRODUCING A LAYOUT DIAGRAM THEREFOR | |
DE68926189T2 (en) | Processing method of layout data | |
CN107887380B (en) | Standard cell layout with Engineering Change Order (ECO) cells, semiconductor device and method thereof | |
DE102017118336A1 (en) | STANDARD CELL LAYOUT, SEMICONDUCTOR COMPONENT WITH TECHNICAL MODIFICATION INSTRUCTIONS (ECO) CELLS AND METHOD | |
DE112014003741T5 (en) | Detect and display a remediation guide for multi-structuring | |
DE102019123621B4 (en) | ROUTING RESOURCES IMPROVING METHOD AND SYSTEM FOR GENERATION OF LAYOUT DIAGRAMS | |
DE102019116952B4 (en) | INTEGRATED CIRCUIT STRUCTURE, LAYOUT DIAGRAMS METHOD AND SYSTEM | |
DE102018108579A1 (en) | INTEGRATED CIRCUIT AND METHOD FOR THE PRODUCTION THEREOF | |
US6907596B2 (en) | Mask data generating apparatus, a computer implemented method for generating mask data and a computer program for controlling the mask data generating apparatus | |
DE102020119280A1 (en) | SPACE REQUIRED FOR MULTI-BIT-FLIP-FLOP | |
DE102016114812A1 (en) | MULTI-STRUCTURING METHOD FOR SEMICONDUCTOR COMPONENTS | |
DE102017117801B4 (en) | METHOD FOR DESIGNING A LAYOUT FOR A SEMICONDUCTOR DEVICE, MACHINE READABLE MEDIA WITH MACHINE READABLE INSTRUCTIONS FOR PERFORMING A METHOD FOR DESIGNING A SEMICONDUCTOR DEVICE AND SEMICONDUCTOR DEVICE | |
DE102018124711A1 (en) | Integrated circuit and layout method for standard cell structures | |
DE102019125900B4 (en) | METAL CUTTING AREA POSITIONING METHOD AND SYSTEM | |
DE102023123018B4 (en) | Wafer-scale chip structure and method and system for designing the structure | |
DE112013005760T5 (en) | Pattern-based supply-and-ground (PG) wiring and through-contact generation | |
DE10245452A1 (en) | Method for determining the arrangement of contact areas on the active top side of a semiconductor chip |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R016 | Response to examination communication | ||
R018 | Grant decision by examination section/examining division | ||
R130 | Divisional application to |
Ref document number: 102017012456 Country of ref document: DE |
|
R020 | Patent grant now final |