DE10303186A1 - Verfahren zur Simulation einer elektrischen Schaltung - Google Patents

Verfahren zur Simulation einer elektrischen Schaltung

Info

Publication number
DE10303186A1
DE10303186A1 DE10303186A DE10303186A DE10303186A1 DE 10303186 A1 DE10303186 A1 DE 10303186A1 DE 10303186 A DE10303186 A DE 10303186A DE 10303186 A DE10303186 A DE 10303186A DE 10303186 A1 DE10303186 A1 DE 10303186A1
Authority
DE
Germany
Prior art keywords
cell
network
instance
variant
networks
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE10303186A
Other languages
English (en)
Other versions
DE10303186B4 (de
Inventor
Hans Ulrich Armbruster
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of DE10303186A1 publication Critical patent/DE10303186A1/de
Application granted granted Critical
Publication of DE10303186B4 publication Critical patent/DE10303186B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods

Landscapes

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

Abstract

Eine elektrische Schaltung ist durch ein Layout sowie durch eine Netzliste beschreibbar. Eine Netzliste weist ein oder mehrere Zellen (3,4) mit jeweils ein oder mehreren Zellinstanzen (5-10) auf. DOLLAR A Aus einem vorliegenden Layout werden intrinsische Kapazitätswerte und Koppelkapazitätswerte der Netze (31, 32, 41, 42, 44) für alle Zellinstanzen (5-10) bestimmt. Anhand dieser Kapazitätswerte werden die Zellinstanzen (5-10) in Varianten eingeordnet. Diese Varianten werden bei der Simulation des Verhaltens der elektrischen Schaltung verwendet.

Description

  • Die Erfindung betrifft ein Verfahren zur Simulation einer elektrischen Schaltung, die durch ein Layout beschreibbar ist.
  • Das Verhalten integrierter, elektrischer Schaltungen wird häufig durch parasitäre Effekte beeinflußt, die durch Leitungen hervorgerufen werden.
  • Dabei sind besonders ungewollte, kapazitive Effekte von Bedeutung, die durch nebeneinander angeordnete oder in unmittelbarer Nähe verlaufende elektrische Leiter hervorgerufen werden. Elektrische Leiter sind durch Kapazitäten und durch Ohmsche Widerstände beschreibbar. Solche kapazitiven, durch Leiter hervorgerufene Effekte werden daher auch als parasitäre Kapazitäten bezeichnet.
  • Parasitäre Kapazitäten können bei verschiedenen Analysen von integrierten, elektrischen Schaltungen beispielsweise bei der Delay- oder Crosstalk-Bestimmung nicht vernachlässigt werden. Elektrische Schaltungen von großer Komplexität können durch ungewollte Effekte, die durch solche parasitären Kapazitäten hervorgerufen werden, unbrauchbar werden. Die Berücksichtung parasitärer Kapazitäten bei der Simulation elektrischer Schaltungen führt infolge der großen Dimension der durch eine Extraktion generierten Netzliste mit parasitären Elementen zu Performance-Problemen sowohl bei der Extraktion als auch in den nachfolgenden Analyseschritten.
  • Oft wird die Extraktion flach durchgeführt. Die dabei entstehende Netzliste beinhaltet zwar alle relevanten Informationen, die Performance der Extraktion sowie der nachfolgenden Analyseschritte auf der Basis einer solchen Netzliste erweist sich infolge der sehr großen zu behandelnden Datenmengen als ungenügend.
  • Eine Alternative hierzu stellt eine hierarchische Vorgehensweise dar, bei der alle Instanzen einer Zellen identisch in die Netzliste eingehen. Dabei ist von Nachteil, daß die unterschiedlichen Umgebungen von Zellinstanzen nicht berücksichtigt werden und eine genaue Simulation der elektrischen Schaltung dadurch nicht möglich ist.
  • Eine weitere Möglichkeit besteht darin, daß jede Instanz einer Zelle als eigene Variante ausgegeben wird. Bei dieser Vorgehensweise ist von Nachteil, daß die resultierende Netzliste eine sehr große Zahl von Zellen enthält und entsprechend unhandlich weiterzuverarbeiten ist. Auch hier ergeben sich Performanceprobleme.
  • Ein Lösungsansatz, gemäß dem Zellen abhängig von ihrer Umgebung klassifiziert werden, ist bisher nicht bekannt.
  • Es ist Aufgabe der Erfindung, ein Verfahren bereitzustellen, mit dem eine vorteilhafte Simulation elektrischer Schaltungen ermöglicht wird, bei dem durch parasitäre Kapazitäten hervorgerufene Effekte berücksichtigt werden.
  • Dabei soll die im Layout bestehende Hierarchie ausgenutzt werden und die unterschiedlichen Umgebungen verschiedener Instanzen gleichartiger Zellen in der resultierenden Netzliste berücksichtigt werden.
  • Gemäß der Erfindung ist eine elektrische Schaltung durch ein Layout sowie nach der Extraktion durch eine Netzliste beschreibbar.
  • Das Layout enthält eine geometrische Beschreibung sämtlicher auf der elektrischen Schaltung angeordneter Schaltungselemente. Diese geometrische Beschreibung ist insbesondere in Form von Polygonen oder Rechtecken ausgebildet.
  • Dabei gliedert sich das Layout in eine Vielzahl von Zellen, die jeweils ein oder mehrere durch geometrische Daten beschriebene Netze aufweisen, die ein oder mehrere Abbilder von elektrischen Schaltungselementen enthalten. Beispielsweise kann eine einfache Zelle alle diejenigen Polygone enthalten, die zusammen einen Inverter darstellen. Weiterhin sind in den Zellen Informationen über diejenigen Schichten der elektrischen Schaltung enthalten, auf denen die Netze oder die Schaltungselemente vorliegen. Dabei ist jedem Polygon diejenige Schicht zugeordnet, auf welcher das entsprechende Netz bzw. das entsprechende elektrische Schaltungselement auf der elektrischen Schaltung abgebildet wird. Ferner weisen manche Zellen Verweise auf weitere Zellen auf. Dabei ist es möglich, Zellen in andere Zellen einzusetzen bzw. zu instanziieren. Beispielsweise kann eine Zelle beliebig oft in andere Zellen eingesetzt werden. Die Netze instantiierter Zellen sind in allen Instanziierungen identisch, besitzen aber häufig unterschiedliche Umgebungen. Dies wirkt sich auf die parasitären Elemente der Netze der Zelle, insbesondere auf die parasitären Kapazitäten aus.
  • Als Netz bezeichnet man die leitende Verbindung zwischen verschiedenen Bauteilen beispielsweise zwischen einem Transistorausgang und einem Transistoreingang. Die Anschlüsse einer Kapazität liegen als genau zwei Netze vor. Elektrische Informationen sind über eine Kapazität von einem Netz zu einem weiteren Netz übertragbar. Man spricht deshalb auch davon, daß eine Kapazität zwei Netze verbindet.
  • Kapazitäten können gegliedert werden in laterale und in intrinsische Kapazitäten. Die Verbindung zu solchen Kapazitäten stellt eine Eigenschaft des jeweiligen Netzes dar. Laterale Kapazitäten können in allgemeinerer Form auch als Koppelkapazitäten bezeichnet werden. Koppelkapazitäten existieren zwischen zwei Signalnetzen, während die intrinsische Kapazität zwischen einem Signalnetz und der Masse besteht. Das erfindungsgemäße Verfahren ist für beliebige Kopplungen anwendbar.
  • Im geometrischen Sinne, d. h. im Layout entspricht einem Netz die Menge aller Polygone, deren Prozessierung in der Herstellung eines integrierten Schaltkreises eine leitende Verbindung zwischen zwei Bauteilen bildet. Die zu einem Netz gehörenden Polygone befinden sich - von Laufzeitverzögerungen elektrischer Signale abgesehen - immer auf demselben elektrischen Potential. Ein Netz kann im Layout im allgemeinen erst nach einer Extraktion gefunden werden, da Polygone verschiedener Schichten zum Netz beitragen können.
  • Gemäß der Erfindung wird zur Simulation einer elektrischen Schaltung auch eine Netzliste eingesetzt. Mittels einer Extraktion wird aus dem vorhandenen Layout eine elektrische Beschreibung erstellt, deren Format als Netzliste bezeichnet wird und deren Informationsgehalt dem eines Schaltplans entspricht.
  • Unter Extraktion wird dabei dasjenige Verfahren verstanden, bei dem den Polygonen Knoteninformationen bzw. Netznamen zugeordnet werden. Dabei wird analysiert, welche der Polygone nach dem Herstellungsprozeß leitend verbunden sind. Diesen Polygonen wird derselbe Knoten zugeordnet, d. h. diese Polygone erhalten denselben Netznamen.
  • Beispiele für bekannte Netzlistenformate sind Spice oder DSPF. Werden bei der Extraktion nicht nur die gewollten Bauteile wie beispielsweise Transistoren in die Netzliste aufgenommen, sondern auch die parasitären, unerwünschten Eigenschaften der Leitungen elektrisch beschrieben, so spricht man von einer "Parasitics Extraction". Die Leitungen werden in diesem Fall meist durch Ohmsche Widerstände und durch Kapazitäten beschrieben. Die Parasitics Extraction generiert eine Netzliste aus einem vorhandenen Layout. Die Simulation dieser Netzliste entspricht dann dem Verhalten der später real produzierten, elektrischen Schaltung.
  • Die Netzliste beinhaltet Informationen über die in ihr enthaltenen Zellen sowie über deren elektrische Verbindungen. Des weiteren kann die Netzliste jeweils eine oder mehrere Instanzen von Zellen aufweisen. Die nach der Parasitics Extraction in der Netzliste vorhandenen Kapazitäten können gegliedert werden in Koppelkapazitäten zu anderen Netzen und in intrinsische Kapazitäten zu Masse. Die Netzliste enthält keine Informationen über die Polygone mehr, sondern nur noch Informationen über die elektrischen Verbindungen. Eine solche Netzliste kann aus dem extrahierten Layout generiert werden.
  • Zur erfindungsgemäßen Anwendung der Variantenklassifizierung ist eine Netzliste nicht notwendig. Eine Netzliste wird zu einem späteren Zeitpunkt erzeugt, und zwar wenn die genaue Extraktion aller parasitären Elemente basierend auf der Variantenklassifizierung des erfindungsgemäßen Verfahrens geschehen ist. Dann wird eine Netzliste erzeugt, die diese Varianten als Zellen enthält. Die Erzeugung der Netzliste kann dabei durch den Einsatz einer geeigneten Software insbesondere der kommerziellen Software Assura der Fa. Cadence erfolgen. Die Schaltkreissimulation der entstandenen hierarchischen Netzliste kann durch Anwendung einer Software insbesondere der Software HSIM der Fa. Nassada erfolgen.
  • Das erfindungsgemäße Verfahren setzt nicht auf einer Netzliste, sondern direkt auf einem extrahierten Layout auf. Das extrahierte Layout enthält die geometrische Information sowie die Information über die Netzzugehörigkeit. Auf diesen beiden Informationen basiert das Verfahren. Ein Aufsetzen des erfindungsgemäßen Verfahrens auf einer Netzliste ist dann denkbar, wenn die Netzliste bereits alle Informationen über zell- und instanzabhängige Kapazitäten enthält.
  • Zunächst werden dabei die Kapazitätswerte für die Kopplungen bei einer isolierten Betrachtung der Zellen bestimmt und gemerkt. Dann werden die umgebungsabhängigen Kapazitätswerte der Kopplungen für alle Zellinstanzen einzeln bestimmt und gemerkt. Anschließend erfolgt das Bestimmen und das Merken der intrinsischen Kapazitätswerte separat für jede Zelle. Danach werden die intrinsischen Kapazitäten der Netze für alle Zellinstanzen der Zellen bestimmt und gemerkt.
  • In dem nächsten Verfahrensschritt wird je ein Vergleichskapazitätswert für jedes Netz bei isolierter Betrachtung der Zellen berechnet. Dieser Vergleichskapazitätswert ergibt sich aus der Summe der Kapazitätswerte der in der betrachteten Zelle enthaltenen Koppelkapazitäten und intrinsischen Kapazitäten. Dabei wird weder die Umgebung der betrachteten Zellen, noch eventuell vorhandene "Overrides" berücksichtigt. Unter "Overrides" versteht man Polygone, die auf Netze in tiefer liegenden Zellen einwirken und deren Geometrie verändern.
  • In einem nächsten Verfahrensschritt werden die Differenzkapazitätswerte jedes Netzes zu dem im vorigen Schritt bestimmten Vergleichskapazitätswert für alle Zellinstanzen berechnet. Dabei werden die umgebungsabhängigen Koppelkapazitätswerte sowie auf anderen Ebenen vorliegende "Overrides" berücksichtigt. Der jeweilige Differenzkapazitätswert ergibt sich dabei aus der Differenz des Kapazitätswerts für die jeweilige Zellinstanz, der die umgebungsabhängigen Kapazitätswerte der Netze und/oder die auf anderen Ebenen vorliegenden "Overrides" berücksichtigt, und aus dem im vorigen Schritt bestimmten Vergleichskapazitätswert.
  • Im nächsten Schritt werden die Zellinstanzen jeder Zelle in verschiedene Varianten für alle Netze eingeordnet. Dabei wird von den im vorigen Schritt bestimmten Differenzkapazitätswerten ausgegangen. In gleiche Varianten eingeordnete Zellinstanzen weisen jeweils ähnliche umgebungsabhängige, kapazitive Eigenschaften auf.
  • Im abschließenden, erfindungsgemäßen Verfahrensschritt wird unter Verwendung der so bestimmten Varianten, in denen die Zellinstanzen eingeordnet sind, das Verhalten der elektrischen Schaltung simuliert.
  • Die Extraktion und die Simulation einer elektrischen Schaltung gestalten sich gerade bei komplexen Schaltungen sehr zeitaufwendig, besonders wenn jede Zellinstanz einzeln extrahiert wird, ohne auf bereits ermittelte und übertragbare Ergebnisse zuzugreifen. Zur Beschleunigung von Extraktionen und Simulationen sind hierarchische Netzlisten geeignet, die nicht nur elektrische Schaltungselemente und deren Verbindungsleitungen, sondern auch Aufrufe bzw. Instanziierungen weiterer Zellen enthalten, deren Verhaltensbeschreibung ebenfalls als Netzliste vorliegt. Solche Zellen werden getrennt extrahiert bzw. simuliert. Auf die im Rahmen der Extraktion einmal errechneten Daten kann beliebig oft zugegriffen werden, ohne diese neu zu berechnen.
  • Die Parasitics Extraction kann beschleunigt werden, wenn mehrfach instanziierte Zellen nur einmal extrahiert werden. Bei der Parasitics Extraction tritt jedoch das Problem auf, daß jede Zellinstanz ihre individuelle Umgebung aufweist und sich deshalb formal gleiche Zellinstanzen umgebungsabhängig in ihren kapazitiven Eigenschaften unterscheiden. Bei dem bekannten Vorgehen der Parasitics Extraction werden alle Zellinstanzen einer Zellen durch eine einzige Definition in der Netzliste berücksichtigt. Dies führt natürlich zu Verlusten bei der Genauigkeit der Extraktion und der Simulation.
  • Um eine hundertprozentige Genauigkeit bei der Extraktion sowie bei der Simulation zu gewährleisten, ist jede Zellinstanz in Abhängigkeit ihrer individuellen Umgebung zu extrahieren. Dies führt zu inakzeptablen Laufzeiten bei der Extraktion sowie bei der Simulation. In diesem Fall entspricht die Datenmenge derjenigen einer flachen Extraktion. Eine Ein-Bit-Zelle eines 256 MB DRAM-Chips führt zu einer Ausgabe von 256 Millionen Zellinstanzen in der entsprechenden Netzliste. Die meisten dieser Zellinstanzen sind jedoch in ihren elektrischen bzw. kapazitiven Eigenschaften identisch.
  • Ein Grundgedanke der Erfindung besteht darin, alle in einer Netzliste vorkommenden Zellinstanzen anhand ihrer durch ihre jeweils unterschiedliche Umgebung bedingten kapazitiven Eigenschaften in Varianten zu klassifizieren, wobei die in jeweils derselben Variante enthaltenen Zellinstanzen ähnliche kapazitive Eigenschaften aufweisen und wobei die Anzahl der Varianten überschaubar gehalten wird. Dabei deckt jede Zellvariante das Verhalten möglichst vieler Zellinstanzen ab. Geometrisch entspricht dies der Annahme identischer Umgebungen dieser Zellinstanzen.
  • Die zu generierenden Zellvarianten unterscheiden sich in ihren parasitären Elementen. Um die Vorteile einer hierarchischen Extraktion und Simulation zu nutzen, wird die Anzahl der verschiedenen Zellvarianten überschaubar gehalten. Erfindungsgemäß werden die Zellinstanzen bereits vor der tatsächlichen Durchführung der Parasitics Extraction jeweils einer Variante zugeordnet. Dies wird als "Upfront Variant Identification" bezeichnet. Durch das erfindungsgemäße Verfahren wird weiterhin die Problematik gelöst, daß die tatsächlichen Parasitics zu diesem Zeitpunkt noch gar nicht bekannt sind, wobei eine separate Betrachtung jeder einzelnen Instanz im Vorfeld vermieden wird.
  • Bei der erfindungsgemäßen Extraktion der parasitären Kapazitäten auf Basis der Variantenklassifizierung wird eine Netzliste erzeugt, die in der Größe überschaubar bleibt. Eine solche Netzliste ist mit hierarchischen Analysemethoden sehr effizient analysierbar. Nach erfolgter Klassifizierung der Zellinstanzen wird durch die Parasitics Extraction nicht jede Instanz einer Zelle einzeln betrachtet, sondern es erfolgt ein Zugriff auf die erzeugten Varianten der Zellinstanzen. Dadurch wird die Performance der Extraktion erheblich gesteigert.
  • Die durch die erfindungsgemäße Variantenbildung erzeugte Datenstruktur ist voll hierarchisch aufgebaut, wobei die Klassifizierung der Zellinstanzen aufgrund der Netzklassifizierung erfolgt. Zur erfindungsgemäßen Klassifizierung der Zellvarianten wird vorteilhafterweise keine geometrische Größe, sondern die elektrischen Eigenschaften der parasitären Kapazitäten benutzt.
  • Gemäß einer Ausführungsform der Erfindung wird der erfindungsgemäße Schritt des Einordnens der Zellinstanzen jeder Zelle in verschiedene Varianten für alle Netze durch Zugrundelegung der Differenzkapazitätswerte wie folgt durchgeführt.
  • Generell kann die tolerierte Abweichung absolut in femtoFarad oder relativ in Prozent angegeben werden. Das Ausführungsbeispiel verwendet ausschließlich die absolute Abweichung.
  • Zu Beginn werden Toleranzwerte T1 und T2 sowie ein Wert für eine Laufvariable k festgelegt. T1 ist dabei ein absoluter Toleranzwert mit der Einheit in Kapazität, T2 ein relativer Toleranzwert in Prozent.
  • Anschließend werden eine Zelle aus der zuvor erzeugten Netzliste, ein Netz aus dieser Zelle sowie eine k-te Zellinstanz dieser Zelle ausgewählt.
  • In einem nächsten Verfahrensschritt wird der Differenzkapazitätswert Dk für die k-te Zellinstanz aus der Differenz der Summe des intrinsischen und des lateralen Kapazitätswerts für das ausgewählte Netz und aus der Summe des intrinsischen und des lateralen Kapazitätswerts der k-ten Zellinstanz bestimmt.
  • In dem nächsten erfindungsgemäßen Verfahrensschritt erfolgt eine Überprüfung, ob eine Variante V existiert, für die gilt:

    |Dk - Dv| ≤ T1 und (|Dk - Dv|)/Dv.100 ≤ T2
  • Falls dies nicht der Fall ist, wird im nächsten Schritt eine neue Variante V erzeugt, die den Wert Dv = Dk aufweist, und im übernächsten Schritt die k-te Zellinstanz der Zelle in diese Variante V eingeordnet.
  • Falls eine Variante existiert, für welche die obigen Bedingungen erfüllt sind, so wird im nächsten Schritt die k-te Zellinstanz der Zelle in diese Variante V eingeordnet.
  • Anschließend wird die Laufvariable k um einen vorgebbaren Wert insbesondere um den Wert 1 inkrementiert.
  • In dem nächsten erfindungsgemäßen Verfahrensschritt erfolgt eine Überprüfung, ob eine k-te Zellinstanz existiert.
  • Falls eine k-te Zellinstanz der Zelle existiert, erfolgt eine Wiederholung der Verfahrensschritt ab dem Auswählen der k-ten Zellinstanz der Zelle.
  • Falls keine k-te Zellinstanz der Zelle existiert, erfolgt in einem nächsten Verfahrensschritt eine Prüfung, ob ein weiteres Netz in der betrachteten Zelle existiert.
  • Falls dies der Fall ist, wird dieses fetz ausgewählt, ein Wert für eine Laufvariable k festgelegt. Es erfolgt eine Wiederholung der Verfahrensschritte ab dem Schritt des Auswählens der k-ten Zellinstanz der Zelle.
  • Durch diese Ausführungsform der Erfindung werden Zellinstanzen aufgrund ihrer umgebungsabhängigen kapazitiven Eigenschaften schnell und zuverlässig in verschiedene Varianten eingeordnet.
  • Anhand der durch einen Benutzer individuell vorgebbaren Toleranzwerte T1 und T2 kann der Grad der Ähnlichkeit der in jeweils der gleichen Variante V zusammengefaßten Zellinstanzen sowie die Gesamtzahl der Varianten benutzerdefiniert eingestellt werden.
  • Zur Einordnung der Zellinstanzen in die einzelnen Varianten wird transparenterweise auf einen Differenzkapazitätswert Dk zugegriffen.
  • Die nachfolgenden erfindungsgemäßen Verfahrensschritte sind vorteilhafterweise für weitere oder für alle Zellen der Netzliste wiederholbar:
    • - Festlegen von bis zu zwei Toleranzwerten T1 und T2 und eines Werts für eine Laufvariable k,
    • - Auswählen einer Zelle aus der Netzliste,
    • - Auswählen eines Netzes der ausgewählten Zelle,
    • - Auswählen der k-ten Zellinstanz der Zelle,
    • - Bestimmen des Differenzkapazitätswertes Dk für die k-te Zellinstanz aus der Differenz der Summe des intrinsischen und des lateralen Kapazitätswerts für das ausgewählte Netz und aus der Summe des intrinsischen und des lateralen Kapazitätswerts der k-ten Zellinstanz,
    • - Prüfen, ob eine Variante V existiert, für die
      |Dk - Dv| ≤ T1 und (|Dk - Dv|)/Dv.100 ≤ T2,
      wenn ja: Fortsetzen mit dem übernächsten Schritt,
    • - Bilden einer neuen Variante V mit Dv = Dk,
    • - Einordnen der k-ten Zellinstanz der Zelle in diese Variante V,
    • - Inkrementieren von k um einen vorgebbaren Wert,
    • - Prüfen, ob eine k-te Zellinstanz der Zelle existiert, wenn ja: Fortsetzen mit dem Schritt des Auswählen eines Netzes der ausgewählten Zelle,
    • - Prüfen, ob ein weiteres Netz in der betrachteten Zelle existiert, wenn ja: Auswählen dieses Netzes, Festlegen eines Werts für die Laufvariable k, Fortsetzen mit dem Schritt des Auswählen eines Netzes der ausgewählten Zelle.
  • Durch die Ausführung der erfindungsgemäßen Verfahrensschritte wird eine komplette Klassifizierung der Netzliste in Varianten von umgebungsabhängigen Zellinstanzen erreicht.
  • Eine weitere Ausführungsform der Erfindung sieht anstelle der Durchführung der Verfahrensschritte:
    • - Prüfen, ob eine Variante V existiert, für die
      |Dk - Dv| ≤ T1 und (|Dk - Dv|)/Dv.100 ≤ T2,
      wenn ja: Fortsetzen mit dem übernächsten Schritt,
    • - Bilden einer neuen Variante V mit Dv = Dk,
    • - Einordnen der k-ten Zellinstanz der Zelle in diese Variante V,
    ab dem zweiten betrachteten Netz die Durchführung der folgenden Schritte vor:
    • - Prüfen, ob eine Variante V existiert, für die
      |Dk - Dv| ≤ T1 und (|Dk - Dv|)/Dv.100 ≤ T2 gilt,
      wenn nicht: Fortsetzen mit dem übernächsten Schritt,
    • - Prüfen, ob die k-te Zellinstanz und die bereits in dieser Variante V enthaltenen Zellinstanzen bisher, d. h. vor Betrachtung dieses Netzes der Zelle in unterschiedlichen Varianten eingeordnet sind,
    • - wenn nicht: Fortsetzen mit dem übernächsten Schritt,
    • - Bilden einer neuen Variante V mit Dv = Dk.
    • - Einordnen der k-ten Zellinstanz der Zelle in diese Variante V.
  • Dadurch ist eine besonders zuverlässige, die bisherigen Ergebnisse miteinbeziehende Einordnung der Zellinstanzen in Varianten gewährleistet.
  • Die Erfindung ist auch in einem Computerprogramm zur Ausführung eines Verfahrens zur Simulation einer elektrischen Schaltung verwirklicht.
  • Das Computerprogramm ist dabei so ausgebildet, daß nach Eingabe eines Layouts einer elektrische Schaltung ein erfindungsgemäßes Verfahren in einer oben beschriebenen Ausführungsform durchführbar ist. Dabei ist als Ergebnis des Verfahrens eine vorteilhafte Simulation der elektrischen Schaltung möglich, die auf Varianten von Zellinstanzen mit jeweils ähnlichen umgebungsabhängigen kapazitiven Eigenschaften zugreift.
  • Durch das auf dem Computersystem verwirklichten Verfahren kann eine Parasitics Extraction sowie eine Simulation einer elektrischen Schaltung vorteilhaft durchgeführt werden. Durch das erfindungsgemäß verbesserte Computerprogramm ergeben sich eine einfache und effektive Klassifizierung von ähnlichen Zellinstanzen, eine verbesserte Anwendbarkeit des Verfahrens für eine Vielzahl von elektrischen Schaltungen und eine Laufzeitverbesserung gegenüber den bekannten Verfahren zur Simulation einer elektrischen Schaltung.
  • Die Erfindung betrifft außerdem ein Computerprogramm, das auf einem Speichermedium enthalten ist, das in einem Computerspeicher abgelegt ist, das in einem Direktzugriffsspeicher enthalten ist oder das auf einem elektrischen Trägersignal übertragen wird.
  • Weiterhin betrifft die Erfindung einen Datenträger mit einem solchen Computerprogramm sowie ein Verfahren, bei dem ein solches Computerprogramm aus einem elektrischen Datennetz, wie beispielsweise aus dem Internet, auf einen an das Datennetz angeschlossenen Computer heruntergeladen wird.
  • Die Einteilung der Varianten sowie die in den jeweiligen Varianten enthaltenen Zellinstanzen sind in Form eines "Variant Classification File" ausgebbar. Auf diesem "Variant Classification File" baut eine nachfolgende Simulation der elektrischen Schaltung auf. Die dazu notwendige Vorgehensweise ist dem Fachmann bekannt und braucht hier nicht erläutert zu werden.
  • Die Erfindung ist in den Figuren anhand eines Ausführungsbeispiels näher veranschaulicht.
  • Fig. 1 zeigt ein erstes Ablaufdiagramm 1 des erfindungsgemäßen Verfahrens zur Simulation einer elektrischen Schaltung gemäß einem Ausführungsbeispiel,
  • Fig. 2 zeigt ein zweites Ablaufdiagramms 2 des erfindungsgemäßen Verfahrens zur Einordnung der Zellinstanzen in verschiedene Varianten gemäß dem Ausführungsbeispiel,
  • Fig. 3 zeigt eine schematische Darstellung einer Draufsicht auf eine Zelle A 3 gemäß dem Ausführungsbeispiel,
  • Fig. 4 zeigt eine schematische Darstellung einer Draufsicht auf eine Zelle TOP 4 gemäß dem Ausführungsbeispiel.
  • Fig. 1 zeigt ein erstes Ablaufdiagramm 1 des erfindungsgemäßen Verfahrens zur Simulation einer elektrischen Schaltung gemäß einem Ausführungsbeispiel.
  • Das erste Ablaufdiagramm 1 gliedert sich in ein Startfeld, in acht nacheinander ausführbare Verfahrensschritte 101 bis 108 sowie in ein Endfeld.
  • Gemäß einem ersten Verfahrensschritt 101 wird eine Extraktion auf einem vorgegebenen Layout einer betrachteten elektrischen Schaltung durchgeführt.
  • Die Extraktion stellt dabei insbesondere Knoteninformationen für die Polygone bereit. Die Extraktion ist dabei das Verfahren, bei der den Polygonen Knoteninformationen bzw. Netznamen zugeordnet werden. Dabei wird analysiert, welche der Polygone nach dem Herstellungsprozeß leitend miteinander verbunden sind.
  • Die Extraktion stellt eine Vorbedingung für die Generierung einer Netzliste dar. Ein Netzliste ist zu Beginn der Ausführung des erfindungsgemäßen Verfahrens nicht notwendig. Vielmehr wird direkt auf die extrahierte Datenbasis zugegriffen, die sowohl die Geometrie in Form von Polygonen als auch die Information über die zugehörigen Netze enthält.
  • Das Layout einer elektrischen Schaltung enthält eine geometrische Beschreibung in Form von Polygonen oder Rechtecken aller auf der elektrischen Schaltung enthaltenen Netze und/oder auf der elektrischen Schaltung aller elektrischen Schaltungselemente. Dabei wird eine Menge von logisch zusammengehörenden, geometrischen Beschreibungen in einer Zelle zusammengefaßt. Eine Zelle kann außer den in ihr enthaltenen geometrischen Beschreibungen einen Aufruf einer oder mehrerer anderer Zellen an bestimmten Koordinaten aufweisen. Das Einsetzen einer Zelle in eine andere Zelle wird auch als Instanziieren bezeichnet. Weiterhin weist eine Zelle Informationen über diejenigen Schichten der elektrischen Schaltung auf, auf denen die Netze und/oder Schaltungselemente vorliegen.
  • In einem zweiten Verfahrensschritt 102 werden die Koppelkapazitätswerte für die Netze bei isolierter Betrachtung der Zellen bestimmt. Als Koppelkapazitäten werden dabei die Kapazitäten zu benachbarten Netzen bezeichnet, als intrinsische Kapazitäten bezeichnet man die Kapazitäten zu Masse.
  • In einem dritten Verfahrensschritt 103 werden die umgebungsabhängigen Koppelkapazitätswerte für Netze in allen Zellinstanzen bestimmt. Dabei wird die Anordnung der einzelnen Zellen bzw. Zellinstanzen zueinander im Layout zugrundegelegt.
  • Zur Berechnung der Koppelkapazitätswerte werden analytische Modelle verwendet, welche die geometrischen Eigenschaften der Netze auswerten. Zur Berechnung solcher Koppelkapazitäten wird jeweils die Anordnung von zwei oder mehreren Netzen zueinander betrachtet. Für die Berechnung eines Kapazitätswerts von zwei Netzen zueinander werden der Abstand, in dem die beiden Netze nebeneinander angeordnet sind, und die Länge herangezogen, auf der diese beiden Netze nebeneinander verlaufen.
  • In einem vierten Verfahrensschritt 104 werden die intrinsischen Kapazitätswerte für die Netze jeder Zelle bestimmt.
  • In einem daran anschließenden fünften Verfahrensschritt 105 erfolgt die Bestimmung der intrinsischen Kapazitätswerte für die Netze jeder Zellinstanz.
  • Die intrinsischen Kapazitätswerte der Netze ergeben sich aus der Form und aus der Größe des betrachteten Netzes. Dazu wird die Fläche sowie der Rand des betrachteten Netzes unter Zugrundelegung der im Layout gespeicherten geometrischen Daten berechnet.
  • In einem darauf folgenden sechsten Verfahrensschritt 106 wird in jeder Zelle je ein Vergleichskapazitätswert pro Netz berechnet, wobei die instanzabhängigen, kapazitiven Netzumgebungen nicht einzeln betrachtet werden. Das Bestimmen der lateralen und der intrinsischen Kapazitätswerte erfolgt jeweils auf der untersten Netzebene bzw. Zellebene.
  • Der Vergleichskapazitätswert pro Netz ergibt sich dabei jeweils aus der Summe des im zweiten Verfahrensschritt 102 bestimmten Kapazitätswerts für die betreffende Koppelkapazität bei isolierter Betrachtung der Zellen und aus dem im vierten Verfahrensschritt 104 bestimmten intrinsischen Kapazitätswert für das betreffende Netz. In einem siebten Verfahrensschritt 107 werden die Differenzkapazitätswerte zu dem jeweiligen Vergleichskapazitätswert für alle Zellinstanzen und für jedes in den Zellinstanzen enthaltene Netz berechnet. Dabei wird auf die im dritten Verfahrensschritt 103 berechneten umgebungsabhängigen Kapazitätswerte in allen Zellinstanzen sowie auf die im fünften Verfahrensschritt 105 bestimmten Kapazitätswerte für die Netze jeder Zellinstanz zurückgegriffen.
  • In einem daran anschließenden achten Verfahrensschritt 108 werden die Zellinstanzen pro Zelle in verschiedene Varianten eingeordnet. Für dieses Einordnen der Zellinstanzen in Zellvarianten werden die im siebten Verfahrensschritt 107 berechneten Differenzkapazitätswerte zugrundegelegt.
  • In einem im ersten Ablaufdiagramm 1 in Fig. 1 nicht gezeigten Verfahrensschritt erfolgt die Simulation des Verhaltens der elektrischen Schaltung unter Verwendung der im achten Verfahrensschritt 108 bestimmten Varianten von Zellinstanzen. Das in Fig. 1 gezeigte Ablaufdiagramm 1 ist damit abgeschlossen.
  • Fig. 2 zeigt ein zweites Ablaufdiagramms 2 des erfindungsgemäßen Verfahrens zur Einordnung der Zellinstanzen in verschiedene Varianten gemäß dem Ausführungsbeispiel.
  • Das zweite Ablaufdiagramm 2 gliedert sich in ein Startfeld, in Verfahrensschritte 201 bis 212 sowie in ein Endfeld. Dabei verdeutlicht das in Fig. 2 gezeigte Ablaufdiagramm 2 den in Fig. 1 gezeigten achten Verfahrensschritt 108.
  • In einem ersten Verfahrensschritt 201 wird ein Toleranzwert T = 1 festgelegt und eine Laufvariable k auf den Wert 1 gesetzt.
  • In einem zweiten Verfahrensschritt 202 wird eine Zelle aus dem Layout ausgewählt, die in dem in Fig. 1 gezeigten ersten Verfahrensschritt 101 extrahiert worden ist. Anschließend wird in einem dritten Verfahrensschritt 203 ein Netz aus dieser Zelle ausgewählt.
  • In einem vierten Verfahrensschritt 204 wird eine k-te Zellinstanz der im dritten Verfahrensschritt 203 gewählten Zelle ausgewählt.
  • Für diese k-te Zellinstanz wird in einem fünften Verfahrensschritt 205 ein Differenzkapazitätswert Dk bestimmt.
  • Ein sechster Verfahrensschritt 206 ist in Fig. 2 als Raute dargestellt, die zwei unterschiedliche Fortsetzungen zuläßt. Im sechsten Verfahrensschritt 206 wird überprüft, ob bereits eine Variante V vorhanden ist, für die |Dk - Dv| ≤ T ist.
  • Existiert eine solche Variante V, so wird die k-te Zellinstanz in einem achten Verfahrensschritt 208 in diese Variante V eingeordnet.
  • Existiert keine solche Variante V, so wird in einem siebten Verfahrensschritt 207 eine neue Variante V gebildet, die einen Wert Dv = Dk aufweist. Im achten Verfahrensschritt 208 wird die k-te Zellinstanz dann in diese Variante V eingeordnet.
  • In einem neunten Verfahrensschritt 209 wird die Laufvariable k um den Wert 1 erhöht.
  • Ein darauffolgender zehnter Verfahrensschritt 210 ist in Fig. 2 als Entscheidungsfeld in Form einer Raute gezeigt. Im zehnten Verfahrensschritt 210 wird überprüft, ob eine k-te Zellinstanz existiert.
  • Ist dies der Fall, so erfolgt eine Wiederholung der erfindungsgemäßen Verfahrensschritte beginnend mit dem vierten Verfahrensschritt 204.
  • Existiert keine k-te Zellinstanz, so wird das erfindungsgemäße Verfahren mit einem elften Verfahrensschritt 211 fortgesetzt.
  • Der elfte Verfahrensschritt 211 ist in Fig. 2 ebenfalls als Entscheidungsfeld in Form einer Raute dargestellt. In dem elften Verfahrensschritt 211 wird überprüft, ob ein weiteres Netz in der betrachteten Zelle existiert.
  • Ist dies der Fall, so erfolgt die Durchführung eines zwölften Verfahrensschritts 212, in dem dieses Netz ausgewählt wird und die Laufvariable k auf den Wert 1 gesetzt wird sowie die Wiederholung der erfindungsgemäßen Verfahrensschritte beginnend mit dem vierten Verfahrensschritt 204.
  • Wird im elften Verfahrensschritt 211 festgestellt, daß kein weiteres Netz in der betrachteten Zelle existiert, so ist das erfindungsgemäße Verfahren gemäß dem zweiten Ablaufdiagramm 2 beendet.
  • Für alle weiteren Zellen der gemäß Fig. 1 im ersten Verfahrensschritt 101 erzeugten Netzliste kann eine Wiederholung des in Fig. 2 anhand des zweiten Ablaufdiagramms 2 gezeigten Verfahrens ab dem zweiten Verfahrensschritt 202 erfolgen.
  • Fig. 3 zeigt eine schematische Darstellung einer Draufsicht auf eine Zelle A 3 gemäß dem Ausführungsbeispiel.
  • Die in Fig. 3 quadratisch dargestellte Zelle A 3 weist ein erstes Netz 31, ein zweites Netz 32 sowie eine erste Koppelkapazität 301 auf. Im Ausführungsbeispiel sind die Koppelkapazitäten als laterale Kapazitäten zwischen Leitern derselben Schicht ausgeführt. Sämtliche lateralen Kapazitäten werden im Ausführungsbeispiel als Koppelkapazitäten bezeichnet.
  • Das erste Netz 31 und das zweite Netz 32 sind rechteckig geformt ausgebildet. Das erste Netz 31 ist innerhalb der Zelle A 3 links unten angeordnet. Das zweite Netz 32 ist innerhalb der Zelle A 3 vertikal mittig und horizontal von der Mitte ein Stück nach rechts versetzt angeordnet. Das erste Netz 31 sowie das zweite Netz 32 stellen auf einer elektrischen Schaltung befindliche Leiter dar.
  • Zwischen dem ersten Netz 31 und dem zweiten Netz 32 ist die erste Koppelkapazität 301 angeordnet, die auf der linken Seite mit dem ersten Netz 31 und auf der rechten Seite mit dem zweiten Netz 32 abschließt.
  • Die erste Koppelkapazität 301 symbolisiert eine kapazitive Kopplung des ersten Netzes 31 und des zweiten Netzes 32. Bei der ersten Koppelkapazität 301 handelt es sich dementsprechend um eine durch das erste Netz 31 und durch das zweite Netz 32 bedingte parasitäre Kapazität.
  • Die Breite der ersten Koppelkapazität 301 ist durch den horizontalen Abstand des ersten Netzes 31 vom zweiten Netz 32 festgelegt. Die Grundseite der ersten. Koppelkapazität 301 befindet sich auf der gleichen vertikalen Position wie die Grundseite des zweiten Netzes 32. Die Oberseite der ersten Koppelkapazität 301 schießt mit der Oberseite des ersten Netzes 31 ab.
  • Die erste Koppelkapazität 301 ist im Layout nicht als Polygon ausgebildet. Das in Fig. 3 die erste Koppelkapazität 301 darstellende Polygon enthält aber die Information über den durch die Größe und die Form berechenbaren Kapazitätswert und über diejenigen Netze, zwischen denen die Kapazität durch die geometrische Berührung vorliegt.
  • Fig. 4 zeigt eine schematische Darstellung einer Draufsicht auf eine Zelle TOP 4 gemäß dem Ausführungsbeispiel.
  • Die Zelle TOP 4 gliedert sich in eine erste Instanz 5, in eine zweite Instanz 6, in eine dritte Instanz 7, in eine vierte Instanz 8, in eine fünfte Instanz 9 und in eine sechste Instanz 10. Dabei handelt es sich bei der ersten Instanz 5, bei der dritten Instanz 7, bei der vierten Instanz 8, bei der fünften Instanz 9 sowie bei der sechsten Instanz 10 jeweils um Zellinstanzen der Zelle A 3, die jeweils ein erstes Netz 31, ein zweites Netz 32 sowie eine erste intrinsische Kapazität 301 in der in Fig. 3 beschriebenen Form und Größe aufweisen.
  • Die zweite Instanz 6 stellt eine Zellinstanz einer Zelle B dar. Die zweite Instanz 6 entspricht hinsichtlich der Größe und der quadratischen Grundform der Zelle A 3. Innerhalb der zweiten Instanz 6 ist im linken oberen Bereich ein rechteckig ausgebildetes drittes Netz 41 angeordnet. Diese dritte Netz 41 ist als Leiter ausgebildet.
  • Die Zelle TOP 4 ist rechteckig ausgebildet, wobei ihre Höhe dem 1,5-fachen ihrer Breite entspricht und wobei die Breite der Zelle TOP 4 dem Dreifachen der Breite der Zelle A 3 gleichkommt.
  • Die erste Instanz 5 und die zweite Instanz 6 sind im oberen Bereich der Zelle TOP 4 nebeneinander, die dritte Instanz 7 und die vierte Instanz 8 sind im mittleren Bereich der Zelle TOP 4 überlappend nebeneinander und die fünfte Instanz 9 sowie die sechste Instanz 10 sind im unteren Bereich der Zelle TOP 4 ebenfalls überlappend nebeneinander angeordnet.
  • Weiterhin weist die Zelle TOP 4 ein viertes Netz 42 sowie ein fünftes Netz 44 auf, die jeweils als Leiter ausgebildet sind.
  • Das vierte Netz 42 ist im oberen Bereich der Zelle TOP 4 auf der linken Seite angeordnet und weist eine rechteckige Form auf. Eine erste laterale Kapazität 401, die in Fig. 4 durch ein Rechteck dargestellt ist, ist zwischen dem vierten Netz 42 und dem ersten Netz 31 der ersten Instanz 5 angeordnet.
  • Zwischen dem zweiten Netz 32 der ersten Instanz 5 und dem dritten Netz 41 der zweiten Instanz 6 ergibt sich eine zweite laterale Kapazität 402, die in Fig. 4 durch ein Rechteck symbolisiert wird.
  • Das rechteckig geformte, fünfte Netz 44 ist auf der rechten Seite der Zelle TOP 4 oberhalb der Mitte angeordnet. Zwischen dem zweiten Netz 32 der vierten Instanz 8 und dem fünften Netz 44 ist eine fünfte laterale Kapazität 405 ausgebildet.
  • Zusätzlich weist die Zelle TOP 4 ein Rechteck 43 auf, das einen sogenannten "Override" darstellt. Bei dem Rechteck 43 handelt es sich um eine Maske im Layout, die während der Produktion der elektrischen Schalter eingesetzt wird und so ausgebildet ist, daß die darunterliegenden Netze nicht als heiter auf der elektrischen Schaltung erscheinen. Somit stellt ein "Override" das Gegenteil eines Leiters dar. Im geometrischen Sinn handelt es sich bei dem Rechteck 43 um die Konstruktion "UND NICHT". Im Schaltplan oder in der Netzliste ist solch ein "Override" nicht vorhanden. Ein solcher "Override" trägt keine Netzinformationen und stellt demzufolge auch kein Netz dar. Generell wird unter einem "Override" das Löschen von Netzen oder Netzteilen auf einer übergeordneten Hierarchie-Ebene verstanden.
  • Das Rechteck 43 ist innerhalb der Zelle TOP 4 im linken unterem Bereich angeordnet und überlappt über den linken unteren Bereich der fünften Instanz 9. Das Rechteck 43 löscht die abgedeckten Bereiche der geometrisch darunterliegenden Netze. Im Ausführungsbeispiel wird dadurch ein Teil des ersten Netzes 31 in der fünften Instanz 9 für ungültig erklärt und gelöscht. Die Information über das Rechteck 43 ist in der Zelle TOP 4 enthalten. Dementsprechend ist die Verkürzung des ersten Netzes 31 der fünften Instanz 9 der Zelle A 3 nur im Zusammenhang mit der Zelle TOP 4 sichtbar.
  • Zwischen dem zweiten Netz 32 der dritten Instanz 7 und dem ersten Netz 31 der vierten Instanz 8 ist eine dritte laterale Kapazität 403 wirksam. Zwischen dem zweiten Netz 32 der fünften Instanz 9 und dem ersten Netz 31 der sechsten Instanz 10 ist eine vierte laterale Kapazität 404 wirksam.
  • Bei dem vierten Netz 42 und bei dem sechsten Netz 44 handelt es sich um auf der elektrischen Schaltung vorgesehene Leiter.
  • Die erste laterale Kapazität 401, die zweite laterale Kapazität 402, die dritte laterale Kapazität 403, die vierte laterale Kapazität sowie die fünfte laterale Kapazität 405 stellen die durch die jeweils angrenzenden leitenden Netze bedingten parasitären Kapazitäten dar.
  • Die erste Koppelkapazität 301 und die lateralen Kapazitäten 401 bis 405 sind im Layout nicht als Polygone ausgebildet, sondern enthalten jeweils Informationen über diejenigen Netze, zwischen denen sie vorliegen. Ihr Kapazitätswert ist durch ihre Größe und ihre Form berechenbar.
  • Bei der Abbildung der Zelle TOP 4 in Fig. 4 sind alle Formen und alle Größenverhältnisse maßstabsgetreu dargestellt.
  • Im Ausführungsbeispiel ist die Zelle TOP 4 durch ein extrahiertes Layout beschrieben, d. h. durch eine Darstellung, in der Knoteninformation vorhanden ist und daher die Polygone Netzen zugeordnet sind.
  • Im Ausführungsbeispiel sind der ersten Koppelkapazität 301 sowie den lateralen Kapazitäten 401 bis 405 jeweils Kapazitätswerte zugeordnet. Diese Kapazitätswerte ergeben sich in der Praxis für jede laterale Kapazität jeweils aus den angrenzenden zwei oder mehr Netzen, wobei insbesondere der Abstand und die Länge, auf denen die beiden Netze nebeneinander verlaufen, berücksichtigt werden.
  • Sämtliche Zahlenwerte im Ausführungsbeispiel haben die Einheit femtoFarad = 10-15 Farad.
  • Die im betrachteten Ausführungsbeispiel bestimmten Kapazitätswerte lauten:
    erste Koppelkapazität 301: 2
    erste laterale Kapazität 401: 2
    zweite laterale Kapazität 402: 1,5
    dritte laterale Kapazität 403: 2,5
    vierte laterale Kapazität 404: 2,5
    fünfte laterale Kapazität 405: 2
  • In einem erfindungsgemäßen Verfahrensschritt werden nun die lateralen Kapazitätswerte für die Netze bei isolierter Betrachtung der Zellen bestimmt. Dabei wird jeweils die unterste Hierarchie-Ebene der Zellen betrachtet.
  • Dabei ist die Zelle TOP 4 eine Hierarchieebene über der Zelle A 3 und der Zelle B angeordnet. Die Zelle A 3 und die Zelle B liegen auf derselben Hierarchieebene vor.
  • Beispielsweise wird für das erste Netz 31 nur die erste intrinsische Kapazität 301, nicht aber die erste laterale Kapazität 401 betrachtet. Die erste laterale Kapazität 401 liegt nämlich in der nächsthöheren Zellebene, nämlich in der Zellebene der Zelle TOP 4 vor. Dementsprechend ergibt sich für das erste Netz 31 ein Kapazitätswert von "2". Für das zweite Netz 32 wird ebenfalls ausschließlich die erste Koppelkapazität 301 betrachtet. Dementsprechend ergibt der Kapazitätswert für das zweite Netz 32 einen Wert "2". Das dritte Netz 41 weist einen Kapazitätswert von "0" auf.
  • Das vierte Netz 42 liegt auf der Zellebene der Zelle TOP 4 vor. Die Zelle TOP 4 umfaßt auch die erste Instanz 5 der Zelle A 3. Dementsprechend wird die erste laterale Kapazität 401 zur Berechnung des Kapazitätswerte des vierten Netzes hinzugezogen. Der Kapazitätswert des vierten. Netzes 42 beträgt "2". Bei dem Rechteck 43 handelt es sich nicht um ein Netz. Dementsprechend weist das Rechteck 43 keinen Kapazitätswert auf. Das fünfte Netz 44 liegt ebenfalls auf der Zellebene der Zelle TOP 4 vor, welche die vierte Instanz 8 der ersten Zelle A 3 beinhaltet. Dementsprechend beträgt der Kapazitätswert des fünften Netzes 44 gleich "2". Die Kapazitätswerte der einzelnen Netze sind aus Gründen der Übersichtlichkeit nachfolgend zusammenfassend dargestellt:
    erstes Netz 31: 2
    zweites Netz 32: 2
    drittes Netz 41: 0
    viertes Netz 42: 2
    fünftes Netz 44: 2
  • Im nächsten erfindungsgemäßen Verfahrensschritt werden die umgebungsabhängigen Koppelkapazitätswerte für die Netze in allen Zellinstanzen bestimmt.
  • Dabei werden jeweils die zellübergreifenden Kapazitätswerte berücksichtigt. Für die Zellinstanzen des ersten Netzes 31 der Zelle A 3 ergeben sich die folgenden Kapazitätswerte:
    erstes Netz 31 in der ersten Instanz 5: 2
    von der ersten lateralen Kapazität 401
    erstes Netz 31 in der dritten Instanz 7: 0
    erstes Netz 31 in der vierten Instanz 8: 2,5
    von der dritten lateralen Kapazität 403
    erstes Netz 31 in der fünften Instanz 9: 0
    erstes Netz 31 in der sechsten Instanz 10: 2,5
    von der vierten lateralen Kapazität 404
  • Für die Zellinstanzen des zweiten Netzes 32 der Zelle A 3 ergeben sich die folgenden Kapazitätswerte:
    zweites Netz 32 in der ersten Instanz 5: 1,5
    von der zweiten lateralen Kapazität 402
    zweites Netz 32 in der dritten Instanz 7: 2,5
    von der dritten lateralen Kapazität 403
    zweites Netz 32 in der vierten Instanz 8: 2
    von der fünften lateralen Kapazität 405
    zweites Netz 32 in der fünften Instanz 9: 2,5
    von der vierten lateralen Kapazität 404
    zweites Netz 32 in der sechsten Instanz 10: 0
  • Für das dritte Netz 41 ergibt sich in der zweiten Instanz 6 der Zelle B der Wert 1,5 durch die zweite laterale Kapazität 402.
  • Im nächsten erfindungsgemäßen Schritt werden die intrinsischen Kapazitäten bestimmt. Dies geschieht jeweils auf der niedrigsten Hierarchie-Ebene. Dabei genügt es, für die meisten Zellen jeweils zellspezifisch vorzugehen. Instanzspezifische Unterschiede ergeben sich dann, wenn "Overrides" auftreten.
  • Die intrinsischen Kapazitäten der Netze in den verschiedenen Zellen bzw. Zellinstanzen ergeben sich jeweils aus der Geometrie, d. h. aus der Fläche und aus dem Rand des Netzes. Die im Ausführungsbeispiel geometrieabhängig ermittelten intrinsischen Kapazitäten ergeben sich wie folgt:

    Zelle A 3:
    zweites Netz 32: 3

    Zelle B:
    drittes Netz 41: 2

    Zelle TOP 4:
    erstes Netz 31 in der ersten Instanz 5: 5
    erstes Netz 31 in der dritten Instanz 7: 5
    erstes Netz 31 in der vierten Instanz 8: 5
    erstes Netz 31 in der fünften Instanz 9: 3
    erstes Netz 31 in der sechsten Instanz 10: 5
    viertes Netz 41: 7
    fünftes Netz 44: 7
  • Das erste Netz 31 weist in der fünften Instanz 9 bedingt durch den "Override" des Rechtecks 43 eine verkürzte Form auf. Dementsprechend ist die Koppelkapazität des ersten Netzes 31 in der fünften Instanz 9 geringer ausgebildet.
  • Im nächsten erfindungsgemäßen Schritt wird für jedes Netz ein Vergleichskapazitätswert Dv berechnet. Dieser ist Instanzunabhängig ausgebildet und berechnet sich aus der Summe des lateralen und des intrinsischen Kapazitätswert dieses Netzes. Beispielsweise ergibt sich der Vergleichskapazitätswert Dv = 5 für das zweite Netz 32 aus der Summe des Kapazitätswerts "2" der ersten Koppelkapazität 301 und des intrinsischen Kapazitätswerts "3" des zweiten Netzes 32. Die Vergleichskapazitätswerte Dv für alle Netze sind im folgenden dargestellt:
    erstes Netz 31: Dv = 7
    zweites Netz 32: Dv 5
    drittes Netz 41: Dv 2
    viertes Netz 42: Dv = 9
    sechstes Netz 44: Dv = 9
  • Im nächsten erfindungsgemäßen Schritt werden Instanzspezifische Differenzkapazitätswerte D bestimmt. Dabei werden die umgebungsabhängigen Kapazitätswerte sowie die durch "Overrides" bedingten Abweichungen der intrinsischen Kapazitätswerte der Netze für jede Zellinstanz berücksichtigt. So ergibt sich der Differenzkapazitätswert D für das erste Netz 31 in der ersten Instanz 5 aus dem umgebungsabhängigen Kapazitätswert des lateralen ersten Netzes 31 zu dem Wert "+2". Der Differenzkapazitätswert D des ersten Netzes 31 in der fünften Instanz 9 ergibt sich bedingt durch den "Override" des Rechtecks 43 zu "-2". Im folgenden sind die Differenzkapazitätswerte D für alle Zellinstanzen der jeweiligen Netze aufgelistet:

    Zelle A:
    erstes Netz 31 in der ersten Instanz 5: D = +2
    erstes Netz 31 in der dritten Instanz 7: D = 0
    erstes Netz 31 in der vierten Instanz 8: D = +2,5
    erstes Netz 31 in der fünften Instanz 9: D = -2
    erstes Netz 31 in der sechsten Instanz 10: D = 2,5
    zweites Netz 32 in der ersten Instanz 5: D = +1,5
    zweites Netz 32 in der dritten Instanz 7: D = +2,5
    zweites Netz 32 in der vierten Instanz 8: D = +2
    zweites Netz 32 in der fünften Instanz 9: D = +2
    zweites Netz 32 in der sechsten Instanz 10: D = 0

    Zelle B:
    drittes Netz 41 in der zweiten Instanz 6: D = +1,5

    Zelle TOP 4:
    viertes Netz 42: D = 0
    fünftes Netz 44: D = 0
  • Die Kapazitätswerte des viertes Netzes 42 und des fünften Netzes 44 sind bereits im Vergleichskapazitätswert Dv berücksichtigt.
  • Im nächsten erfindungsgemäßen Schritt werden Zellvarianten erzeugt. Dabei werden die Differenzkapazitätswerte D durchgegangen und innerhalb von relativen oder absoluten Toleranzen mit dem Vergleichswert Dv oder neu bestimmten Vergleichswerten W von Varianten V verglichen. Im Ausführungsbeispiel ist ein absoluter Toleranzwert T = 1 gewählt. Betrachtete Zellinstanzen werden dann in eine Variante eingeordnet, wenn der Differenzkapazitätswert D der Zellvariante um weniger als |1| von dem Vergleichswert der jeweiligen Variante abweicht.
  • Im Ausführungsbeispiel werden die fünf Instanzen der Zelle A 3 betrachtet.
  • Zunächst erfolgt die Bildung von Varianten und die Einordnung der Zellinstanzen der Zelle A 3 in diese Varianten für das erste Netz 31.
  • In einem ersten Verfahrensschritt wird eine Variante A für diejenigen Zellinstanzen gebildet, die einen Differenzkapazitätswert D von Null aufweisen. Im Ausführungsbeispiel ist dies das erste Netz 31 in der dritten Instanz 7. Die Variante A weist einen Vergleichswert W = 0 auf.
  • Anschließend wird das erste Netz 31 in der Ersten Instanz 5 betrachtet. Dieses erste Netz 31 weist in der ersten Instanz 5 einen Differenzkapazitätswert D = +2 auf. Die Abweichung zum Wert der Variante A ist demnach größer als der Toleranzwert T = 1. Dementsprechend wird eine neue Zellvariante A_IV1 gebildet, die einen Vergleichswert W = 2 aufweist. In diese Netzvariante A_IV1 wird die erste Instanz 5 eingeordnet.
  • Im nächsten Schritt wird das erste Netz 31 der vierten Instanz 8 betrachtet, das einen Differenzkapazitätswert D = +2,5 aufweist. Die Abweichung dieses Differenzkapazitätswerts D zu dem Vergleichswert W = 0 der Variante A ist größer ausgebildet als der Toleranzwert T = 1. Dementsprechend wird die vierte Instanz 8 nicht in die Variante A eingeordnet. Danach wird der Vergleichskapazitätswert D = 2,5 mit dem Vergleichswert W = 2 der Variante A_IV1 verglichen. Die Abweichung beträgt "0,5" und liegt unter dem Toleranzwert T = 1. Demzufolge wird die vierte Instanz 8 in die Variante A_IV1 eingeordnet.
  • Das erste Netz 31 weist in der fünften Instanz 9 einen Differenzkapazitätswert D = -2 auf. Dieser negative Differenzkapazitätswert liegt in keinem der Toleranzbereiche der Varianten A oder A_IV1. Dementsprechend wird eine neue Zellvariante A_IV2 gebildet, die den Vergleichswert W = -2 aufweist. Die fünfte Instanz 9 wird in diese Variante A_IV2 eingeordnet.
  • Daraufhin wird das erste Netz 31 der sechsten Instanz 10 betrachtet, das einen Differenzkapazitätswert D = +2,5 aufweist. Dieses erste Netz 31 der sechsten Instanz 10 liegt nicht im Toleranzbereich der Variante A, aber im Toleranzbereich der Variante A_IV1. Dementsprechend wird die sechste Instanz 10 in die Variante A_IV1 eingeordnet.
  • Die Einordnung der Instanzen der Zelle A 3 in die gebildeten Klassen ergibt sich demnach wie folgt:

    Variante A:
    dritte Instanz 7

    Variante A_IV1:
    erste Instanz 5, vierte Instanz 8, sechste Instanz 10

    Variante A_IV2:
    fünfte Instanz 9
  • In den nächsten erfindungsgemäßen Verfahrensschritten wird das zweite Netz 32 anhand seiner fünf Instanzen betrachtet.
  • Zunächst wird das zweite Netz 32 in der ersten Instanz 5 der Zelle A 3 betrachtet, das den Differenzkapazitätswert D = +1,5 aufweist. Der Kapazitätsunterschied zum Vergleichskapazitätswert des zweiten Netze 32 ist "1,5" und somit größer als der Toleranzwert T = 1. Die Varianten A, A_IV1 und A_IV2 weisen die für das erste Netz 31 ermittelten Zellinstanzen auf. Für die Zellinstanzen des zweiten Netzes 32 werden neue Varianten gebildet. Dementsprechend wird die erste Instanz 5 in eine neugebildete Variante A_IV3 eingeordnet, die einen Vergleichswert D = 1,5 aufweist. Gleichzeitig wird die erste Instanz 5 aus der Variante A_IV1 entfernt.
  • Anschießend wird das zweite Netz 32 in der dritten Instanz 7 betrachtet, das einen Differenzkapazitätswert D = +2,5 aufweist. Der Differenzkapazitätswert D paßt zwar in den Toleranzbereich der Variante A_IV3, jedoch sind die erste Instanz 5 und die dritte Instanz 7 bei der Betrachtung des ersten Netzes 31 in zwei unterschiedliche Varianten eingeordnet worden. Die Zuordnung der ersten Instanz 5 und der dritten Instanz 7 zu zwei verschiedenen Varianten wird beibehalten. Somit wird eine neue Variante A_IV4 gebildet, in welche die dritte Instanz 7 aufgenommen wird. Gleichzeitig wird die dritte Instanz 7 aus der Variante A gelöscht. Die nun leere Variante A wird verworfen.
  • Danach wird das zweite Netz 32 der vierten Instanz 8 betrachtet, das einen Differenzkapazitätswert D = +2 aufweist. Dieser Differenzkapazitätswert D ist sowohl im Toleranzbereich der Variante A_IV3 als auch im Toleranzbereich der Variante A_IV4 enthalten. Bei der Betrachtung des ersten Netzes 31 sind die erste Instanz 5 sowie die vierte Instanz 8 derselben Variante A_IV1 zugeordnet worden. Dementsprechend wird die vierte Instanz 8 nun der Variante A_IV3 zugeordnet, die auch die erste Instanz 5 aufweist. Gleichzeitig wird die vierte Instanz 8 aus der Variante A_IV1 gelöscht.
  • Im nächsten Schritt wird das zweite Netz 32 in der fünften Instanz 9 betrachtet, das einen Differenzkapazitätswert D = +2 aufweist. Vergleicht man den Differenzkapazitätswert D mit den Vergleichswerten W der Varianten A_IV3 und A_IV4, so stellt man fest, daß die fünfte Instanz 9 in beide Varianten eingeordnet werden könnte. Die fünfte Instanz 9 ist jedoch bei der Betrachtung des ersten Netzes 31 jeweils in unterschiedliche Varianten eingeordnet worden als die erste Instanz 5 und die vierte Instanz 8 sowie die dritte Instanz 7. Diese unterschiedliche Zuordnung dieser Instanzen wird beibehalten. Demzufolge wird eine neue Variante A_IV5 erstellt, in welche die fünfte Instanz 9 eingeordnet wird. Die nun leere Variante A_IV2 wird verworfen.
  • Danach wird das zweite Netz 32 in der sechsten Instanz 10 betrachtet, das einen Differenzkapazitätswert D = 0 aufweist. Der Differenzkapazitätswert D entspricht dem Vergleichskapazitätswert Dv des zweiten Netzes 32. Dementsprechend wird an der bestehenden Einordnung der sechsten Instanz 10 nichts verändert.
  • Nach Abarbeitung des ersten Netzes 31. sowie des zweiten Netzes 32 der Zelle A 3 ergibt sich folgende Klasseneinteilung:

    Zelle A:
    Variante A_IV1:
    sechste Instanz 10
    Variante A_IV3:
    erste Instanz 5, vierte Instanz 8
    Variante A_IV4:
    dritte Instanz 7
    Variante A_IV5:
    fünfte Instanz 9
  • Die fünf Instanzen der Zelle A 3 wurden durch das erfindungsgemäße Verfahren auf vier Varianten abgebildet. Bei einer Simulation der Zelle TOP 4 erfolgt nun ein Zugriff auf die Varianten A TV1, A_IV3, A_IV4 und A_IV5 anstelle des Zugriffs auf die fünf Instanzen der Zelle A 3. Dies ergibt eine Laufzeitverbesserung und Geschwindigkeitsoptimierung der Simulation. Die Schaltkreissimulation der entstandenen hierarchischen Netzliste kann z. B. durch die Anwendung der Software HSIM der Fa. Nassda erfolgen. Die dazu notwendige Vorgehensweise ist dem Fachmann bekannt und braucht hier nicht erläutert zu werden.
  • Der nachfolgend verwendete Begriff "Datenträger" beinhaltet auch Computerelemente bzw. Computerzubehör wie Disketten, Festplatten, CD-ROMs, Flash-Speicher, nichtflüchtige ROM- Speicher, Direktzugriffsspeicher, Trägerwellen zur Signalübertragung etc. Bezugszeichenliste 1 erstes Ablaufdiagramm
    101 erster Verfahrensschritt,
    102 zweiter Verfahrensschritt
    103 dritter Verfahrensschritt
    104 vierter Verfahrensschritt
    105 fünfter Verfahrensschritt
    106 sechster Verfahrensschritt
    107 siebter Verfahrensschritt
    108 achter Verfahrensschritt
    2 zweites Ablaufdiagramm
    201 erster Verfahrensschritt
    202 zweiter Verfahrensschritt
    203 dritter Verfahrensschritt
    204 vierter Verfahrensschritt
    205 fünfter Verfahrensschritt
    206 sechster Verfahrensschritt
    207 siebter Verfahrensschritt
    208 achter Verfahrensschritt
    209 neunter Verfahrensschritt
    210 zehnter Verfahrensschritt
    211 elfter Verfahrensschritt
    212 zwölfter Verfahrensschritt
    3 Zelle A
    31 erstes Netz
    32 zweites Netz
    301 erste Koppelkapazität
    4 Zelle TOP
    41 drittes Netz
    42 viertes Netz
    43 Rechteck
    44 fünftes Netz
    401 erste laterale Kapazität
    402 zweite laterale Kapazität
    403 dritte laterale Kapazität
    404 vierte laterale Kapazität
    405 fünfte laterale Kapazität
    5 erste Instanz
    6 zweite Instanz
    7 dritte Instanz
    8 vierte Instanz
    9 fünfte Instanz
    10 sechste Instanz

Claims (13)

1. Verfahren zur Simulation einer durch ein Layout beschreibbaren elektrischen Schaltung,
wobei das Layout eine Vielzahl von Zellen (3, 4) mit den folgenden Merkmalen aufweist:
die Zellen (3, 4) weisen ein oder mehrere durch geometrische Daten beschriebene Netze (31, 32, 41, 42, 44) auf, die sich in ein oder mehrere Abbilder von elektrischen Schaltungselementen gliedern,
die Zellen (3, 4) weisen Informationen über diejenigen Schichten auf, auf denen die Netze (31, 32, 41, 42, 44) vorliegen,
die Zellen (3, 4) weisen Verweise auf weitere Zellen (3, 4) auf,
wobei das Verfahren die folgenden Schritte aufweist:
a) Extraktion von Knoteninformationen aus einem Layout,
b) Bestimmen und Merken der Koppelkapazitätswerte der Netze (31, 32, 41, 42, 44) bei isolierter Betrachtung der Zellen (3, 4),
c) Bestimmen und Merken der umgebungsabhängigen Koppelkapazitätswerte der Netze (31, 32, 41, 42, 44) für alle Zellinstanzen (5-10),
d) Bestimmen und Merken der intrinsischen Kapazitätswerte der Netze (31, 32, 41, 42, 44) für jede Zelle (3, 4),
e) Bestimmen und Merken der intrinsischen Kapazitätswerte der Netze (31, 32, 41, 42, 44) für alle Zellinstanzen (5-10),
f) Berechnen je eines Vergleichskapazitätswerts für jedes Netz (31, 32, 41, 42, 44) bei isolierter Betrachtung der Zellen (3, 4),
g) Berechnen der Differenzkapazitätswerte jedes Netzes (31, 32, 41, 42, 44) zu dem jeweiligen Vergleichskapazitätswert für alle Zellinstanzen (5-10),
h) Einordnen der Zellinstanzen (5-10) jeder Zelle (3, 4) in verschiedene Varianten für alle Netze (31, 32, 41, 42, 44) durch Zugrundelegung der Differenzkapazitätswerte,
i) Simulieren des Verhaltens der elektrischen Schaltung unter Verwendung der in Schritt. h) bestimmten Varianten von Zellinstanzen (5-10).
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß der Schritt h) durch die folgenden Teilschritte durchgeführt wird:
1. Festlegen eines Toleranzwertes T und eines Werts für eine Laufvariable k,
2. Auswählen einer Zelle (3, 4) aus dem Layout,
3. Auswählen eines Netzes (31, 32, 41, 42, 44) der in Schritt h2) ausgewählten Zelle (3, 4),
4. Auswählen der k-ten Zellinstanz (5-10) der Zelle (3, 4),
5. Bestimmen des Differenzkapazitätswertes Dk für die k-te Zellinstanz (5-10) aus der Differenz der Summe des intrinsischen und des lateralen Kapazitätswerts für das in Schritt h3) ausgewählte Netz (31, 32, 41, 42, 44) und aus der Summe des intrinsischen und des lateralen Kapazitätswerts des Netzes in der k-ten Zellinstanz (5-10),
6. Prüfen, ob eine Variante V existiert, für die |Dk - Dv| ≤ T, wenn ja: Fortsetzen mit Schritt h8),
7. Bilden einer neuen Variante V mit Dv = Dk,
8. Einordnen der k-ten Zellinstanz (5-10) der Zelle in diese Variante V,
9. Inkrementieren von k um einen vorgebbaren Wert,
10. Prüfen, ob eine k-te Zellinstanz (5-10) der Zelle (3, 4) existiert, wenn ja: Fortsetzen mit Schritt h4),
11. Prüfen, ob ein weiteres Netz (31, 32, 41, 42, 44) in der betrachteten Zelle (3, 4) existiert, wenn ja: Auswählen dieses Netzes (31, 32, 41, 42, 44), Festlegen eines Werts für die Laufvariable k, Fortsetzen mit Schritt h4).
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die Schritte h2) bis h11) für weitere Zellen (3, 4) der Netzliste wiederholt werden.
4. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß ab dem zweiten betrachteten Netz (31, 32, 41, 42, 44) die Schritte h6), h7) und h8) wie folgt durchgeführt werden:
1. Prüfen, ob eine Variante V existiert, für die |Dk - Dv| ≤ T, wenn nicht: Fortsetzen mit Schritt h7'),
2. Prüfen, ob die k-te Zellinstanz (5-10) und die bereits in dieser Variante V enthaltenen Zellinstanzen (5-10) bisher in unterschiedlichen Varianten V eingeordnet sind, wenn nicht: Fortsetzen mit Schritt h8'),
3. Bilden einer neuen Variante V mit Dv = Dk,
4. Einordnen der k-ten Zellinstanz (5-10) der Zelle (3, 4) in diese Variante V.
5. Verfahren nach einem der Ansprüche 2 oder 3, dadurch gekennzeichnet, daß Koppelkapazitäten und intrinsische Kapazitäten nicht getrennt extrahiert werden, sondern in einem Schritt.
6. Verfahren nach einem der Ansprüche 2 oder 3, dadurch gekennzeichnet, daß nur Koppelkapazitäten oder nur intrinsische Kapazitäten extrahiert werden.
7. Computerprogrammprodukt sowie Computerprogramm zur Ausführung eines Verfahrens zur Simulation einer elektrischen Schaltung, das so ausgebildet ist, daß ein Verfahren gemäß einem der Ansprüche 1 bis 6 ausführbar ist.
8. Computerprogramm nach Anspruch 7, das auf einem Speichermedium enthalten ist.
9. Computerprogramm nach Anspruch 7, das in einem Computerspeicher abgelegt ist.
10. Computerprogramm nach Anspruch 7, das in einem Direktzugriffsspeicher enthalten ist.
11. Computerprogramm nach Anspruch 7, das auf einem elektrischen Trägersignal übertragen wird.
12. Datenträger mit einem Computerprogrammprodukt bzw. Computerprogramm nach Anspruch 7.
13. Verfahren, bei dem ein Computerprogrammprodukt bzw. Computerprogramm nach Anspruch 7 aus einem elektronischen Datennetz wie beispielsweise aus dem Internet auf einen an das Datennetz angeschlossenen Computer heruntergeladen wird.
DE10303186A 2002-02-14 2003-01-27 Verfahren zur Simulation einer elektrischen Schaltung Expired - Fee Related DE10303186B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/075,582 US6715136B2 (en) 2002-02-14 2002-02-14 Method for simulating an electrical circuit, computer program product, software application, and data carrier
US10/075,582 2002-02-14

Publications (2)

Publication Number Publication Date
DE10303186A1 true DE10303186A1 (de) 2003-09-04
DE10303186B4 DE10303186B4 (de) 2006-12-07

Family

ID=27660114

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10303186A Expired - Fee Related DE10303186B4 (de) 2002-02-14 2003-01-27 Verfahren zur Simulation einer elektrischen Schaltung

Country Status (2)

Country Link
US (1) US6715136B2 (de)
DE (1) DE10303186B4 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7853910B1 (en) * 2007-12-21 2010-12-14 Cadence Design Systems, Inc. Parasitic effects analysis of circuit structures
US8090999B2 (en) * 2008-06-10 2012-01-03 Micron Technology, Inc. Memory media characterization for development of signal processors
CN102385656A (zh) * 2011-10-31 2012-03-21 中国科学院微电子研究所 集成电路版图冗余金属填充的方法及集成电路
EP3542285B1 (de) * 2016-12-23 2023-05-10 Google LLC Appareil et procède pour la conception d'un circuit intégré

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0582611A (ja) * 1991-09-02 1993-04-02 Rohm Co Ltd 論理回路のレイアウトパターン検証方法
US5761076A (en) * 1994-04-19 1998-06-02 Hitachi, Ltd. Method for evaluating a driving characteristic of a device for a wiring, based upon lower order coefficients of series expansion form of complex admittance of the wiring
US6061508A (en) * 1997-07-03 2000-05-09 International Business Machines Corporation Modeling and processing of on-chip interconnect capacitance
US20020124230A1 (en) * 2001-01-04 2002-09-05 Zhen Cai Timing optimization for integrated circuit design

Also Published As

Publication number Publication date
DE10303186B4 (de) 2006-12-07
US20030154457A1 (en) 2003-08-14
US6715136B2 (en) 2004-03-30

Similar Documents

Publication Publication Date Title
DE102006037162B4 (de) Verfahren und Vorrichtung und deren Verwendung zur Prüfung des Layouts einer elektronischen Schaltung
DE69521507T2 (de) System und verfahren zur auf einem modell basierender prüfung von lokalen entwurfsregeln
DE69824765T2 (de) Polygondarstellung im Layout eines integrierten Schaltkreises
DE69532307T2 (de) Ausdrucks-Propagierung für hierarchisches Netzlisten
EP0855662A1 (de) Elektrische Analyse integrierter Schaltungen
WO2009071646A2 (de) Ueberpruefung eines esd-verhaltens von integrierten schaltungen auf schaltungsebene
DE102016118811A1 (de) Integrierte schaltung mit versetzten leitenden merkmalen
DE102014118932A1 (de) Charakterisierung einer Zelle unter Verwendung einer Eingangswellenerzeugung unter Berücksichtigung verschiedener Schaltungstopologien
DE19630927A1 (de) Verfahren zur Berechnung einer Störlast in einer integrierten Halbleiterschaltung
DE102019124928A1 (de) Integriertes schaltungsdesign unter verwendung von fuzzy-maschinenlernen
DE10138142B4 (de) Verfahren zur Analyse einer integrierten elektrischen Schaltung
EP1141867B1 (de) Verfahren und anordnung zur verifikation eines layouts einer integrierten schaltung mit hilfe eines rechners sowie dessen anwendung zur herstellung einer integrierten schaltung
DE10303186B4 (de) Verfahren zur Simulation einer elektrischen Schaltung
DE10205559B4 (de) Integrierte Schaltung und Verfahren und Vorrichtung zum Entwurf einer integrierten Schaltung
DE10206658B4 (de) Verfahren zum Überprüfen einer integrierten elektrischen Schaltung
DE102005039394B4 (de) Verfahren zum Suchen potentieller Fehler eines Layouts einer integrierten Schaltung
DE19626984C1 (de) Verfahren zur rechnergestützten Ermittlung einer Systemzusammenhangsfunktion
EP1543452B1 (de) Verfahren zum bestimmen der anordnung von kontaktflächen auf der aktiven oberseite eines halbleiterchips
EP1068580B1 (de) Verfahren zum vergleich elektrischer schaltungen
DE102004020869A1 (de) System und Verfahren zum Bestimmen eines Signalnamens auf höchster Ebene in einem hierarchischen VLSI-Entwurf
DE10394299T5 (de) Design eines integrierten Schaltkreises zur Optimierung der Herstellbarkeit
DE10103300B4 (de) Verfahren zur Bestimmung von Widerständen und Kapazitäten eines Schaltplans, der eine elektrische Schaltung repräsentiert
DE10149021A1 (de) Datenverarbeitungssystem zum Entwurf eines Layouts einer integrierten elektronischen Schaltung aus einer Vielzahl von elektronischen Bauelementen
DE10160513B4 (de) Verfahren zur Verarbeitung von Daten, die Parameter bezüglich einer Anzahl Bauelemente einer elektrischen Schaltung darstellen
DE2259726A1 (de) Verfahren zur optimierung einer halbleiterschaltung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8181 Inventor (new situation)

Inventor name: ARMBRUSTER, HANS-ULRICH, 82041 DEISENHOFEN, DE

8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee